כיצד להגדיר מפתחות SSH באובונטו 20.04

How Set Up Ssh Keys Ubuntu 20



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

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







שלב 1: צור את זוג המפתחות

נתחיל ביצירת זוג מפתחות במערכת הלקוח תחילה עם גישת שורש לפי סוג:



$ssh-keygen



זה מפעיל את ה- ssh-keygen האחרון ליצירת זוג מפתחות RSA של 3072 סיביות כברירת מחדל. תוכל להוסיף את הדגל –b 4086 ליצירת מפתח גדול יותר. הקש enter, וזה יאחסן את זוג המפתחות בספריית המשנה .ssh/. שים לב שאם אתה אורח בשרת שכבר הותקן בו מפתח, ההנחיה תשאל אותך אם ברצונך להחליף אותו או לא. אם זה המקרה, הקלד 'y' כדי לאות כן.





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

שלב 2: העתק את המפתח הציבורי לשרת שלך

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



תוכל להשתמש בכלי השירות ssh-copy-id באמצעות הפקודה הבאה:

$ssh-copy-id שם משתמש@server_host

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

לפעמים קורה ששיטת ssh-copy-id נכשלת או שפשוט אינה זמינה. במקרה זה, יהיה עליך להעתיק אותו באמצעות SSH מבוסס סיסמה. אתה יכול לעשות זאת באמצעות הפקודה cat ולדאוג להוסיף את הסמל >> להוספה לתוכן במקום להחליף אותו.

$חתול~/.ssh/id_rsa.pub| sshשם משתמש מרחוק@כתובת השרת
'mkdir -p ~/.ssh && cat >> ~/.ssh/autorized_keys'

אם זו הפעם הראשונה שאתה מתחבר למארח חדש, המערכת שלך תראה לך משהו כמו:

פשוט הקלד כן ולחץ על כפתור Enter. לאחר מכן הזן את הסיסמה לחשבון גישה למשתמש, והמפתח הציבורי יועתק לשרת אובונטו שלך.

במקרה שגישה SSH מבוססת הסיסמה תימנע ממך מסיבה כלשהי שאינך יכול להצמיד, תוכל תמיד להעתיק את המפתח הציבורי באופן ידני. הוסף את ~/.ssh/autorized_keys לקובץ id_rsa.pub במחשב המרוחק שלך. לאחר מכן, היכנס לחשבון השרת המרוחק שלך ובדוק אם קיימת ספריית ~ SSH. אם לא, הקלד:

$mkdir -p~/.ssh

עכשיו אתה רק צריך להוסיף את המפתח:

$זרקstring_key_string>>~/.ssh/מפתחות_מורשים

$chmod ללכת= ~/.ssh

כמו כן, ודא שאתה משתמש ב- ~ SSH/ מִשׁתַמֵשׁ מדריך ו לֹא מדריך השורשים:

$חבוש younis: younis ~/.ssh

שלב 3: אימות מפתחות SSH

השלב הבא הוא אימות מפתחות SSH בשרת אובונטו. ראשית, היכנס למארח המרוחק שלך:

$sshשם משתמש@מארח מרחוק

תתבקש להזין את מפתח ביטוי הסיסמה שהוספת בשלב 2. הקלד אותו והמשך. האימות ייקח קצת זמן, וברגע שזה יבוצע, תועבר למעטפת אינטראקטיבית חדשה בשרת אובונטו שלך

שלב 4: השבת את אימות הסיסמה

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

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

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

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

$סודוgedit/וכו/ssh/sshd_config

כשהקובץ נפתח כעת, חפש את ספריית 'PasswordAuthentication' והקלד את הדברים הבאים כדי להשבית את אימות הסיסמה וכניסות SSH מבוססות הסיסמה.

$/וכו/ssh/sshd_config
. . .
סיסמא אימות מספר
. . .

כדי לראות את השינויים הללו בתוקף, יהיה עליך להפעיל מחדש את שירות sshd באמצעות הפקודה הבאה:

$סודוהפעלה מחדש של systemctlssh

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

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

סיכום

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