פרוטוקול Secure Shell הוא דרך נפוצה להתחבר עם מחשב מרוחק באמצעות יישומי לקוח/שרת. הוא עושה שימוש בערכת כלים כגון ssh, scp ו-sftp, בין רבים אחרים, כדי להבטיח תהליך אימות מאובטח ותקשורת מוצפנת שאחריו. בשל כך, כלים אלה מחליפים ערכות כלים ישנות יותר לביצוע פקודות מרחוק כגון telnet, rcp ו-rlogin.
במדריך זה תלמד כיצד להתקין ולהפעיל שירותי שרת/לקוח OpenSSH במחשב שלך. זה גם מכסה את כל הפקודות הדרושות (כלי SSH) כדי לגשת ולנהל מרחוק מערכות והעברת קבצים ביניהן.
תחילת העבודה עם SSH
כברירת מחדל, רוב מערכות הלינוקס כוללות את יישומי הלקוח והשרת ssh. החבילות שכוללות כלי ssh בהפצות RHEL ו-Fedora הן openssh, openssh-server ו-openssh-client. להשתמש ב grep פקודה כדי להביא כלי ssh מהרשימה המותקנת:
רשימת יאם מותקנת | grep openssh
בעוד אובונטו כוללת רק חבילת openssh-client שמכילה גם חבילת openssh. השתמש בפקודה grep כדי לרשום חבילות openssh באובונטו, באופן הבא:
sudo dpkg --list | grep openssh
sudo apt-get install openssh-server
הפעל/הפעל שירות SSH
ניהול שירות openssh יכול להשתנות מהפצה להפצה, וללא קשר לתצורות ברירת המחדל, הוא לא מתחיל אוטומטית. השתמש בקבוצת הפקודות הבאה כדי לוודא שהשירות פועל במחשב הלינוקס שלך:
systemctl status sshd.service #for Fedora ו-RHEL
systemctl status ssh #עבור אובונטו
אם הוא לא פועל, בדוק את מצב השירות באופן הבא:
systemctl התחל את sshd.service #for Fedora ו-RHEL
systemctl ssh התחל #עבור אובונטו
כדי להפעיל את שרת openssh ברגע שהמערכת מאתחלת:
systemctl אפשר את sshd.service
הפעלת systemctl ssh
בין כלים רבים אחרים לשימוש פרוטוקול SSH עבור גישה מרחוק למערכת לינוקס, הנפוצות ביותר הן פקודת ssh עבור קוד מרחוק ביצוע וכניסה, כאשר scp ו-rsync שימושיים בהעתקת קובץ אחד או יותר בין הלקוח ושרת.
הסעיף מכסה פירוט מעמיק של הפקודות שנדונו לעיל לניהול מרחוק יעיל.
התחברות מרחוק
SSH היא הפקודה שבה תשתמש לרוב עבור תצורה מרחוק של שרת הלינוקס שלך המריץ שירות sshd. השתמש בפקודה ssh כדי לוודא אם אתה יכול להיכנס לשרת הלינוקס שלך לביצוע פקודה.
אתה יכול להשתמש במחשב לינוקס אחר כדי להיכנס לשרת שלך, או שאתה יכול לקבל מושג על זה על ידי הדמיית אותו על שלך מארח מקומי כדלהלן:
לכניסה מרחוק לחשבון אובונטו ב-X.X.X.X (כאשר X.X.X.X היא כתובת ה-IP של המכשיר המרוחק):
ssh [email protected]
לכניסה מרחוק כמשתמש מקומי:
ssh localhost
אם אתה מתחבר בפעם הראשונה לשרת המרוחק, זה יבקש ממך לאשר להתחבר למערכת, הזן כן והקלד את סיסמת חשבון המשתמש.
לאחר הרישום, ניתן להמשיך בביצוע הפקודה מרחוק מכיוון שהיא דומה לכניסה הרגילה, כאשר ההבדל היחיד הוא שהתקשורת המרוחקת מוצפנת.
לאחר שתסיים, הקלד את יְצִיאָה פקודה כדי לסיים את ההפעלה ולחזור למערכת המקומית שלך. אם הוא לא מצליח לסגור את מעטפת השלט, ~. המקשים גם עושים משימה דומה ומוציאים 'חיבור ל-X.X.X.X סגור'.
ביצוע מרחוק
הפקודה ssh מאפשרת ביצוע פקודות במערכת המרוחקת ומחזירה פלט במחשב המקומי. לדוגמה,
הפקודה הבאה פועלת כמשתמש אובונטו בשרת המרוחק ומחזיר את שם מארח:
ssh [email protected] שם מארח
כדי לבצע פקודה הכוללת אפשרויות או דגלים, הקף אותה במירכאות כפולות באופן הבא:
ssh [email protected] "cat /tmp/new_file"
הפקודה לעיל מחזירה את התוכן של הקובץ לעיל על המסך המקומי שלך.
אתה יכול גם להפעיל מספר פקודות מבלי להתחבר מחדש בכל פעם על ידי הפעלת העברה של X11 בשרת שלך. פתח את ה sshd_config קובץ בפנים /etc/ssh מדריך וקבע שילוח X11 ל כן כדלהלן:
כעת הפעל את הפקודות באופן הבא:
ssh -X [email protected] שם מארח & cat /tmp/new_file/ & יציאה
העתק קובץ באמצעות scp ו-rsync
ה scp פקודה מאפשר להעביר/להעתיק קבצים מרחוק למערכת המקומית ולהיפך. הפונקציונליות שלו דומה לפקודת rcp אך עם תקשורת מוצפנת RSA. כמה דוגמאות בהמשך.
העתק את קוֹבֶץ מ ה /etc/demo הספרייה של המחשב המרוחק אל שלה /tmp תיקייה כדלקמן:
scp [email protected]:/home/ubuntu/demo/file /tmp
זה גם מאפשר העתקה רקורסיבית, מה שאומר שאתה יכול לספק את הפקודה עם ספרייה, והיא מעתיקה את כל הקבצים/תיקיות במורד ההיררכיה לספרייה מקומית אחרת.
scp -r localhost:/home/ubuntu/ /tmp
אתה יכול גם להשתמש בפקודה scp לגיבוי קבצים וספריות, אבל rsync הוא כלי גיבוי טוב יותר מכמה סיבות:
- ל-scp אין יכולת לשמור על הרשאות קובץ/ספרייה ושעה/תאריך.
- זה גם לא מסוגל לזהות קבצים וספריות שכבר הועתקו.
כעת רשום את התוכן של הספריות לעיל כדי להציג את הרשאות הקובץ ומועד היצירה, באופן הבא:
ls -l /etc/demo /tmp/demo
חזור על הפקודה scp שלמעלה ורשום מחדש את הספריות כדי לבדוק אם היא מחליפה את הקובץ/הספריות שכבר הועתקו מחותמת הזמן שלה:
קָשׁוּר:העתק בצורה מאובטחת קבצים בלינוקס עם הפקודה Scp
ה דגל -p עבור הפקודה scp עשויה לסייע בשמירה על חותמת הזמן או הרשאות הכתיבה, אך היא עדיין מחליפה את הקבצים שכבר הועתקו. כדי להתגבר על החסרונות הללו, השתמש ב-rsync ככלי גיבוי. מחק את הקבצים תחילה ב- /tmp ספרייה כדי להמשיך עם הדוגמה למטה. השתמש בפקודה rsync עם ה- -א דגל עבור ארכיון רקורסיבי ואת -v אפשרות למלל להעתיק את /home/ubuntu/demo קבצים ל /tmp ספרייה, כדלקמן:
rsync -av [email protected]:/home/ubuntu/demo /tmp
רשום את /tmp ספרייה כדי לציין כיצד היא משמרת את זמן יצירת הקובץ או הספרייה.
לבסוף, הפעל מחדש את rsync פקודה כדי לוודא שהוא לא מעתיק אף קובץ.
היכרות עם SSH
המאמר הוא מדריך לפרוטוקול הנפוץ ביותר לניהול מרחוק של שרתי לינוקס. אנו מציגים כיצד להשתמש בפקודות SSH החשובות ביותר עם כמה טיפים וטריקים כדי להקל על משימת העתקת הקבצים וניהולם.
התחלת הבנת פקודות/כלים של SSH והפונקציונליות שלהם יכולה לשנות את תפיסתך על ניהול מערכת/שרת מכיוון שהיא פותחת את היכולות של לא רק SSH אלא גם של מסוף לינוקס. זהו כלי רב עוצמה המציע אבטחה ניכרת, יחד עם פונקציונליות נוספת מתקדמת מכדי לכסות אותו במדריך יחיד.
למד כיצד לחסוך זמן בניהול שרתים מרוחקים עם פקודות SSH ו-Linux אלה.
קרא הבא
- לינוקס
- SSH
- גישה מרחוק
Rumaisa היא סופרת עצמאית ב-MUO. היא עברה דרך ארוכה ממתמטיקאית לחובבת אבטחת מידע, ועובדת כאנליסטית SOC. תחומי העניין שלה כוללים קריאה וכתיבה על טכנולוגיות חדשות, הפצות לינוקס וכל דבר סביב אבטחת מידע.
הירשם לניוזלטר שלנו
הצטרף לניוזלטר שלנו לקבלת טיפים טכניים, ביקורות, ספרים אלקטרוניים בחינם ומבצעים בלעדיים!
לחץ כאן כדי להירשם