पासवर्ड प्रति उपयोगकर्ता SSH तक सीमित है, लेकिन कुंजी प्रमाणीकरण की अनुमति दें


21

क्या उपयोगकर्ता के लिए PASSWORD SSH पहुंच को अक्षम करना संभव है लेकिन प्रति उपयोगकर्ता आधार पर मुख्य प्रमाणीकरण की अनुमति है? मेरा मतलब है, मेरे पास एक उपयोगकर्ता है जिसे मैं पासवर्ड आधारित पहुंच नहीं देना चाहता हूं लेकिन मैंने उसे सर्वर (एस) तक पहुंचने के लिए केवल मुख्य प्रमाणीकरण का उपयोग करने के लिए नहीं किया। धन्यवाद


जवाबों:


49

आप sshd_config के नीचे, विशेष उपयोगकर्ताओं या समूहों पर मेल करने के लिए "मैच" अनुभाग जोड़ सकते हैं, जैसे:

Match user stew
PasswordAuthentication no

या

Match group dumbusers
PasswordAuthentication no

9
मैं इंडेंट करने से बचूंगा क्योंकि यह बताता है कि केवल इंडेंटेड लाइनें ही प्रभावित होती हैं Matchजब वास्तविकता में, सभी कॉन्फ़िगरेशन अगले Matchनिर्देश तक प्रभावित होते हैं । वाक्यविन्यास से परिचित न होने वाले किसी व्यक्ति को भ्रमित कर सकता है।
माइकल मिओर

2
@MichaelMior क्या "EndMatch" का एक तरीका है?
निक टी

4
@NickT Matchअगले Matchया Hostकीवर्ड तक काम करता है । आप बस इस्तेमाल कर सकते हैं Match user *
माइकल मिऑर

@MichaelMior का मतलब यह है कि यदि आप उपयोग करते हैं Match user ZaQwEdCxS, तो आप अस्थायी रूप से या स्थायी रूप से किसी के द्वारा उपयोग करने योग्य कॉन्फ़िगरेशन लाइनों का एक सेट प्रस्तुत कर सकते हैं?
ट्रिप काइनेटिक्स

इसका मतलब यह होगा कि उसके बाद की सभी कॉन्फ़िगरेशन लाइनें केवल नाम वाले उपयोगकर्ताओं पर लागू होंगी ZaQwEdCxS। यदि आपके पास एक अलग प्रश्न है, तो आपको एक नया प्रश्न पूछना चाहिए।
माइकल मेयोर

4

केवल उन उपयोगकर्ताओं के पासवर्ड लॉक करें जिन्हें आप पासवर्ड से लॉग इन नहीं करना चाहते:

usermod -L <user>

फिर, उनकी .ssh/authorized_keysफ़ाइल में एक मान्य सार्वजनिक कुंजी रखें और वे केवल संबंधित निजी कुंजी के साथ लॉग इन कर पाएंगे, लेकिन पासवर्ड के साथ नहीं।

ध्यान दें: यह sudo को तब तक तोड़ देगा जब तक कि उपयोगकर्ता के पास NOPASSWD: उनकी दृश्य प्रविष्टि में नहीं है


8
वह भी सुडो को तोड़ देगा। शायद इस मामले में कोई मुद्दा नहीं है, लेकिन यह उल्लेख करता है।
ईईएए

हाँ वह सच है। मुझे इसका उल्लेख करना चाहिए था।
ओलिवर

1
कुछ ओपनएसएसएच सेटअप (उदाहरण के लिए मुझे लगता है कि Ubuntu 14.04 डिफॉल्ट कॉन्फिग में) लॉक किए गए उपयोगकर्ताओं को अधिकृत प्राधिकारी के माध्यम से भी नहीं जाने देते हैं
Nils Toedtmann

@NilsToedtmann क्या आप सत्यापन के लिए स्रोत का हवाला दे सकते हैं? यह उत्तर में नोट करना बहुत महत्वपूर्ण होगा, साथ ही, यदि ऐसा है तो।
पैराग्राफर

-3

आपको देखना चाहिए

/etc/ssh/sshd_config

मुझे लगता है कि तुम क्या देख रहे हो

PasswordAuthentication yes

इसे नहीं में बदलें और sshd को पुनरारंभ करना न भूलें


2
मुझे इस बारे में पता है - यह एक वैश्विक सेटिंग है - हालांकि मैं और अधिक बारीक विकल्प चाहता हूं - इसीलिए मैंने "प्रति-उपयोगकर्ता आधार" कहा - मैं यह केवल कुछ उपयोगकर्ताओं के लिए चाहता हूं (क्लस्टर में सर्वरों के बीच इनरक्लस्टर संचार के लिए उपयोग किया जाता है) - सभी उपयोगकर्ताओं के लिए नहीं
gyre

ओह ठीक है, मुझे खेद है कि मैंने इसे सही ढंग से नहीं पढ़ा था, फिर @stew ने जो सिफारिश की है वह जाने के लिए एक रास्ता है
एलेक्सस
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.