איך להפעיל את פרוטוקול רמוט דסקטופ באמצעות xrdp על Ubuntu 22.04

הסופר בחר ב־קרן ההקלה של קוביד-19 לקבל תרומה כחלק מתוכנית כתיבה בעבור תרומות.

הקדמה

פְּּרוֹטוֹקוֹל לשולחן עבודה מרחוק (RDP) הוא פְּרוֹטוֹקוֹל רשת שפותח על ידי מיקרוסופט שמאפשר למשתמשים לגשת מרחוק ולהתקשר עם ממשק משתמש גרפי של שרת Windows מרוחק. RDP פועל על מודל הלקוח־שרת, כאשר לקוח RDP מותקן על מכונה מקומית ושרת RDP מותקן על השרת המרוחק.

RDP משמש ברחביות לחיבורים מרוחקים של Windows, אך תוכל גם לגשת ולהתקשר עם ממשק משתמש גרפי של שרת Linux מרוחק על ידי שימוש בכלי כמו xrdp, יישום ממומן פתוח של השרת RDP.

במדריך זה, תתקין ותגדיר שרת RDP באמצעות xrdp על שרת Ubuntu 22.04 ותגיש אליו באמצעות לקוח RDP מהמכונה המקומית שלך. תבין איך להקים גישה אל שרת Linux מרוחק על ידי הגדרה ושימוש בחיבור RDP.

הפעל את אפליקציות הקדמה שלך מ־GitHub באמצעות פלטפורמת האפליקציות של DigitalOcean. תן ל־DigitalOcean להתמקד בהתפשטות האפליקציה שלך.

דרישות מוקדמות

כדי להשלים את המדריך הזה, יש לך צורך ב:

  • שרת Ubuntu 22.04 אחד עם משתמש לא רוט עם הרשאות sudo, חומת אש, ולפחות 1GB של RAM, שאתה יכול להגדיר על ידי מעקב אחר מדריך התקנת שרת התחלתי של Ubuntu 22.04.

  • מחשב מקומי עם לקוח RDP מותקן. רשימה של לקוחות RDP זמינים למערכות הפעלה שונות ניתנת למטה:

    • בחלונות, אפשר להשתמש ביישום ברירת המחדל של Remote Desktop Connection.
    • ב-macOS, אפשר להשתמש ביישום Microsoft Remote Desktop.
    • ב-Linux, אפשר להשתמש ב־FreeRDP, או ב־Remmina.

שלב 1 — התקנת מרכיב שולחן עבודה על Ubuntu

בשלב זה, תתקין ותגדיר מרכיב שולחן עבודה בשרת Ubuntu שלך. כברירת מחדל, שרת Ubuntu מגיע רק עם סביבת מסוף. עליך להתקין מרכיב שולחן עבודה כדי לגשת לממשק משתמש.

מהאפשרויות הזמינות עבור Ubuntu, תתקין את מרכיב השולחן עבודה Xfce. Xfce מציע ממשק שולחן עבודה קל משקל וידידותי למשתמש עבור מערכות הפעלה בסיסיות של Linux.

כדי להתחיל, התחבר לשרת שלך באמצעות SSH ועדכן את רשימת החבילות הזמינות באמצעות הפקודה הבאה:

  1. sudo apt update

לאחר מכן, התקן את החבילות xfce ו- xfce-goodies בשרת שלך:

  1. sudo apt install xfce4 xfce4-goodies -y

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

לאחר התקנת סביבת השולחן, עתה תתקין את xrdp על השרת שלך.

שלב 2 — התקנת xrdp על Ubuntu

xrdp הוא יישום קוד פתוח של שרת RDP שמאפשר חיבורי RDP עבור שרתים במערכת Linux. בשלב זה, תתקין את xrdp על השרת שלך של Ubuntu.

כדי להתקין xrdp, הרץ את הפקודה הבאה בטרמינל:

  1. sudo apt install xrdp -y

לאחר התקנת xrdp, אמת את מצבו של xrdp באמצעות systemctl:

  1. sudo systemctl status xrdp

פקודה זו תציג את המצב כ active (running):

Output
● xrdp.service - xrdp daemon Loaded: loaded (/lib/systemd/system/xrdp.service; enabled; vendor preset: enabled) Active: **active (running)** since Sun 2022-08-07 13:00:44 UTC; 26s ago Docs: man:xrdp(8) man:xrdp.ini(5) Main PID: 17904 (xrdp) Tasks: 1 (limit: 1131) Memory: 1016.0K CGroup: /system.slice/xrdp.service └─17904 /usr/sbin/xrdp

אם מצב xrdp אינו running, עשויים להיות עליך להתחיל את השירות באופן ידני באמצעות הפקודה הזו:

  1. sudo systemctl start xrdp

לאחר ביצוע הפקודה הנ"ל, אמת שוב את המצב כדי לוודא כי xrdp נמצא במצב running.

עכשיו התקנת את xrdp על השרת שלך. לביצוע הבא, תבצע בדיקה של הגדרות xrdp כדי לאפשר חיבורים מלקוחות רחוקים.

שלב 3 — הגדרת xrdp ועדכון הגנת הגישה שלך

בשלב זה, תסתכלו על התצורה הברירת מחדל של xrdp, שמאוחסנת ב- /etc/xrdp/xrdp.ini, ותוסיפו הגדרה עבור חיבור RDP. תעדכנו גם את הגדרות הצפריה.

xrdp.ini הוא קובץ התצורה הברירת מחדל להגדרת חיבורי RDP לשרת xrdp. ניתן לשנות ולהתאים אישית את קובץ התצורה כדי לענות על דרישות החיבור RDP.

פתחו את הקובץ בעורך טקסט nano או בכל עורך אחר שתבחרו:

  1. sudo nano /etc/xrdp/xrdp.ini

קובץ ההגדרות מכיל סעיפים שונים:

  • Globals מגדיר כמה הגדרות גלובליות להגדרת xrdp.
  • Logging מגדיר פרמטרים של מערכת הלוגים ליומנים.
  • Channels מגדיר פרמטרים של ערוצים מרובים שתומכים ב-RDP.
  • סוגי ההפעלה מגדיר את סוגי ההפעלה הנתמכים על ידי xrdp. כל הגדרת סוג ההפעלה מוגדרת כסעיף נפרד תחת שמו של סוג ההפעלה מוקף בסוגריים מרובעים, כגון [Xorg] ו- [XVnc]. אין כותרת [סוגי ההפעלה] בקובץ; במקום זאת, זה כתוב כהערה.

בקובץ ההגדרות, נווטו לסעיף סוגי ההפעלה. תמצאו מספר רב של סוגי הפעלה נתמכים ואת הפרמטרים שלהם מפורטים:

Output
... ; ; Session types ; ; Some session types such as Xorg, X11rdp, and Xvnc start a display server. ; Startup command-line parameters for the display server are configured ; in sesman.ini. See and configure also sesman.ini. [Xorg] name=Xorg lib=libxup.so username=ask password=ask ip=127.0.0.1 port=-1 code=20 [Xvnc] name=Xvnc lib=libvnc.so username=ask password=ask ip=127.0.0.1 port=-1 #xserverbpp=24 #delay_ms=2000 [vnc-any] ... [neutrinordp-any] ... ...

באופן ברירת מחדל, הפרמטרים של username ו־password מוגדרים ל־ask, שזה אומר שהמשתמש יתבקש להזין את שם המשתמש והסיסמה שלו כדי להתחבר דרך RDP. ניתן לשנות פרמטרים כמו name, username, ו־password אם נדרש. לחיבור הראשוני לשרת דרך RDP, התצורה ברירת המחדל תהיה מספיקה.

שמור וסגור את הקובץ כשתסיים.

עכשיו המשיכו לתיקיית הבית של המשתמש שלכם אם אתם עדיין לא שם:

  1. cd ~

לאחר מכן, תיצורו קובץ בשם .xsession תחת /home/sammy והוסיפו את xfce4-session כמנהל ההפעלה לשימוש בכניסה:

  1. echo "xfce4-session" | tee .xsession

tee יכתוב את המחרוזת שמופיעה ב־"xfce4-session" לקובץ .xsession. התצורה לעיל מבטיחה ש־xfce4-session ישמש כמנהל הפעלה בקשיית הכניסה הגרפית. כתוצאה מהתקנת xfce כסביבת העבודה שלך, xfce4-session משמש כמנהל הפעלה שלה. אם אינך כולל את המידע הזה בקובץ .xsession, לא ייבחר מנהל פעלה, והקפיצה דרך RDP תיכשל להתחבר לתצוגה גרפית.

אתחל את שרת ה־xrdp:

  1. sudo systemctl restart xrdp

לאחר מכן, תגדירו את הגנת האש שלכם כך שתאפשר חיבורים מרחוק מה-IP הציבורי שלכם בפורט 3389. חיבור RDP פועל על פורט TCP/IP 3389. כדי לגשת לשרת מרחוק דרך RDP, עליך לאפשר את הפורט 3389 בגנת האש שלך.

תחילה, מצא את כתובת ה-IP הציבורית של המכונה המקומית שלך:

  1. curl ifconfig.me

שים לב שאני מתעסק בתרגום בלבד:

על Windows, השתמש ב- Windows Command Prompt כדי להריץ את הפקודה הזו.

curl שולח בקשה ל- ifconfig.me שמחזירה את כתובת ה-IP הציבורית שלך כפלט:

Output
... your_local_ip

לאחר מכן, הרשה גישה ליציאת ה-RDP 3389 בשרת המרוחק שלך, החליף את your_local_ip בפלט של הפקודה האחרונה:

  1. sudo ufw allow from your_local_ip/32 to any port 3389

וודא את מצב הגישה של הקיר האש שלך UFW:

  1. sudo ufw status

הפלט צריך להיראות כמו הבא:

Output
Status: Active To Action From -- ------ ---- OpenSSH ALLOW Anywhere 3389 ALLOW your_local_ip OpenSSH (v6) ALLOW Anywhere (v6) ...

עכשיו הפעלת יציאה 3389 כדי לקבל חיבורים מכתובת ה-IP הציבורית שלך. בשלב הבא, תבדוק את חיבור ה-RDP מהמחשב המקומי שלך לשרת המרוחק.

שלב 4 — בדיקת חיבור ה-RDP

בשלב זה, תבדוק את חיבור ה-RDP מהמחשב המקומי שלך. הסעיפים למטה כוללים פעולות לבדיקת החיבור במכשירים העובדים על Windows, macOS, ו-Linux.

בדיקת חיבור ה-RDP ב-Windows

כדי לבדוק את החיבור באמצעות לקוח Remote Desktop Connection ב- Windows, הפעל תחילה את אפליקציית Remote Desktop Connection.

הזן את כתובת ה-IP הציבורית של שרת המרחוק שלך ושם המשתמש שלך בתיבות הטקסט המתאימות עבור מחשב ו־שם המשתמש. עשוי להיות עליך ללחוץ על החץ למטה עבור הצג אפשרויות כדי להזין את שם המשתמש:

לחץ על הכפתור התחבר. אם תקבל התראה שאין אפשרות להתחבר לשרת המרחוק של השולחן הרחוק, בדוק שהפעלת את אפשרות שולחן הרחוק בהגדרות המערכת שלך.

לחץ על כן אם תקבל את חלון האימות של הזהות:

לאחר מכן, הזן את שם המשתמש של שרת המרחוק שלך (sammy) והסיסמה שיצרת עבור המשתמש sammy במהלך ההתקנה הראשונית של השרת. לחץ על אישור.

כאשר תתחבר, אתה צריך להסתכל על סביבת העבודה של Ubuntu שלך:

באמצעות RDP, תוכל להתחבר בהצלחה לשרת Ubuntu המרוחק שלך מהמחשב המקומי שלך. תוכל לסגור אותו באמצעות כפתור היציאה כאשר תסיים להשתמש בשולחן העבודה הגרפי שלך.

בדיקת החיבור RDP על macOS

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

לחץ על הוסף מחשב אישי, ואז הזן את כתובת ה־IP הציבורית של שרת המרחוק שלך בתיבת הטקסט המתאימה:

תוכל להוסיף חשבון משתמש בעת הגדרת החיבור:

אם אינך מוסיף משתמש במהלך ההגדרה, יתבקש ממך לספק את פרטי ההתחברות שלך:

לחץ על כן כדי לעבור את חלון אימות הזהות:

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

בדיקת חיבור RDP ב-Linux

תצטרך להשתמש בלקוח RDP כדי לבדוק את חיבור ה-RDP במכשיר Linux מקומי. תחילה, התקן את לקוח ה-RDP remmina עבור Ubuntu:

  1. sudo apt install remmina

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

לאחר ההתקנה, הפעל את היישום remmina על המכשיר הלינוקסי המקומי שלך והזן את כתובת ה-IP הציבורית של השרת המרוחק בתיבת המילוי. לחץ על Enter במקלדת כדי להתחבר לשולחן העבודה המרוחק שלך.

לאחר מכן, הזן את שם המשתמש של השרת המרוחק (למדריך זה, השם משתמש הוא sammy) והסיסמה שיצרת למשתמש במהלך ההגדרה הראשונית של השרת. לחץ על Ok.

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

לאחר שנכנסת, יהיה באפשרותך לגשת לסביבת שולחן העבודה אובונטו שלך.

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

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

מסקנה

במאמר זה, קונפגת xrdp להתחברות לשולחן עבודה גרפי עבור שרת האובונטו המרחוק שלך דרך חיבור RDP ממכונה מקומית.

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

Source:
https://www.digitalocean.com/community/tutorials/how-to-enable-remote-desktop-protocol-using-xrdp-on-ubuntu-22-04