सवाल कुछ उपयोगकर्ताओं के लिए पासवर्ड के साथ एसएसएच लॉगिन कैसे अक्षम करें?


लिनक्स (डेबियन निचोड़) पर मैं कुछ उपयोगकर्ताओं (चयनित समूह या रूट को छोड़कर सभी उपयोगकर्ताओं) को पासवर्ड का उपयोग करके एसएसएच लॉगिन अक्षम करना चाहता हूं। लेकिन मैं उनके लिए प्रमाण पत्र का उपयोग कर लॉगिन अक्षम नहीं करना चाहता हूं।

संपादित करें: विस्तृत उत्तर के लिए बहुत बहुत धन्यवाद! किसी कारण से यह मेरे सर्वर पर काम नहीं करता है:

Match User !root
PasswordAuthentication no

... लेकिन आसानी से बदल दिया जा सकता है

PasswordAuthentication no
Match User root
PasswordAuthentication yes

145
2018-06-30 14:31


मूल


शायद यह आपके इंडेंटेशन के कारण है? - nil
यह उल्लेखनीय है कि मिलान के तहत उन पंक्तियों को फ़ाइल के अंत में होना चाहिए - zidarsk8
रूट भी मेरे लिए काम नहीं करता है। दूसरा दृष्टिकोण चाल था। - natenho
मैंने मामलों को देखा है Match User "!root,*" काम किया - Roman Hocke


जवाब:


प्रयत्न Match में sshd_config:

Match User user1,user2,user3,user4
    PasswordAuthentication no

या समूह द्वारा:

Match Group users
    PasswordAuthentication no

या, टिप्पणी में उल्लिखित, अस्वीकृति से:

Match User !root
    PasswordAuthentication no

ध्यान दें कि मैच प्रभावी है "या तो एक और मैच लाइन या फ़ाइल के अंत तक।" (इंडेंटेशन महत्वपूर्ण नहीं है)


156
2018-06-30 16:13



पसंद करते हैं Match user !root इस मामले के लिए - 84104
बहुत बढ़िया, मुझे मैच वाक्यविन्यास के बारे में पता नहीं था। एक सुझाव जो मैं करता हूं, हालांकि, यदि यह एक सार्वजनिक सामना करने वाला सर्वर है, तो मैं एसएसएच के माध्यम से रूट लॉगिन की अनुमति नहीं दूंगा। यद्यपि यह आंतरिक है हालांकि शायद एक बड़ा सौदा नहीं .. - Safado
@ स्पेसमैनस्पिफ़ यही है कि एक मजबूत पासवर्ड और बी) denyhosts / fail2ban के लिए हैं। - ceejayoz
@ deed02392 यदि आप चाहें तो वास्तव में, वास्तव में मजबूत पासवर्ड होने के लिए आप एक कुंजी पर विचार कर सकते हैं। - ceejayoz
यह इतना मजबूत है कि यह एक ही गेंद-पार्क में नहीं है, यह मेरा मुद्दा था। पासवर्ड प्रमाणीकरण भी जड़ के लिए अक्षम किया जाना चाहिए और कुंजी केवल लॉग इन के लिए अनुमति दी जानी चाहिए। - deed02392


Match में sshd_config अच्छा काम करता है। आपको उपयोग करना चाहिए Match all यदि आप openssh 6.5p1 या ऊपर का उपयोग कर रहे हैं तो मैच ब्लॉक को समाप्त करने के लिए। उदाहरण:

PasswordAuthentication no
Match User root
PasswordAuthentication yes
Match all

12
2017-11-27 22:13





कुछ तरीके हैं जो आप कर सकते हैं - सबसे पहले, आप अलग-अलग कॉन्फ़िगरेशन के साथ एक अलग बंदरगाह पर एक दूसरे एसएसडीडी डिमन को निष्पादित कर सकते हैं - यह एक हैक का थोड़ा सा है, लेकिन कुछ क्रोट काम के साथ इसे ठीक काम करना चाहिए।

साथ ही, आप पासवर्ड प्रमाणीकरण की अनुमति दे सकते हैं, लेकिन पासवर्ड लॉक कर सकते हैं सभी के लिए एक उपयोगकर्ता के लिए। लॉक किए गए पासवर्ड वाले उपयोगकर्ता अभी भी होंगे सार्वजनिक कुंजी के साथ प्रमाणित करने में सक्षम।


1
2018-06-30 15:42





आप बस / etc / ssh / sshd_config फ़ाइल पर जा सकते हैं और एक लाइन जोड़ सकते हैं अनुमति देने के लिए -> AllowUsers उपयोगकर्ता 1 अस्वीकार करने के लिए ---> DenyUsers उपयोगकर्ता 2

हम मेजबानों का उपयोग कर मेजबानों के किसी विशेष सेट के लिए लॉगिन / अस्वीकार कर सकते हैं। / etc फ़ोल्डर में स्थित host.deny फ़ाइलें


-1
2018-03-04 06:10