הקדמה
כאשר אתה יוצר שרת Ubuntu 20.04 חדש, עליך לבצע כמה שלבי הגדרה חשובים כחלק מהגדרה התחלתית. השלבים הללו ישפרו את האבטחה ואת השימושיות של השרת שלך, ויתנו לך בסיס אמיתי לפעולות עתידיות.
כאשר אתה יוצר טיפוס DigitalOcean, אתה יכול לבחור את גרסת האובונטו שתתווסף באופן אוטומטי לטיפוס החדש שלך. פשוט את ההגדרה שלך עם הפתרונות המוכנים שלנו.
שלב 1 — כניסה כשורש
כדי להיכנס לשרת שלך, עליך לדעת את כתובת ה-IP הציבורית של השרת שלך. תצטרך גם את הסיסמה או — אם התקנת מפתח SSH לאימות — את המפתח הפרטי לחשבון המשתמש root. אם עדיין לא התחברת לשרת שלך, עשוי להיות שתרצה לעקוב אחר המדריך שלנו על כיצד להתחבר לטיפוסים עם SSH, שמסביר את התהליך בפרטים.
אם עדיין לא מחוברים לשרת שלכם, התחברו כעת כמשתמש root באמצעות הפקודה הבאה (החליפו את החלק המודגש של הפקודה בכתובת ה-IP הציבורית של השרת שלכם):
קבלו את אזהרת האימות של המארח אם היא מופיעה. אם אתם משתמשים באימות באמצעות סיסמה, ספקו את סיסמת ה-root כדי להתחבר. אם אתם משתמשים במפתח SSH שמוגן בסיסמת עבר, עשו זאת בפעם הראשונה שתשתמשו במפתח בכל הסשן. אם זו הפעם הראשונה שאתם מתחברים לשרת עם סיסמה, עשו זאת בכדי לשנות את סיסמת ה-root.
אודות root
המשתמש root הוא המשתמש המנהלי בסביבת Linux שיש לו הרשאות רחבות מאוד. בשל ההרשאות המרובות של חשבון ה-root, ממליצים לך לא להשתמש בו באופן קבוע. זה כי חשבון ה-root יכול לבצע שינויים מאוד הורסניים, גם בטעות.
השלב הבא הוא להגדיר חשבון משתמש חדש עם הרשאות מוגבלות לשימוש יומיומי. מאוחר יותר, נראה לך כיצד לקבל הרשאות רבות יותר זמניות עבור הפעמים שבהן תזדקקו להן.
שלב 2 — יצירת משתמש חדש
לאחר שתתחבר כ root, תוכל להוסיף את החשבון החדש.
בדומה לדוגמה, תוכל ליצור חשבון משתמש חדש בשם sammy, אך כדאי להחליף את זה בשם משתמש שתבחר:
תתבקש לענות על מספר שאלות, החל מהסיסמה לחשבון.
הזן סיסמה חזקה ואם תרצה, תוכל למלא במידע נוסף. זה אינו חובה ותוכל פשוט ללחוץ על ENTER
בכל שדה שתרצה לדלג עליו.
שלב 3 — הענקת הרשאות מנהל
כעת יש לנו חשבון משתמש חדש עם הרשאות רגילות. במקרים מסוימים, עשויות להיות צורך בביצוע משימות מנהל.
כדי למנוע יציאה מהחשבון הרגיל שלנו וחזרה לתוך חשבון ה root, נוכל להגדיר מה שמכונה כהרשאות משתמש ראשי או root עבור החשבון הרגיל שלנו. זה יאפשר למשתמש הרגיל שלנו להריץ פקודות עם הרשאות מנהל על ידי שימוש במילה sudo
לפני הפקודה.
כדי להוסיף את הרשאות אלה למשתמש החדש שלנו, עלינו להוסיף את המשתמש לקבוצת ה sudo. בדרך כלל, ב־Ubuntu 20.04, משתמשים שהם חברים בקבוצת ה sudo מורשים להשתמש בפקודת ה sudo
.
כמשתמש root, הפעל את הפקודה הבאה כדי להוסיף את המשתמש החדש שלך לקבוצת ה־sudo (החלף את שם המשתמש המודגש בשם המשתמש החדש שלך):
כעת, כאשר מחובר כמשתמש הרגיל שלך, תוכל להקליד sudo
לפני פקודות כדי להריץ אותן עם הרשאות מנהל מערכת.
שלב 4 — הגדרת חומת אש בסיסית
שרתי Ubuntu 20.04 יכולים להשתמש בחומת האש UFW כדי לוודא כי רק חיבורים לשירותים מסוימים מורשים. אנו יכולים להגדיר חומת אש בסיסית באמצעות יישום זה.
הערה: אם השרתים שלך פועלים על DigitalOcean, תוכל להשתמש אופציונלית ב־חומות אש של DigitalOcean Cloud במקום חומת האש UFW. אנו ממליצים להשתמש בחומת אש אחת בלבד בכל פעם כדי למנוע חוקים מתנגשים שעשויים להיות קשים לתקן.
יישומים יכולים לרשום את פרופיליהם עם UFW בעת התקנה. פרופילים אלה מאפשרים ל־UFW לנהל את היישום הזה לפי שם. OpenSSH, השירות שמאפשר לנו להתחבר לשרת שלנו כעת, רשום פרופיל עם UFW.
אתה יכול לראות זאת על ידי הקלדת:
OutputAvailable applications:
OpenSSH
אנו צריכים לוודא כי החומת אש מאפשרת חיבורי SSH כדי שנוכל להתחבר שוב בפעם הבאה. נוכל לאפשר את החיבורים הללו על ידי הקלדת:
לאחר מכן, נוכל להפעיל את החומת אש על ידי הקלדה:
הקלד y
ולחץ ENTER
כדי להמשיך. תוכל לראות כי חיבורי SSH עדיין מורשים על ידי הקלדת:
OutputStatus: active
To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
כרגע הגישה לכל החיבורים חסומה, חוץ מ-SSH, אם תתקין ותגדיר שירותים נוספים, תצטרך להתאים את הגדרות הגישה בגישת האש. תוכל ללמוד כמה פעולות נפוצות של UFW במדריך שלנו יסודות של UFW.
שלב 5 — אפשר גישה חיצונית למשתמש הרגיל שלך
עכשיו שיש לנו משתמש רגיל לשימוש יומיומי, אנו צריכים לוודא שניתן להתחבר ב-SSH לחשבון ישירות.
הערה: עד שתאמת כי תוכל להתחבר ולהשתמש ב-sudo
עם המשתמש החדש שלך, אנו ממליצים להישאר מחוברים כ-root. בכך, אם יש לך בעיות, תוכל לאתר את התקלה ולבצע שינויים נדרשים כ-root. אם אתה משתמש ב-DigitalOcean Droplet ויש לך בעיות עם חיבור ה-SSH שלך כ-root, תוכל לשחזר גישה ל-Droplets באמצעות מסוף השחזור.
תהליך הגדרת גישת SSH למשתמש החדש שלך תלוי באם חשבון ה-root של השרת שלך משתמש בסיסמה או במפתחות SSH לאימות.
אם חשבון השורש משתמש באימות סיסמה
אם התחברתם לחשבון ה־root שלכם באמצעות סיסמה, אז אימות סיסמה מאופשר עבור SSH. תוכלו להשתמש ב־SSH לחשבון המשתמש החדש שלכם על ידי פתיחת סשן טרמינל חדש ושימוש ב־SSH עם שם המשתמש החדש שלכם:
לאחר שתזינו את סיסמת המשתמש הרגיל שלכם, תתחברו. זכורו, אם תצטרכו להפעיל פקודה עם הרשאות מנהל, הקלידו sudo
לפני זה כך:
תתבקשו להזין את סיסמת המשתמש הרגיל שלכם כאשר תשתמשו ב־sudo
לפעם הראשונה בכל סשן (ולעיתים מדי לאחר מכן).
על מנת לשפר את אבטחת השרת שלכם, אנו ממליצים בחום להגדיר מפתחות SSH במקום להשתמש באימות סיסמה. עקבו אחר המדריך שלנו על הגדרת מפתחות SSH ב־Ubuntu 20.04 כדי ללמוד איך להגדיר אימות מבוסס מפתחות.
אם חשבון השורש משתמש באימות מפתחות SSH
אם התחברת לחשבון ה־root באמצעות מפתחות SSH, אז אימות בסיסמה מנוטרל עבור SSH. עליך להוסיף עותק של מפתח הציבורי המקומי שלך לקובץ ~/.ssh/authorized_keys
של המשתמש החדש כדי להתחבר בהצלחה.
מאחר שהמפתח הציבורי שלך כבר נמצא בקובץ ~/.ssh/authorized_keys
של חשבון ה־root בשרת, אנו יכולים להעתיק את הקובץ ואת מבנה התיקיות הזהה לחשבון המשתמש החדש במהלך הפעלה קיימת שלנו.
הדרך הפשוטה ביותר להעתיק את הקבצים עם הרשאות ובעלות נכונות היא באמצעות הפקודה rsync
. פעולה זו תעתיק את התיקייה .ssh
של המשתמש root, תשמור על ההרשאות ותשנה את בעלי הקבצים, הכל בפקודה אחת. וודא שאתה משנה את הקטעים המודגשים בפקודה להלן כך שתואמים את שם המשתמש הרגיל שלך:
הערה: פקודת rsync
מתייחסת למקורות וליעדים שמסתיימים בסימן נגרות בצורה שונה מאלה שאינם מסתיימים בסימן נגרות. כאשר משתמשים ב־rsync
למטה, וודא שהתיקייה המקור (~/.ssh
) אינה כוללת סימן נגרות בסופה (וודא שאינך משתמש ב־~/.ssh/
).
אם בטעות הוספת סימן נגרות בסופה של הפקודה, rsync
יעתיק את תוכן התיקייה .ssh של חשבון ה־root לתיקיית הבית של המשתמש sudo
במקום להעתיק את כל מבנה תיקיית ~/.ssh
. הקבצים יהיו במקום שגוי ו-SSH לא תוכל למצוא ולהשתמש בהם.
עכשיו, פתחו סשן טרמינל חדש על מחשבכם המקומי, והשתמשו ב־SSH עם שם המשתמש החדש שלכם:
תיכנסו לחשבון המשתמש החדש בלי להשתמש בסיסמה. זכרו, אם תרצו להריץ פקודה עם הרשאות מנהל, הקלידו sudo
לפני הפקודה כך:
תתבקשו להזין את סיסמת המשתמש הרגיל שלכם כאשר תשתמשו ב־sudo
לראשונה בכל סשן (ומדי פעם לאחר מכן).
לאן ללכת מכאן?
בנקודה זו, יש לכם בסיס יציב לשרת שלכם. תוכלו להתקין כל התוכנות שתצטרכו על השרת שלכם כעת.
Source:
https://www.digitalocean.com/community/tutorials/initial-server-setup-with-ubuntu-20-04