OnWorks Linux ו-Windows Online WorkStations

לוגו

אירוח מקוון בחינם עבור תחנות עבודה

<הקודם | תוכן | הבא>

ssh

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

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

רוב ההפצות של לינוקס מספקות יישום של SSH בשם OpenSSH מפרויקט OpenBSD. הפצות מסוימות כוללות הן את חבילות הלקוח והן את שרת כברירת מחדל (לדוגמה, Red Hat), בעוד שאחרות (כגון אובונטו) מספקות רק את הלקוח. ל


לאפשר למערכת לקבל חיבורים מרוחקים, עליה להיות בעלת ה-Oשרת penSSH חבילה מותקנת, מוגדרת ופועלת, ו(אם המערכת פועלת או נמצאת מאחורי חומת אש) עליה לאפשר חיבורי רשת נכנסים ביציאת TCP 22.


תמונה

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


תמונה

תוכנית לקוח SSH המשמשת לחיבור לשרתי SSH מרוחקים נקראת, באופן הולם, ssh. כדי להתחבר למארח מרוחק בשם מרחוק-sys, היינו משתמשים ב- ssh תוכנית לקוח כך:



[me@linuxbox ~]$ ssh שלט-sys

לא ניתן לקבוע את האותנטיות של המארח 'remote-sys (192.168.1.4)'.

RSA key fingerprint is 41:ed:7a:df:23:19:bf:3c:a5:17:bc:61:b3:7f:d9:bb.

האם אתה בטוח שברצונך להמשיך להתחבר (כן / לא)?

[me@linuxbox ~]$ ssh שלט-sys

לא ניתן לקבוע את האותנטיות של המארח 'remote-sys (192.168.1.4)'.

RSA key fingerprint is 41:ed:7a:df:23:19:bf:3c:a5:17:bc:61:b3:7f:d9:bb.

האם אתה בטוח שברצונך להמשיך להתחבר (כן / לא)?


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



אזהרה: הוספה לצמיתות 'remote-sys,192.168.1.4' (RSA) לרשימת המארחים הידועים.

הסיסמה של me@remote-sys:

אזהרה: הוספה לצמיתות 'remote-sys,192.168.1.4' (RSA) לרשימת המארחים הידועים.

הסיסמה של me@remote-sys:


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



כניסה אחרונה: שבת 30 באוגוסט 13:00:48 2016 [me@remote-sys ~]$

כניסה אחרונה: שבת 30 באוגוסט 13:00:48 2016 [me@remote-sys ~]$


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


מתחדש והנחיית המעטפת המקומית מופיעה שוב.

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


[me@linuxbox ~]$ ssh bob@remote-sys

הסיסמה של bob@remote-sys:

כניסה אחרונה: שבת 30 באוגוסט 13:03:21 2016 [bob@remote-sys ~]$

[me@linuxbox ~]$ ssh bob@remote-sys

הסיסמה של bob@remote-sys:

כניסה אחרונה: שבת 30 באוגוסט 13:03:21 2016 [bob@remote-sys ~]$


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



[me@linuxbox ~]$ ssh שלט-sys

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@

@ אזהרה: זיהוי המארח המרוחק השתנה! @

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@ יתכן שמישהו עושה משהו מגעיל!

מישהו יכול לצותת לך עכשיו (מתקפה של איש-באמצע)!

ייתכן גם שמפתח המארח RSA השתנה זה עתה. טביעת האצבע של מפתח ה-RSA שנשלח על ידי המארח המרוחק היא 41:ed:7a:df:23:19:bf:3c:a5:17:bc:61:b3:7f:d9:bb.

אנא פנה למנהל המערכת.

הוסף מפתח מארח נכון ב-/home/me/.ssh/known_hosts כדי להיפטר מההודעה הזו.

מפתח פוגע ב-/home/me/.ssh/known_hosts:1

מפתח מארח RSA עבור remote-sys השתנה וביקשת בדיקה קפדנית.

אימות מפתח המארח נכשל.

[me@linuxbox ~]$ ssh שלט-sys

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@

@ אזהרה: זיהוי המארח המרוחק השתנה! @

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@ יתכן שמישהו עושה משהו מגעיל!

מישהו יכול לצותת לך עכשיו (מתקפה של איש-באמצע)!

ייתכן גם שמפתח המארח RSA השתנה זה עתה. טביעת האצבע של מפתח ה-RSA שנשלח על ידי המארח המרוחק היא 41:ed:7a:df:23:19:bf:3c:a5:17:bc:61:b3:7f:d9:bb.

אנא פנה למנהל המערכת.

הוסף מפתח מארח נכון ב-/home/me/.ssh/known_hosts כדי להיפטר מההודעה הזו.

מפתח פוגע ב-/home/me/.ssh/known_hosts:1

מפתח מארח RSA עבור remote-sys השתנה וביקשת בדיקה קפדנית.

אימות מפתח המארח נכשל.


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

לאחר שנקבע שההודעה נובעת מגורם שפיר, בטוח לתקן את הבעיה בצד הלקוח. זה נעשה באמצעות עורך טקסט (מֶרֶץ אולי) כדי להסיר את המפתח המיושן מה- ~/.ssh/known_hosts קוֹבֶץ. בהודעה לדוגמה למעלה, אנו רואים את זה:


מפתח פוגע ב-/home/me/.ssh/known_hosts:1

מפתח פוגע ב-/home/me/.ssh/known_hosts:1


משמעות הדבר היא כי שורה אחת של מארחים_מוכרים הקובץ מכיל את המפתח הפוגע. מחק את השורה הזו מהקובץ, ואת ssh התוכנית תוכל לקבל אישורי אימות חדשים מהמערכת המרוחקת.

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


[me@linuxbox ~]$ ssh מרחוק-sys חינם

הסיסמה של me@twin4:

סה"כ בשימוש בחינם

משותף

מאגרים

שמור במטמון

[me@linuxbox ~]$ ssh מרחוק-sys חינם

הסיסמה של me@twin4:

סה"כ בשימוש בחינם


מ:

775536 507184 268352

0

110068

154596

מ:


-/+ מאגרים/מטמון:

לְהַחלִיף:

242520 533016

0 1572856

-/+ מאגרים/מטמון:

לְהַחלִיף:


[me@linuxbox ~]$

[me@linuxbox ~]$


תמונה

1572856

1572856

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



[me@linuxbox ~]$ ssh remote-sys 'ls *' > dirlist.txt

הסיסמה של me@twin4: [me@linuxbox ~]$

[me@linuxbox ~]$ ssh remote-sys 'ls *' > dirlist.txt

הסיסמה של me@twin4: [me@linuxbox ~]$


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



[me@linuxbox ~]$ ssh remote-sys 'ls * > dirlist.txt'

[me@linuxbox ~]$ ssh remote-sys 'ls * > dirlist.txt'


תמונה

מנהור עם SSH

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

אולי השימוש הנפוץ ביותר בתכונה זו הוא לאפשר העברת תעבורת מערכת X Window. במערכת המריץ שרת X (כלומר, מכונה המציגה GUI), ניתן להפעיל ולהפעיל תוכנית X (יישום גרפי) במערכת מרוחקת ולהציג את התצוגה שלה במערכת המקומית. זה קל לביצוע; הנה דוגמה: נניח שאנחנו יושבים על מערכת לינוקס שנקראת lin-uxbox שמפעיל שרת X, ואנחנו רוצים להפעיל את xload תוכנית על מערכת מרוחקת בשם מרחוק-sys וראה את הפלט הגרפי של התוכנית במערכת המקומית שלנו. נוכל לעשות את זה:

[me@linuxbox ~]$ ssh -X מרחוק-sys

הסיסמה של me@remote-sys:

כניסה אחרונה: ב' 08 ספט' 13:23:11 2016 [me@remote-sys ~]$ xload

לאחר xload הפקודה מבוצעת במערכת המרוחקת, החלון שלה מופיע במערכת המקומית. במערכות מסוימות, ייתכן שיהיה עליך להשתמש באפשרות "-Y" ולא באפשרות "-X" כדי לעשות זאת.


מחשוב ענן מערכת ההפעלה המוביל ב-OnWorks: