כיצד להגדיר אימות של שני גורמים ב- SSH באובונטו?

אימות דו-גורמי

La אימות דו-גורמי (2FA) אינו משהו ייחודי שניתן להשתמש בו ברשתות החברתיות או בכל אתר אחר. ובכן, ניתן ליישם אמצעי אבטחה זה גם בתוך מערכת הפעלה.

זו הסיבה היום נראה כיצד ליישם אימות דו-גורמי ב- SSH באובונטו ונגזרים המשתמשים במאמת הידוע של גוגל אשר יגביר משמעותית את האבטחה של שרת ה- OpenSSH שלך.

בדרך כלל, אתה רק צריך להזין סיסמה או להשתמש במקש SSH כדי להיכנס למערכת שלך מרחוק.

אימות דו-גורמי (2FA) מחייב להזין שתי פיסות מידע בכניסה.

לכן, תצטרך להזין סיסמה חד פעמית מבוססת זמן כדי להיכנס לשרת SSH שלך.

סיסמה חד פעמית זו מחושבת באמצעות אלגוריתם TOTP, שהוא תקן IETF.

התקנה ותצורה של מאמת גוגל באובונטו ונגזרות

הצעד הראשון שאנחנו הולכים לבצע הוא התקנת המאמת של גוגל במערכת שלנו, לכן אנו הולכים לפתוח מסוף במערכת (ניתן לעשות זאת עם שילוב המקשים "Ctrl + Alt + T) ובו אנו הולכים להקליד את הפקודה הבאה:

sudo apt install libpam-google-authenticator

ההתקנה בוצעה אנו הולכים להריץ את היישום החדש שהותקן עם הפקודה הבאה:

google-authenticator

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

אחרי זה, הם יראו קוד QR אותו הם יכולים לסרוק באמצעות אפליקציית TOTP בטלפון שלהם.

כאן אנו ממליצים להשתמש ביישום המאמת של גוגל בטלפון הנייד שלך.il, כך שתוכל להתקין את היישום דרך Google Play או Apple App Store בטלפון הנייד שלך.

אם כבר יש לך את היישום בטלפון שלך, עליך לסרוק איתו את קוד ה- QR. זכור שעליך להגדיל את חלון המסוף כדי לסרוק את קוד ה- QR כולו.

קוד ה- QR מייצג את המפתח הסודי, המוכר רק לשרת SSH שלו ולאפליקציית המאמת של גוגל.

לאחר סריקת קוד ה- QR הם יכולים לראות אסימון ייחודי בן שש ספרות בטלפון שלהם. כברירת מחדל אסימון זה נמשך 30 שניות ויש להזין אותו בכניסה לאובונטו דרך SSH.

מפתח-google-authenticator-secret

בטרמינל תוכלו גם לראות את הקוד הסודי, כמו גם את קוד האימות וקוד התחלת החירום.

שממנו אנו ממליצים לשמור מידע זה במקום בטוח לשימוש מאוחר יותר. מבין השאלות האחרות שנשאל, אנו פשוט נענה כן על ידי הקלדת האות y.

תצורת SSH לשימוש עם מאמת גוגל

כבר סומך על האמור לעיל, כעת אנו הולכים לבצע את התצורה הדרושה כדי שנוכל להשתמש בחיבור SSH במערכת שלנו עם Google Authenticator.

במסוף vאנו הולכים להקליד את הפקודה הבאה

sudo nano /etc/ssh/sshd_config

בתוך התיק אנו הולכים לחפש את השורות הבאות ונשנה את אלה ל"כן ", להיות כדלקמן:

UsePAM yes

ChallengeResponseAuthentication yes

לאחר ביצוע השינויים, שמור את השינויים שבוצעו באמצעות Ctrl + O וסגור את הקובץ באמצעות Ctrl + X.

באותו מסוף אנו הולכים להפעיל מחדש את SSH עם:

sudo systemctl restart ssh

כברירת מחדל, אימות מחייב להזין את סיסמת המשתמש בכניסה.

בשביל מה בואו נערוך את קובץ כללי ה- PAM עבור הדמון SSH.

sudo nano /etc/pam.d/sshd

בתחילת קובץ זה תוכלו לראות את השורה הבאה המאפשרת אימות סיסמה

ChallengeResponseAuthentication

אשר עלינו להגדיר כן.

כדי לאפשר גם אימות סיסמא חד פעמי, הוסף את שתי השורות הבאות.

@include common-auth

#One-time password authentication via Google Authenticator

auth required pam_google_authenticator.so

שמור וסגר את הקובץ.

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


השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.

  1.   מיגל דיג'ו

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

    יש לי שרת אובונטו 20.04