הגדר חיבורי SSH ללא סיסמה בשלושה שלבים בלבד

שלום,

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

אבל, בואו נראה תחילה הסבר קצר על מה זה SSH:

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

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

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

יש לנו את המצב הבא:

מחשב מספר 1 - » אתה רוצה להתחבר אל מחשב מספר 2, מבלי שתצטרך להזין סיסמה בכל פעם שאתה מנסה להתחבר למחשב אחר זה.

מחשב מספר 2 - » יש לך שרת SSH מותקן. זה האחד מחשב מספר 1 יתחבר, ויעשה זאת מבלי להזין סיסמה. במחשב זה יש משתמש בשם שורש.

הבה נתחיל…

1. En מחשב מספר 1 אנו כותבים את הדברים הבאים:

  • ssh -keygen -b 4096 -t rsa

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

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

כאשר הם מציבים את הפקודה, זה יופיע:

2. פשוט לחץ [להיכנס], שנייה אחר כך אנחנו לוחצים שוב [להיכנס]ושנייה אחר כך אנו לוחצים פעם נוספת [להיכנס]. כלומר היינו לוחצים [להיכנס] בסך הכל שלוש (3) פעמים, אנחנו רק לוחצים עליו ... אנחנו לא כותבים שום דבר ???

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

מוכנים, יש לנו כבר את המפתח הציבורי ... עכשיו אנחנו צריכים לתת אותו למי שאנחנו רוצים (כמו הדוגמא, תנו לחברה שלנו חה)

מה שאנחנו רוצים זה מחשב מספר 1 להתחבר ל מחשב מספר 2, כבר בפנים מחשב מספר 1 עשינו את כל האמור לעיל, ב מחשב מספר 2 לא עשינו כלום. טוֹב, מחשב מספר 2 יש למשל כתובת IP 10.10.0.5.

3. הכנסנו מחשב מספר 1 הבא:

  • ssh-copy-id root@10.10.0.5

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

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

וואלה ... הכל מוגדר ????

כמו כן זה נראה לנו בטרמינל, בואו נבדוק אם הכל באמת עבד ב 100% בסדר. כדי לבדוק, שמנו:

  • ssh root@10.10.0.5

אם הם רוצים לגשת למחשב אחר גם בלי להזין סיסמה תמיד (מחשב מספר 3 למשל), אנחנו פשוט נותנים לו את המפתח הציבורי שלנו וזהו, ברגע שעשינו את הצעד #1 y #2 לא נצטרך לעשות את זה יותר. אם אנחנו רוצים לגשת מחשב מספר 3 למשל, שיש לו לפי IP 10.10.99.156 פשוט שמנו:

  • ssh root@10.10.99.156

עד כאן ההדרכה.

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

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

ספקות או שאלות, תלונות או הצעות מודיעים לי.

ברכות לכל.


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

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

*

*

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

  1.   elav <° לינוקס דיג'ו

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

    Enter passphrase (empty for no passphrase)

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

    ssh root@10.10.0.5

    זה ייכנס מבלי לבקש סיסמה.

    1.    KZKG ^ גאארה <° לינוקס דיג'ו

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

      כשאני תמיד קם, אני תמיד נועל את המסך, אחרת לאחר 30 שניות אין פעילות על העכבר או המקלדת של המחשב הנייד, הוא עדיין יינעל 😉

      1.    ישוע דיג'ו

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

        הדרך הבטוחה היא לשים סיסמה על המפתח הפרטי, ואז להשתמש ב- ssh-agent כך שהוא יזכור את הסיסמה במשך כל ההפעלה (רק ssh-add). באופן זה הוא יבקש את הסיסמה רק בפעם הראשונה, ובפועל יהיה לך חיבור ללא סיסמה 90% מהזמן, בנוסף להיות מוגן מפני גניבות או פריצות.

        1.    x11tete11x דיג'ו

          טריוויאלי לגישה לקבצים? האם שמעת פעם על הצפנת דיסק מלאה? (לוקס + cryptsetup)

          1.    ישוע דיג'ו

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

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

    2.    צ'יינגאולון דיג'ו

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

  2.   samquejo דיג'ו

    והאם כל זה יכול לחול על מסוף חלונות שצריך להתחבר למספר * NIX?
    יש לי מרק אבל אני יכול גם להשתמש ב- Securecrt (עכשיו יש לי את זה בתסריט)

    1.    KZKG ^ גאארה <° לינוקס דיג'ו

      במסוף Windows (cmd) אני משוכנע שלא, זה לא יהיה אפשרי שם.
      עם זאת, אם אתה משתמש במרק אתה יכול לנסות את זה, זה יכול לעבוד.

      ברכות וברוכים הבאים לאתר שלנו 😀

    2.    erm3nda דיג'ו

      מרק כבר מקבל את הפרמטר -pw בפקודות נוספות. (למשל: -pw12345)
      למעשה, סופר מרק הוא קריר יותר מאשר סתם מרק. (זו מסגרת למרק)

      אז אתה לא צריך לשים את זה.

  3.   Higi דיג'ו

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

    1.    KZKG ^ גאארה דיג'ו

      שלום ותודה רבה על הביקור והתגובה שלך 🙂
      שום דבר חבר, תענוג לדעת שזה היה מועיל ... אם אנחנו יכולים לעזור לך בכל דרך אחרת, אנחנו יותר משמח 😉

      ברכות וברוכים הבאים לאתר.

      1.    אדריאנקסט דיג'ו

        אני צריך להתחבר למחשב windonws מהלינוקס שלי כמו שאני עושה מהטרמינל שלי

  4.   רוברטו דיג'ו

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

  5.   חוסה גרגוריו דיג'ו

    אני מתחבר למכונה עם אובונטו למחשב שיש בו דביאן אבל זה נותן לי שגיאה בה הוא לא יכול לאמת ולכן הוא מבקש ממני את הסיסמה .. למה זה יקרה? האם הגרסאות של ה- ssh-keygen יהיו שונות או מה קורה?

    1.    KZKG ^ גאארה דיג'ו

      שים כאן את השגיאה שהיא נותנת לך כדי שתוכל לעזור לך טוב יותר 😉
      כמו כן, אתה יכול לנסות להכניס את זה למסוף:
      sudo mv $HOME/.ssh/known_hosts /opt/

      מה שזה עושה זה לנקות את החיבורים (היסטוריית החיבורים) SSH שהיה לך.

  6.   קינון דיג'ו

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

    תודה וברכות.

    1.    KZKG ^ גאארה דיג'ו

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

      לגבי

      1.    קינון דיג'ו

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

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

        ssh-copy-id other.user@otra.ip
        כתוב את הסיסמה שלך עבור שרת אחר זה

        ומוכן.
        לגבי

  7.   ראול דיג'ו

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

    $ssh-copy-id -p 4000 lm11@148.218.32.91

    נמל רע אומסק 077; מבחן -d ~ / .ssh || mkdir ~ / .ssh; חתול >> ~ / .ssh / author_keys '

    תודה על עזרתך.

  8.   גרמנית דיג'ו

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

    כבר הסתכל על / etc / ssh / sshd_config

    כבר הפעלתי מחדש את שני השרתים

    PC2 = כובע אדום לינוקס 6.4
    PC2 = כובע אדום לינוקס 5.1

    1.    חאווייר דיג'ו

      יש להגדיר את שירות ssh בצורה נכונה (/ etc / ssh / sshd_config ב- PC2) כדי שהוא יעבוד.

  9.   גרמנית דיג'ו

    תיקון…

    PC1 = Centos 6.4
    PC2 = רד האט 5.1

  10.   גריוואס דיג'ו

    שלום עמיתים, יש לי צורך ליצור קשר אמון בין שרת Linux Centos 1 אחד ל- Unix Sco5.3, אך יש לי את הבעיה שכאשר מבצעים שלב 5.7 של העתקת המפתח מ- Linux ל- Unix אני מקבל את ההודעה / usr / bin / ssh-copy-id: שגיאה: לא נמצאו זהויות, מדוע זה יכול להיות?

    תודה

  11.   נאמק דיג'ו

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

    האם מישהו חושב מה זה יכול להיות?

  12.   לשדוד דיג'ו

    נראה כי לאחר יצירת המפתח עליכם לבצע ssh-add כדי שסוכן האימות יוכל להשתמש בו.

  13.   אנדרו קולודרו דיג'ו

    כיצד אוכל למחוק את מפתח הגישה?

  14.   ירדן אקוסטה דיג'ו

    תודה רבה, זה עבד מושלם

  15.   מינימיניו דיג'ו

    תודה רבה על המדריך! זה קל מאוד וזה שימושי כאשר יש לך את השרתים שלך בחוץ ולא צריך להזין מפתחות ובכך להפוך את הדברים לאוטומטיים 😀

  16.   erm3nda דיג'ו

    תודה.

    לא הייתי מודע לשימוש ב- ssh-copy-id וזה היה די אוטומטי.
    האמת היא שהייתי עד כדי כתיבת הסיסמה, אז מה שאני עושה זה לשמור אותה בפרפרזה של DEFAULT, שנשמרת במהלך הפגישה.

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

    SSH אין ג'וטסו!

  17.   ליז דיג'ו

    שלום

    הדרכה טובה ... אבל אם אני רוצה להעביר מידע ??? איך אני יכול לעשות את זה?

  18.   דיגו גונזלס דיג'ו

    שלום, התרומה שלך מאוד מעניינת, אבל יש לי כמה ספקות לגבי נושא דומה

  19.   קרלוס הרננדז דיג'ו

    היי.

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

    bash: ssh-copy-id: הפקודה לא נמצאה

    האם אוכל להעתיק את המפתח באופן ידני?

  20.   היי דיג'ו

    מְעוּלֶה!! חיפשתי הסבר כל כך פשוט וזה עבד מושלם

    תודה!

  21.   ירומל דיג'ו

    תרומה מעולה.
    תודה רבה, זה עזר לי מאוד.

  22.   פדרו דיג'ו

    היי, אני רוצה לדעת אם יש דרך לבצע פקודה זו ssh-copy-id. מכיוון שאני מתקין Open ssh עבור Windows, ssh עובד בשבילי ב- DOS אך אין לה את הפקודה ssh-copy-id. ברצוני לדעת כיצד לשלוח את המפתח הציבורי הזה לשרת הלינוקס האחר (שרת לינוקס). תודה רבה.

  23.   פדרו דיג'ו

    היי. עלי ליצור קשר אמון בין שרת לינוקס למכונת Windows. התקן את SSH עבור Windows וזה עובד בשבילי. אך פקודה זו ssh-copy-id אינה זמינה בכלי זה.

    הם יודעים על דרך אחרת לעשות זאת מבלי להשתמש ב- ssh-copy-id.

    תודה רבה על הערותיך.

  24.   אנדריניו דיג'ו

    אבל השאלה של זה היא להיות מסוגלים להתחבר ללא סיסמה, אם אנחנו שמים ביטוי סיסמה זה היה מבקש מאיתנו לעבור את זה ולא זה היה המטרה

  25.   אנדריניו דיג'ו

    זה היה מאוד שימושי עבורי עבור מודול ה- fp של המחשב שלי, תודה 🙂

  26.   Vicent דיג'ו

    תודה!!!

  27.   איש x דיג'ו

    יש שדואגים עד כמה זה יכול להיות מעצבן שצריך להזין את הסיסמה (ביטוי סיסמה), בשביל זה, כפי שאמרו לעיל, זה "user-Agent" ושהייתי מוגדר גם עם Keepass ופונקציית ה- Auto-Type שלו, אז אני פשוט אני מזמין את הטרמינל ועם שילוב המקשים שהגדירו אותם מוכנים, יש לי גם "כינויים" לכל בקשה והכל מאוד קל.

    הדרכה נחמדה.

    תיהנו מאוד !!

  28.   פליפה אוירס דיג'ו

    מידע טוב מאוד 🙂 אבל יש לי שאלה ...

    יש לי PC10 שם אני שומר את המידע, המידע נשלח מ pc1 - pc2 - pc3, ל- PC10, איך אוכל לגרום ל pc1, pc ו- pc3 להשתמש באותו מפתח כדי לגשת ל- PC10 ללא מפתח.

    לחיים ...

  29.   נסטור דיג'ו

    איך אוכל לרשום מה יש ב- machine1 בבאש של machine2 בלי לעבור ל- ssh ip @ hosts ל- bas1 של machineXNUMX. אני לא יודע אם אני מבין את xD

  30.   סנונית דיג'ו

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