SSH הוא הצלת חיים כאשר אתה צריך לנהל מרחוק מחשב, אך האם ידעת שאתה יכול גם להעלות ולהוריד קבצים? באמצעות מקשי SSH תוכלו לדלג על הצורך להזין סיסמאות ולהשתמש בזה לסקריפטים!
תהליך זה עובד על לינוקס ו- Mac OS, בתנאי שהם מוגדרים כראוי לגישה SSH. אם אתה משתמש ב- Windows, תוכל השתמש ב- Cygwin כדי לקבל פונקציונליות כמו לינוקס , ועם קצת צביטה, SSH יפעל גם כן .
העתקת קבצים באמצעות SSH
העתקה מאובטחת היא פקודה שימושית באמת, והיא ממש קלה לשימוש. הפורמט הבסיסי של הפקודה הוא כדלקמן:
scp [options] original_file destination_file
הבועט הגדול ביותר הוא כיצד לעצב את החלק המרוחק. כשאתה פונה לקובץ מרוחק, עליך לעשות זאת באופן הבא:
user @ server: path / to / file
השרת יכול להיות כתובת URL או כתובת IP. לאחר מכן נקודתיים, ואז הנתיב לקובץ או לתיקיה המדוברים. בואו נסתכל על דוגמא.
scp –P 40050 Desktop / url.txt [email protected]: ~ / Desktop / url.txt
פקודה זו כוללת את דגל [-P] (שים לב כי מדובר באותיות רישיות). זה מאפשר לי לציין מספר יציאה במקום ברירת המחדל 22. זה נחוץ לי בגלל האופן שבו הגדרתי את המערכת שלי.
לאחר מכן, הקובץ המקורי שלי הוא "url.txt" שנמצא בתוך ספריה בשם "שולחן עבודה". קובץ היעד נמצא ב- "~ / Desktop / url.txt" זהה ל- "/user/yatri/Desktop/url.txt". פקודה זו מנוהלת על ידי המשתמש "yatri" במחשב המרוחק "192.168.1.50".
מה אם אתה צריך לעשות את ההפך? ניתן להעתיק קבצים משרת מרוחק באופן דומה.
הנה העתקתי קובץ מהתיקייה "~ / Desktop /" של המחשב המרוחק לתיקיית "Desktop" של המחשב שלי.
כדי להעתיק ספריות שלמות, יהיה עליכם להשתמש בדגל [-r] (שימו לב שמדובר באות קטנה).
ניתן גם לשלב דגלים. במקום
scp –P –r ...
אתה יכול פשוט לעשות
SCP - אבל ...
החלק הקשה ביותר כאן הוא שהשלמת הכרטיסיות לא תמיד עובדת, ולכן כדאי להפעיל טרמינל נוסף עם הפעלת SSH כדי שתדע היכן לשים דברים.
SSH ו- SCP ללא סיסמאות
עותק מאובטח נהדר. אתה יכול להכניס אותו לתסריטים ולבצע לו גיבויים למחשבים מרוחקים. הבעיה היא שאולי לא תמיד תהיה בסביבה כדי להזין את הסיסמה. ובואו נהיה כנים, זה ממש כאב להכניס את הסיסמה למחשב מרוחק שברור שיש לכם גישה אליו כל הזמן.
ובכן, אנו יכולים להסתובב באמצעות סיסמאות באמצעות קבצי מפתח. אנו יכולים לגרום למחשב ליצור שני קבצי מפתח - ציבור אחד השייך לשרת המרוחק, ואחד פרטי שנמצא במחשב שלך וצריך להיות מאובטח - ואלה ישמשו במקום בסיסמה. די נוח, נכון?
במחשב, הזן את הפקודה הבאה:
ssh-keygen –t rsa
פעולה זו תיצור את שני המקשים ותכניס אותם:
~ / .ssh /
עם השמות "id_rsa" עבור המפתח הפרטי שלך, ו- "id_rsa.pub" עבור המפתח הציבורי שלך.
לאחר הזנת הפקודה, תישאל היכן לשמור את המפתח. אתה יכול ללחוץ על Enter כדי להשתמש בברירות המחדל הנ"ל.
לאחר מכן תתבקש להזין ביטוי סיסמה. לחץ על Enter כדי להשאיר את זה ריק ואז לעשות זאת שוב כאשר הוא מבקש אישור. השלב הבא הוא העתקת קובץ המפתח הציבורי למחשב המרוחק שלך. אתה יכול להשתמש ב- scp כדי לעשות זאת:
היעד של המפתח הציבורי שלך נמצא בשרת המרוחק, בקובץ הבא:
~ / .ssh / מורשה_מפתחות 2
ניתן להוסיף מפתחות ציבוריים הבאים לקובץ זה, בדומה לקובץ ~ / .ssh / known_hosts. פירוש הדבר שאם תרצה להוסיף מפתח ציבורי נוסף עבור חשבונך בשרת זה, תעתיק את תוכן הקובץ id_rsa.pub השני לשורה חדשה בקובץ ה- authenticated_keys2 הקיים.
שיקולי ביטחון
האם זה לא פחות מאובטח מסיסמה?
במובן המעשי, לא ממש. המפתח הפרטי שנוצר מאוחסן במחשב בו אתה משתמש, והוא לעולם לא מועבר, אפילו לא כדי לאמת. מפתח פרטי זה תואם רק את אותו מפתח ציבורי אחד, ויש להתחיל את החיבור מהמחשב שיש לו את המפתח הפרטי. RSA די מאובטח ומשמש כברירת מחדל באורך 2048 סיביות.
זה למעשה די דומה בתיאוריה לשימוש בסיסמה שלך. אם מישהו יודע את הסיסמה שלך, האבטחה שלך יוצאת מהחלון. אם למישהו יש את קובץ המפתח הפרטי שלך, האבטחה תאבד לכל מחשב שיש לו מפתח הערווה התואם, אך הוא זקוק לגישה למחשב שלך כדי לקבל אותו.
האם זה יכול להיות בטוח יותר?
ניתן לשלב סיסמה עם קבצי מפתח. בצע את השלבים שלמעלה, אך הזן משפט סיסמה חזק. כעת, כאשר אתה מתחבר באמצעות SSH או משתמש ב- SCP, תזדקק לקובץ המפתח הפרטי המתאים בנוסף ל משפט הסיסמה הנכון.
ברגע שתזין את משפט הסיסמה שלך פעם אחת, לא תתבקש שוב עליו עד שתסגור את ההפעלה שלך. המשמעות היא שבפעם הראשונה שאתה SSH / SCP תצטרך להזין את הסיסמה שלך, אך כל הפעולות הבאות לא ידרשו זאת. ברגע שתתנתק מהמחשב שלך (לא המרוחק) או תסגור את חלון המסוף, יהיה עליך להזין אותו שוב. באופן זה, אתה לא ממש מקריב אבטחה, אבל אתה גם לא מתנכל לסיסמאות כל הזמן.
האם אוכל לעשות שימוש חוזר בצמד המפתחות הציבורי / הפרטי?
זה רעיון ממש גרוע. אם מישהו מוצא את הסיסמה שלך ואתה משתמש באותה סיסמה עבור כל חשבונותיך, כעת יש לו גישה לכל אותם חשבונות. באופן דומה, קובץ המפתח הפרטי שלך הוא גם סודי וחשוב. (למידע נוסף, עיין ב כיצד להתאושש לאחר סיסמת הדוא"ל שלך )
עדיף ליצור זוגות מפתח חדשים לכל מחשב וחשבון שרוצים לקשר. בדרך זו, אם אחד המפתחות הפרטיים שלך יתפס איכשהו, אז תתפשר רק על חשבון אחד במחשב מרוחק אחד.
חשוב מאוד גם לציין שכל המפתחות הפרטיים שלך מאוחסנים באותו מקום: ב- ~ / .ssh / במחשב שלך, אתה יכול השתמש ב- TrueCrypt כדי ליצור מיכל מאובטח ומוצפן ליצור קישורים סימבוליים בספריית ~ / .ssh / שלך. תלוי במה שאני עושה, אני משתמש בזה סופר-פרנואידי שיטה מאובטחת במיוחד כדי להקל על דעתי.
האם השתמשת ב- SCP בתסריטים כלשהם? האם אתה משתמש בקבצי מפתח במקום בסיסמאות? שתף את המומחיות שלך עם קוראים אחרים בתגובות!