פרסומת
SSH היא דרך מצוינת לקבל גישה מרחוק למחשב שלך. בדומה ל-FTP, אתה יכול להתחבר SSH FTP מה זה SSH ואיך זה שונה מ-FTP [הסבר על הטכנולוגיה] קרא עוד כדי לקבל גישה מאובטחת לשרת קבצים עם המועדף עליך לקוח FTP העברת קבצים מאסטר ב-FTP בכל האתרים שלך עם FileZillaלמספר רב של לקוחות FTP של פעם היו שיהוקים בכל הנוגע להעברות קבצים גדולות. האפליקציות חוו את פסקי הזמן הרגילים שהייתם מצפים להם כשהמחשב יושב שם 15 עד... קרא עוד , גישה מהירה לקבצים מרוחקים, או אפילו הרכבה של דיסק רשת למחשב שלך. אבל יש יותר ב-SSH מאשר גישה לקבצים מרחוק. כניסה דרך SSH בטרמינל (או באמצעות מֶרֶק ב-Windows) נותן לך גישה למעטפת מרחוק (אחרי הכל, SSH הוא קיצור של Secure SHell). כך אני מנהל את שרת המדיה שלי מרחוק.
כאשר אתה לפתוח את היציאות מה זה Port Forwarding ואיך זה יכול לעזור לי? [MakeUseOf מסביר]האם אתה בוכה קצת מבפנים כשמישהו אומר לך שיש בעיה בהעברת יציאות ובגלל זה האפליקציה החדשה והנוצצת שלך לא תעבוד? ה-Xbox שלך לא נותן לך לשחק משחקים, הורדות הטורנט שלך מסרבות... קרא עוד בנתב שלך (יציאה 22 ליתר דיוק) אתה יכול לא רק לגשת לשרת ה-SSH שלך מתוך הרשת המקומית שלך, אלא מכל מקום בעולם.
עם זאת, אינך רוצה להסתכן בשימוש בסיסמה חלשה לצורך אימות. אם מישהו מקבל גישה למחשב שלך דרך SSH, הוא מקבל גישה מלאה למעטפת. רק כדי להיות ברור, זה לא משהו שאנחנו רוצים. למרבה המזל, קל מאוד להגדיר את שרת ה-SSH הגלובלי שלך בצורה מאובטחת מאוד על ידי שימוש באימות מבוסס מפתח והשבתת אימות הסיסמה בשרת שלך לחלוטין.
האם זה בשבילי?
זה מפתה להשתחרר עם ביטחון אישי. אם אתה משתמש בשרת לאמצעים פרטיים, אתה עלול לחשוב שאנשים פשוט לא יודעים על השרת שלך ולכן לא ינסו לפרוץ אותו - אבטחה דרך ערפול. זה יהיה א מאוד הנחה שגויה. מכיוון ש(רוב) תעבורת ה-SSH מועברת ביציאה 22, התוקפים בודקים באופן שגרתי את הנראות של יציאה 22 בכתובות IP אקראיות, ואחריה מתקפה של כוח גס. זו אחת הדרכים שבהן נוצרות רשתות בוטנט לשימוש בהן התקפות DDOS מהי התקפת DDoS? [MakeUseOf מסביר]המונח DDoS שורק בעבר בכל פעם שאקטיביזם סייבר מרים את ראשו בהמוניו. התקפות מסוג זה עולות לכותרות בינלאומיות בגלל סיבות רבות. הבעיות שמניעות את התקפות ה-DDoS הן לעתים קרובות שנויות במחלוקת או מאוד... קרא עוד .
כדי לעשות סיפור ארוך קצר: אם אתה משדר את שרת ה-SSH שלך דרך האינטרנט (כלומר קדימה יציאה 22), אז כן, זה בשבילך.
הרעיון של כניסות SSH מבוססות מפתח
כניסות SSH מבוססות מפתח מסתמכות על הרעיון של קריפטוגרפיה של מפתח ציבורי. זה ייקח אותנו רחוק מדי להסביר את המורכבות, אבל ננסה לצייר תמונה פשוטה של מה שקורה מאחורי הקלעים.
בתהליך שלהלן, מחשב הלקוח שלך יוצר שני מפתחות: מפתח ציבורי ומפתח פרטי. הרעיון הכללי הוא שאתה יכול להצפין נתונים עם המפתח הציבורי, אבל רק לפענח אותם עם המפתח הפרטי. אנו נשים את המפתח הציבורי בשרת ונבקש ממנו להצפין את כל התקשורת היוצאת איתו. זה מוודא שרק אותם לקוחות עם המפתח הפרטי יכולים לפענח ולקרוא את הנתונים.
1. התקן את OpenSSH
ראשית, אנו הולכים להגדיר שרת SSH באמצעות OpenSSH. אם כבר יש לך שרת SSH פועל ורק רוצה לדעת איך להגדיר אימות מבוסס מפתח, אתה יכול לדלג על שלב זה. השתמש במנהל החבילות המועדף עליך כדי להתקין את אפליקציית שרת OpenSSH. הדרך הפשוטה ביותר עדיין עשויה להיות להפעיל את apt-get פקודה מהמסוף.
sudo apt-get install openssh-server
הזן את הסיסמה שלך, אשר והמתן דקה לסיום ההתקנה. מזל טוב, כעת יש לך שרת SSH. (זה היה קל!)

אתה יכול להשתמש ביישום כפי שהוא, או לערוך /etc/ssh/sshd_config
כדי להגדיר אותו. הפעל את גבר sshd_config
פקודה בטרמינל כדי לקבל מידע נוסף. משאב נהדר נוסף למידע נוסף על OpenSSH הוא דף העזרה הרלוונטי של אובונטו.
2. צור מפתחות
אנו ניצור קבוצה של מפתחות. הפעל את הפקודות הבאות (מותאמות מ- OpenSSH/Keys דף העזרה של אובונטו).
mkdir ~/.ssh
chmod 700 ~/.ssh
ssh-keygen -t rsa
הפקודה הראשונה יוצרת ספרייה נסתרת '.ssh' בתיקיית הבית שלך, הפקודה השנייה משנה את הרשאות הגישה של התיקיה בעוד שהפקודה השלישית למעשה יוצרת קבוצה של RSA מפתחות. תחילה תתבקשו לציין מיקום לשמירת המפתחות (השאירו ריק והקש אנטר כדי לשמור במיקום ברירת המחדל) ושנית עבור ביטוי סיסמה.

ביטוי סיסמה זה מצפין עוד יותר את המפתח הפרטי המאוחסן במחשב שלך, ובעצם נותן לך יותר זמן לאבטח את שרת ה-SSH אם המפתח הפרטי שלך ייגנב אי פעם. ודא שאתה בוחר ביטוי סיסמה שאתה מסוגל לזכור, מכיוון שתצטרך להזין אותו כשתנסה להשתמש במפתח שלך.
3. העבר את המפתח הציבורי
לאחר מכן, תצטרך להעביר את המפתח הציבורי שיצרת בשלב הקודם למחשב שרת SSH. אם מחשב הלקוח שלך מריץ גם לינוקס, ניתן להשיג זאת בקלות רבה על ידי הפעלת הפקודה למטה (החלפה
ssh-copy-id @
אם הלקוח שלך לא תומך בפקודה ssh-copy-id, אתה יכול להשתמש בפקודה למטה במקום זאת. זה קצת יותר מפותל, אבל בעצם משיג את אותן תוצאות.
cat ~/.ssh/id_rsa.pub | ssh @ "mkdir ~/.ssh; חתול >> ~/.ssh/authorized_keys"
תתבקש להזין את סיסמת המשתמש עבור שרת SSH. אם הפקודות יבוצעו ללא שגיאות, המפתח הציבורי שלך יועתק לשרת.
4. השבת את אימות הסיסמה
שים לב שהמערכת שלך עדיין לא מאובטחת יותר מאשר לאחר שלב ראשון. למרות שלפחות לקוח אחד מוגדר להשתמש באימות מבוסס מפתח, זה עדיין משאיר מקום ללקוחות אחרים להתחבר עם סיסמה. לסיום, נשבית לחלוטין את אימות הסיסמה. לאחר שלב זה, רק מחשבים שעברו את התהליך לעיל יכולים להתחבר לשרת ה-SSH שלך.
כדי להשבית את אימות הסיסמה, ערוך את ה /etc/ssh/sshd_config
קובץ בעורך המועדף עליך. אחת הדרכים הקלות ביותר לערוך קובץ מוגבל היא, שוב, שימוש בטרמינל. (אני חלקית לננו, אבל אתה יכול להשתמש בכל מה שאתה הכי נוח איתו.)
sudo nano /etc/ssh/sshd_config
בערך 40 שורות מתחתית הקובץ, תמצא
#Password Authentication כן
הסר את סימן המספר (#) ושנה את ההגדרה ל'לא', כמו להלן.
מס' אימות סיסמה
הקובץ הסופי אמור להיראות בערך כך:

שמור את הקובץ על ידי לחיצה על CTRL+X. אשר את העריכה ואת שם הקובץ, וכמעט סיימת. פשוט הפעל מחדש את שרת SSH כדי להפעיל אותו עם ההגדרות החדשות הללו.
sudo הפעל מחדש את ssh
אתה גם שם לב שהלקוח שלך יפסיק לבקש את ביטוי הסיסמה כדי לפענח את המפתח שלך אם אימות הסיסמה מושבת בשרת. עכשיו כשיש לך שרת SSH מאובטח, איך אתה מתכוון להשתמש בו? בתור שרת קבצים מאובטח, מעטפת מרוחקת, או כדי להעביר שירותים אחרים דרך SSH? ספר לנו בקטע ההערות למטה!
קרדיט תמונה: Shutterstock
אני סופר וסטודנט למדעי המחשב מבלגיה. אתה תמיד יכול לעשות לי טובה עם רעיון טוב למאמר, המלצת ספר או רעיון למתכון.