सवाल किसी उपयोगकर्ता को लॉगिन से कैसे रोकें, लेकिन लिनक्स में "su - user" को अनुमति दें?


आप उपयोगकर्ता को "su -  उपयोगकर्ता"लेकिन एसएसएच का उपयोग करने में उपयोगकर्ता को लॉग इन करने से रोकें?

मैंने खोल को सेट करने की कोशिश की /bin/false लेकिन जब मैं कोशिश करता हूँ su यह काम नहीं करता है।

लॉग इन की अनुमति देने के कई तरीके हैं su?

एसएसएच है AllowUser जाने का रास्ता? (अगर यह जाने का रास्ता है तो मैं यह कैसे करूं)


86
2018-06-09 15:13


मूल




जवाब:


आप उपयोग कर सकते हैं AllowUsers / AllowGroups यदि आपके पास केवल कुछ उपयोगकर्ता / समूह हैं जिन्हें एसएसएच के माध्यम से लॉगिन करने की अनुमति है या DenyUsers / DenyGroups यदि आपके पास केवल कुछ उपयोगकर्ता / समूह हैं नहीं लॉगिन करने की अनुमति है। ध्यान दें कि यह केवल ssh के माध्यम से लॉगिन प्रतिबंधित करता है, लॉगिन के अन्य तरीकों (कंसोल, FTP, ...) अभी भी संभव है। आपको इन विकल्पों को अपने आप में जोड़ना होगा / Etc / ssh / sshd_config अधिकांश एसएसएच प्रतिष्ठानों के लिए फ़ाइल।

अगर आपने लॉगिन खोल सेट किया है / Bin / झूठी आप उपयोग कर सकते हैं su -s /bin/bash user (बदलने के / Bin / bash अपनी पसंद के खोल के साथ)


108
2018-06-09 15:40



सभी के लिए बहुत बहुत धन्यवाद। मुझे अपने प्रश्न पर 2+ अपवॉट प्राप्त करने की उम्मीद नहीं थी :) मुझे पसंद है "सु-एस ..." बहुत निर्माण करें और कंसोल / एफटीपी एक अच्छा बिंदु है। मैं वास्तव में "सु-एस" जैसे कुछ के बाद था। - NoozNooz42
एसयूएस चाल सोने है। मैं इसे सिस्टम खातों के लिए हर समय उपयोग करता हूं, मुझे अनुमतियों का परीक्षण करने की आवश्यकता होती है, उदाहरण के लिए, अपाचे, कोई भी नहीं, आदि। मैं आमतौर पर su-user -s / bin / bash करता हूं। वैकल्पिक तर्क - उपयोगकर्ता को उस उपयोगकर्ता के समान वातावरण प्रदान करने के लिए उपयोग किया जा सकता है जिसे उपयोगकर्ता सीधे लॉग इन करता था। - dmourati
यदि आपको लोड करने के लिए पर्यावरण चर (उदा। / Etc / profile से) की आवश्यकता है, तो अतिरिक्त डैश पास करने से यह होगा: su - -s /bin/bash user - Leons


यदि आप अभी भी काम करने के लिए सु चाहते हैं, तो आप इसका उपयोग कर सकते हैं sudo -u [username] या पास -s /bin/bash अस्थायी खोल के रूप में सु के लिए। वे दोनों एक खोल के अभाव में वही करते हैं /etc/passwd


13
2018-02-18 10:04





अगर किसी खाते में कोई पासवर्ड नहीं है (passwd -d उपयोगकर्ता नाम), वे अंतःक्रियात्मक रूप से लॉग इन नहीं कर सकते (कंसोल, एसएसएच, आदि)। अगर उनके पास वैध खोल है, सु अभी भी काम करेगा। "Interactively," हालांकि ध्यान दें; अगर कोई खाता के लिए एसएसएच कीपैयर स्थापित करने का फैसला करता है, तो यह काम करेगा!


7
2018-06-09 15:53



क्या उपयोगकर्ता को su के लिए वैध खोल होना चाहिए? मुझे यकीन है कि आप अभी भी एक ही मूल शेल में हैं जब आप किसी अन्य उपयोगकर्ता के लिए su ... आप वास्तव में अन्य उपयोगकर्ता के रूप में लॉग इन नहीं करते हैं ... तो, केवल शैल को सेट करने के लिए / dev / null पर काम कर सकता है भी। - Brian Postow
हां, इसे अभी भी एक वैध खोल की आवश्यकता है: [root @ localhost ~] # su daemon यह खाता वर्तमान में उपलब्ध नहीं है। [root @ localhost ~] # su - daemon यह खाता वर्तमान में उपलब्ध नहीं है। (आरएचईएल सिस्टम, डेमन का खोल / sbin / nologin है) - astrostl


Sshd_config में एक लाइन जोड़ें DenyUser [username]

ध्यान दें कि यह उस उपयोगकर्ता को कंसोल के माध्यम से लॉग इन करने से नहीं रोकेगा।


3
2018-06-09 15:28



होना चाहिए DenyUsers, एक 'एस' के साथ। - David G


ऊपर वर्णित किए गए अतिरिक्त (उपयोगकर्ता पासवर्ड को अक्षम और / या सेट नहीं करने के अलावा), pam_access मॉड्यूल (pam_access और access.conf पर मैन पेज देखें) का उपयोग लॉगिन एक्सेस को नियंत्रित करने के लिए किया जा सकता है।


2
2017-09-27 22:16





जैसा कि अन्य ने कहा है;

DenyUser username या DenyGroup groupname में sshd_config ssh के माध्यम से keypair / पासवर्ड लॉगिन को रोक देगा।

हालांकि मैं आमतौर पर कुछ ऐसा करता हूं AllowGroup ssh या उन पंक्तियों के साथ कुछ, और स्पष्ट रूप से उन लोगों को जोड़ें जिन्हें उस समूह में एसएसएच पहुंच की आवश्यकता है।

फिर, आप ऐसा कर सकते हैं जैसा कि अन्य ने कहा है: passwd -d username उपयोगकर्ता पासवर्ड को खाली करने के लिए, इसलिए वे कंसोल, या किसी अन्य तरीके से लॉग इन नहीं कर सकते हैं। या बेहतर अभी तक passwd -l username खाते को 'लॉक' करने के लिए। यह संभव है कि एसएसएच लॉक किए गए खाते तक पहुंच से इनकार कर दे, यहां तक ​​कि चाबियाँ भी, लेकिन मैं सकारात्मक नहीं हूं।


1
2018-06-09 16:15



असल में एसएसएच आपको खाता प्रमाणीकरण का उपयोग करके लॉग इन करने की अनुमति देगा, भले ही खाता पासवर्ड लॉक हो। - Richard Holloway
जानना अच्छा है, स्पष्टीकरण के लिए धन्यवाद ... - cpbills


जैसा कि मैंने एक टिप्पणी में उल्लेख किया है, मुझे लगता है कि आप अभी भी एक अमान्य खोल वाले खाते में मुकदमा कर सकते हैं। तो यदि आप उपयोगकर्ता के खोल को / dev / null पर सेट करते हैं या जो भी बिन का खोल है, तो आप उस उपयोगकर्ता में अभी भी su में सक्षम होना चाहिए ... लेकिन किसी भी तरह से लॉग इन करने का कोई भी प्रयास आपको वापस छोड़ देगा ...


1
2018-06-09 16:26