কিছু ব্যবহারকারীর জন্য পাসওয়ার্ড সহ এসএসএইচ লগইন কীভাবে অক্ষম করবেন?


165

লিনাক্সে (ডেবিয়ান স্কিজ) আমি কিছু ব্যবহারকারীর (নির্বাচিত গোষ্ঠী বা মূল ব্যতীত সমস্ত ব্যবহারকারী) পাসওয়ার্ড ব্যবহার করে এসএসএইচ লগইন অক্ষম করতে চাই। তবে আমি তাদের শংসাপত্র ব্যবহার করে লগইন অক্ষম করতে চাই না।

সম্পাদনা: বিস্তারিত উত্তরের জন্য অনেক ধন্যবাদ! কিছু কারণে এটি আমার সার্ভারে কাজ করে না:

Match User !root
PasswordAuthentication no

... তবে সহজেই প্রতিস্থাপন করা যেতে পারে

PasswordAuthentication no
Match User root
PasswordAuthentication yes

হতে পারে এটি আপনার ইন্ডেন্টেশনের কারণে?
শূন্য

7
এটি উল্লেখ করার মতো যে ম্যাচের অধীনে থাকা এই লাইনগুলি ফাইলের শেষে হওয়া উচিত
zidarsk8

1
রুটও আমার কাজ করে না। দ্বিতীয় পদ্ধতির কৌশলটি করেছিলেন।
নাটেনহো

আমি মামলাগুলি দেখেছি যেখানে Match User "!root,*"কাজ হয়েছে।
রোমান হকি

উত্তর:


179

ব্যবহার করে দেখুন Matchএর মধ্যে sshd_config:

Match User user1,user2,user3,user4
    PasswordAuthentication no

বা গোষ্ঠী অনুসারে:

Match Group users
    PasswordAuthentication no

বা মন্তব্য হিসাবে উল্লিখিত হিসাবে, প্রত্যাখ্যান করে:

Match User !root
    PasswordAuthentication no

নোট করুন যে ম্যাচটি কার্যকর হয় "অন্য কোনও ম্যাচ লাইন বা ফাইলের শেষ না হওয়া পর্যন্ত।" (ইন্ডেন্টেশন উল্লেখযোগ্য নয়)


4
Match user !rootএই ক্ষেত্রেটির জন্য পছন্দ করুন
84104

1
দুর্দান্ত, আমি ম্যাচ সিনট্যাক্স সম্পর্কে জানতাম না। আমি একটি পরামর্শ করব, যদিও এটি যদি জনসাধারণের মুখোমুখি সার্ভার হয় তবে আমি এসএসএইচ এর মাধ্যমে রুট লগইন করার অনুমতি দেব না। এটি অভ্যন্তরীণ হলেও সম্ভবত কোনও বিশাল চুক্তি নয় ..
সাফাদো

4
@ স্পেসিম্যানস্পিফ এটিই একটি) শক্তিশালী পাসওয়ার্ড এবং খ) অস্বীকৃতি / ব্যর্থ 2ban এর জন্য।
সেজেজোজ

2
@ deed02392 আপনি চাইলে একটি কীটিকে সত্যই, সত্যই শক্তিশালী পাসওয়ার্ড হিসাবে বিবেচনা করতে পারেন।
সিজেজোজ

4
এটি এত শক্তিশালী যে এটি একই বল-পার্কে নয়, এটি আমার বক্তব্য। মূলের জন্য পাসওয়ার্ড প্রমাণীকরণ অক্ষম করা উচিত এবং কেবল লগইনের জন্য কীগুলি অনুমোদিত।
deed02392

21

Matchমধ্যে sshd_configভাল কাজ করে। আপনি Match allযদি ওপেনশ্যা 6.5p1 বা তার বেশি ব্যবহার করছেন তবে ম্যাচ ব্লকটি শেষ করতে আপনার ব্যবহার করা উচিত । উদাহরণ:

PasswordAuthentication no
Match User root
PasswordAuthentication yes
Match all

এটি আমার পক্ষে কার্যকর হয়নি ...
দিমিত্রিওস

3

কয়েকটি উপায় রয়েছে যা আপনি এটি করতে পারেন - প্রথমত, আপনি স্বাচ্ছন্দ্যে বিভিন্ন কনফার্ট সহ একটি ভিন্ন বন্দরে দ্বিতীয় এসএসডি ডিমন চালাতে পারেন - এটি কিছুটা হ্যাক, তবে কিছু ক্রোট কাজ দিয়ে এটি ঠিকঠাক কাজ করা উচিত।

এছাড়াও, আপনি পাসওয়ার্ড প্রমাণীকরণের অনুমতি দিতে পারেন, তবে একজন ব্যবহারকারী ছাড়া সকলের জন্য পাসওয়ার্ডগুলি লক করতে পারেন। লক পাসওয়ার্ড সহ ব্যবহারকারীরা এখনও পাবলিক কী দিয়ে প্রমাণীকরণ করতে সক্ষম হবেন।


-1

আপনি কেবল / etc / ssh / sshd_config ফাইলটিতে যেতে পারেন এবং অনুমতি দেওয়ার জন্য একটি লাইন যুক্ত করতে পারেন -> ব্যবহারকারীদের 1 ব্যবহার অস্বীকার করুন ---> অস্বীকারকারী ব্যবহারকারী 2

আমরা / etc ফোল্ডারের মধ্যে থাকা হোস্ট.ইনল বা হোস্ট.ডেনি ফাইলগুলি ব্যবহার করে হোস্টগুলির একটি নির্দিষ্ট সেটের জন্য লগইনকে অনুমতি / অস্বীকার করতে পারি


-1

কিছু সুরক্ষার কারণে, আপনাকে লিনাক্স বাক্সে নির্দিষ্ট ব্যবহারকারী এসএসএইচ অ্যাক্সেস ব্লক করতে হতে পারে।

Sshd_config ফাইলটি সম্পাদনা করুন, লিনাক্স বিতরণের উপর নির্ভর করে লোকেশনটি কখনও কখনও আলাদা হবে তবে এটি সাধারণত / etc / ssh / এ থাকে।

রুট হিসাবে লগ ইন করার সময় ফাইলটি খুলুন:

# vi /etc/ssh/sshd_config

কনফিগারেশন ফাইলের শেষের জন্য একটি লাইন প্রবেশ করান: -

DenyUsers username1 username2 username3 username4

এটি সংরক্ষণ করুন এবং এসএসএইচ পরিষেবাগুলি পুনরায় চালু করুন। মূলত ব্যবহারকারীর নাম 1, ব্যবহারকারীর নাম 2, ব্যবহারকারীর নাম 3 এবং ব্যবহারকারীর নাম 4 এসএসএইচ লগইন অনুমোদিত নয়।

পুনরায় চালু করতে কমান্ডের নীচে রান করুন: -

# systemctl restart sshd

প্রয়োজনীয়তা করা হয়েছে। দয়া করে সেই ব্যবহারকারীদের কাছ থেকে এসএসএস নিন এবং আপনার ত্রুটি "অ্যাক্সেস অস্বীকৃত" পাবেন


1
প্রশ্নটি পাসওয়ার্ড লগইন অক্ষম করার বিষয়ে ছিল (তবে কী প্রমাণীকরণের সাথে লগইন রাখা)।
জেরাল্ড স্নাইডার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.