שאלה כיצד למנוע ממשתמש להיכנס, אך לאפשר "משתמש-משתמש" ב- Linux?


כיצד אתה מאפשר למשתמש להיכנס באמצעות "su -  משתמש"אבל למנוע מהמשתמש להיכנס באמצעות SSH?

ניסיתי לכוון את הקליפה /bin/false אבל כשאני מנסה su זה לא עובד.

האם יש מספר דרכים להתיר רק כניסה על ידי su?

הוא של SSH AllowUser הדרך ללכת? (איך אעשה את זה אם זו הדרך ללכת)


86
2018-06-09 15:13






תשובות:


אתה יכול להשתמש AllowUsers / אפשר קבוצות אם יש לך רק כמה משתמשים / קבוצות המורשים להיכנס באמצעות ssh או DenyUsers / DenyGroups אם יש לך רק כמה משתמשים / קבוצות לא מותר להתחבר. שים לב כי זה רק מגביל את הכניסה דרך ssh, דרכים אחרות של התחברות (קונסולה, ftp, ...) הם עדיין אפשרי. אתה צריך להוסיף את האפשרויות האלה / etc / ssh / sshd_config קובץ עבור רוב ssh התקנות.

אם הגדרת את פגז ההתחברות / bin / שקר אתה יכול להשתמש su -s /bin/bash user (החלף / bin / bash עם הקליפה על פי בחירתך)


108
2018-06-09 15:40



תודה רבה לכל. לא ציפיתי לקבל 2 + upvotes על השאלה שלי :) אני אוהב את "su -s ..." לבנות הרבה את קונסולת / ftp היא נקודה טובה. הייתי באמת אחרי משהו כמו "sus". - NoozNooz42
סו-טריק הוא זהב. אני משתמש בו כל הזמן עבור חשבונות מערכת אני צריך לבדוק הרשאות עבור, למשל, apache, אף אחד, וכו 'אני בדרך כלל לעשות su - user -s / bin / bash. ניתן להשתמש בארגומנט האופציונלי כדי לספק סביבה הדומה למה שהמשתמש ציפה אילו המשתמש היה מחובר ישירות. - dmourati
אם אתה צריך משתני סביבה (למשל מ / etc / פרופיל) כדי להיות טעון, עובר מקף נוסף יעשה את זה: su - -s /bin/bash user - Leons


אם אתה עדיין רוצה su לעבודה, אתה יכול להשתמש sudo -u [username] או לעבור -s /bin/bash כדי להיות פגז זמני. שניהם עושים את אותו הדבר בהעדר פגז /etc/passwd.


13
2018-02-18 10:04





אם לחשבון אין סיסמה (שם משתמש passwd), הם לא יכולים להתחבר באופן אינטראקטיבי (קונסולת, SSH, וכו '). אם יש להם פגז חוקי, su ימשיך לעבוד. שים לב "אינטראקטיבי", אם כי; אם מישהו מחליט להקים keypair SSH עבור החשבון, זה יעבוד!


7
2018-06-09 15:53



האם המשתמש צריך להיות פגז חוקי su? אני די בטוח שאתה עדיין באותו פגז מקורי אחרי שאתה su למשתמש אחר ... אתה לא ממש להיכנס כמו המשתמש השני ... אז, רק הגדרת פגז ל / dev / null יכול לעבוד גם כן. - Brian Postow
כן, זה עדיין צריך פגז חוקי: [root @ localhost ~] # su daemon חשבון זה אינו זמין כעת. [root @ localhost ~] # su - daemon חשבון זה אינו זמין כעת. (מערכת RHEL, פגז daemon הוא / sbin / nologin) - astrostl


ב sshd_config להוסיף שורה DenyUser [username]

לידיעתך, הדבר לא ימנע ממשתמש זה להיכנס דרך המסוף.


3
2018-06-09 15:28



זה צריך להיות DenyUsers, עם 's'. - David G


בנוסף על מה שהוזכר לעיל (להשבית ו / או לא הגדרת את סיסמת המשתמש), מודול pam_access (חפש את דף האדם על pam_access ו access.conf) ניתן להשתמש כדי לשלוט בגישה הכניסה.


2
2017-09-27 22:16





כפי שאחרים אמרו;

DenyUser username או DenyGroup groupname in sshd_config היה למנוע keypair / סיסמה התחברות דרך ssh.

אם כי בדרך כלל אני עושה משהו כזה AllowGroup ssh או משהו דרך שורות אלה, ומפורש להוסיף אנשים שצריכים גישה ssh לקבוצה.

אז, אתה יכול לעשות כמו של אחרים אמרו: passwd -d username כדי לרוקן את הסיסמה של המשתמשים, כך שהם לא יכולים להיכנס למסוף, או בדרך אחרת. או עדיף passwd -l username כדי לנעול את החשבון. זה אפשרי Ssh יכחיש גישה לחשבון נעול, אפילו עם המפתחות, אבל אני לא חיובי.


1
2018-06-09 16:15



למעשה ssh יאפשר לך להיכנס באמצעות אימות מפתח גם כאשר סיסמת החשבון נעולה. - Richard Holloway
טוב לדעת, תודה על ההבהרה ... - cpbills


כפי שציינתי הערה, אני חושב שאתה עדיין יכול להיכנס לחשבון עם פגז לא חוקי. אז אם אתה מגדיר את הקליפה של המשתמש ל / dev / null או מה שהקונכייה של סל היא, אתה אמור להיות מסוגל עדיין לתוך משתמש זה ... אבל כל ניסיון להיכנס בכל דרך יהיה לעזוב אותך בחזרה ...


1
2018-06-09 16:26