בשרתים מקומיים

אחסנו רשת HopToDesk משלכם בשרתים מקומיים או בענן.

הקימו רשת משלכם

הקימו רשת HopToDesk משלכם על שרת Linux או Windows של 64 ביט.

הדרך המהירה ביותר: בלוח הבקרה פתחו הגדרות, Network Settings, Set up a private network. תקבלו קישור הפעלה מוכן ל-AWS או פקודת Docker, והשרת החדש ידווח ללוח הבקרה שלכם בעצמו. פתיחת לוח הבקרה

מערכת הפעלה:
Linux
LinuxWindows
תצורה זו מאפשרת למכשירים ברשת המקומית שלכם להתחבר ישירות, תוך שימוש בשרתי הממסר המוגדרים כברירת מחדל של HopToDesk לחיבורים חיצוניים.
הגדירו שרת TURN משלכם לשליטה מלאה בחיבורי הממסר. כל השדות נדרשים.

מדריך התקנה

אחסון עצמי של HopToDesk

מדריך הגדרה שלב אחר שלב

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

איך זה עובד

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

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

המתקין בדף הזה מקים את שרת האיתות. תעבורת הממסר עוברת כברירת מחדל דרך הממסר של HopToDesk, או דרך שרת ה-TURN שלכם אם תספקו אחד.

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

צריכים גם את לוח הבקרה על השרתים שלכם? דברו איתנו

לפני שמתחילים

  • שרת Linux של 64 ביט עם systemd, כמו Ubuntu או Debian, או שרת Windows.
  • גישת root או sudo לשרת הזה.
  • כתובת IP או שם מארח שכל המכשירים שלכם יכולים להגיע אליו. לרשת שלעולם לא יוצאת מה-LAN שלכם, כתובת פרטית מספיקה.
  • פורט TCP 80 פתוח בחומת האש של השרת עבור המכשירים שלכם.
  • אם אתם רוצים ממסר משלכם: המארח, הפורט, שם המשתמש והסיסמה של שרת ה-TURN שלכם.

שלב 1: התקנת שרת האיתות ב-Linux

  1. התחברו לשרת כ-root, או כמשתמש עם הרשאות sudo.
  2. בראש הדף הזה, בחרו LAN + Default Relay או Custom TURN Server. פקודת ההתקנה משתנה לפי הבחירה שלכם.
  3. לחצו על Copy, הדביקו את הפקודה בטרמינל ולחצו Enter.
  4. המתינו עד שהסקריפט יסתיים. זה לוקח פחות מדקה.
  5. בסוף הסקריפט מדפיס HopSignal Setup Complete, ואחריו כתובת השרת שלכם ובלוק הגדרות רשת מוכן לשימוש. שמרו את הפלט הזה, תצטרכו אותו בשלב 3.
curl -o hsinstall.sh -sL https://www.hoptodesk.com/hs/hsinstall && sudo sh hsinstall.sh

עם שרת TURN משלכם, הוסיפו את ארבעת הערכים שלו לסוף הפקודה בסדר הזה: מארח, פורט, שם משתמש, סיסמה.

sudo sh hsinstall.sh turn.example.com 443 myuser mypassword

מה הסקריפט עושה

  • מוריד את שרת האיתות המתאים למעבד שלכם, Intel, AMD או ARM, לתיקייה /home/hopsignal.
  • בודק את ההורדה מול רשימת SHA256SUMS שפורסמה ועוצר ללא שינויים אם אין התאמה.
  • יוצר שירות systemd בשם hopsignal ומפעיל אותו בכל אתחול.
  • מפעיל את השרת עם מגבלות החיבור המומלצות ועם סיסמת פדרציה אקראית, השמורה ב-/home/hopsignal/hopsignal.env עם גישה ל-root בלבד.
  • מוסיף שומר cron שמפעיל מחדש את השירות אם הוא מפסיק להגיב, ומסובב את יומן הרישום כשהוא עובר 100 MB.
  • פותח את פורט TCP 80 ב-ufw כאשר ufw פעיל.

שלב 1 ב-Windows: הפעלת שרת האיתות

  1. העבירו את מתג ה-OS בראש הדף הזה ל-Windows ולחצו על Download. תקבלו קובץ אחד בשם hopsignal.exe.
  2. צרו תיקייה כמו C:\hopsignal והעבירו אליה את hopsignal.exe.
  3. באותה תיקייה, צרו קובץ טקסט ריק בשם fedlist.txt.
  4. פתחו שורת פקודה כמנהל והפעילו את השרת.
cd C:\hopsignal
for /f %i in ('powershell -NoProfile -Command "[guid]::NewGuid().ToString('N')"') do @(setx /M FEDPWD %i >nul & set FEDPWD=%i)
hopsignal.exe --ADDR 0.0.0.0:80 --FEDLIST fedlist.txt --FEDADDR 127.0.0.1:82 --LOGFILE hs.log

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

אפשרו את הפורט בחומת האש של Windows:

netsh advfirewall firewall add rule name="HopSignal" dir=in action=allow protocol=TCP localport=80

כדי שהשרת ימשיך לרוץ אחרי אתחול, רשמו אותו כמשימה מתוזמנת שמתחילה באתחול תחת חשבון SYSTEM:

schtasks /Create /TN HopSignal /SC ONSTART /RU SYSTEM /TR "C:\hopsignal\hopsignal.exe --ADDR 0.0.0.0:80 --FEDLIST C:\hopsignal\fedlist.txt --FEDADDR 127.0.0.1:82 --LOGFILE C:\hopsignal\hs.log"
schtasks /Run /TN HopSignal

שלב 1 עם Docker: הפעלת שרת האיתות בקונטיינר

התמונה hoptodesk/hopsignal מריצה את אותו שרת איתות על מארחי Intel, AMD ו-ARM. הפעילו אותה עם המגבלות המומלצות:

docker run -d --name hopsignal --restart unless-stopped -p 80:80 \
  -e HS_MAX_MESSAGE_KB=64 -e HS_QUEUE_LIMIT=256 -e HS_MAX_CONNS=20000 \
  -e HS_CONNS_PER_IP=100 -e HS_LOOKUPS_PER_IP=20 \
  -e HS_IDLE_TIMEOUT=300 -e HS_UPGRADE_TIMEOUT=10 \
  hoptodesk/hopsignal

כל ערך HS_ מפעיל מגבלה אחת: גודל הודעה ב-KB, הודעות בתור לכל חיבור, חיבורים פתוחים, חיבורים חדשים וחיפושים לכל כתובת בשנייה, שניות חוסר פעילות ושניות ללחיצת היד. אם משמיטים ערך, המגבלה הזו נשארת כבויה.

כדי לקשר את הקונטיינר לחשבון לוח הבקרה שלכם אוטומטית, השתמשו בפקודת Docker מתוך Set up a private network בלוח הבקרה. היא מוסיפה HS_SETUP_TOKEN ו-HS_DASHBOARD_URL, והשרת מדווח על כתובתו פעם אחת, בהפעלה הראשונה.

שלב 2: בדיקה שהשרת פועל

ב-Linux, בדקו את השירות ואת היומן:

sudo systemctl status hopsignal
tail /home/hopsignal/hs.log

ב-Windows, ודאו שהפורט מאזין:

netstat -an | find ":80 "

עם Docker, בדקו את הקונטיינר ואת היומן שלו:

docker ps --filter name=hopsignal
docker logs hopsignal

מכל מחשב, בדקו את פורט ה-WebSocket. החליפו את SERVER_IP בכתובת השרת שלכם. שרת תקין עונה HTTP/1.1 101 Switching Protocols.

curl -i -N -m 5 -H "Connection: Upgrade" -H "Upgrade: websocket" -H "Sec-WebSocket-Version: 13" -H "Sec-WebSocket-Key: SGVsbG8sIHdvcmxkIQ==" http://SERVER_IP:80/

שלב 3: הפניית המכשירים שלכם לשרת

כל מכשיר קורא את הגדרות הרשת שלו ממסמך JSON קטן. זהו הבלוק שהמתקין הדפיס בסוף שלב 1. החליפו את SERVER_IP בכתובת השרת שלכם, ומלאו את בלוק ה-TURN אם אתם מפעילים ממסר משלכם.

{
  "turnservers": [
    {
      "protocol": "turn",
      "host": "turn.hoptodesk.com",
      "port": "443",
      "username": "hoptodesk",
      "password": "hoptodesk1234"
    }
  ],
  "rendezvous": {
    "host": "SERVER_IP",
    "port": "80"
  },
  "winversion": "1.0.0",
  "macversion": "1.0.0",
  "linuxversion": "1.0.0",
  "none": "none"
}

בלוק rendezvous הוא שרת האיתות שלכם. השתמשו במפתח rendezvousssl במקום rendezvous כשמגיעים לשרת דרך TLS, למשל Cloudflare Worker. רשימת turnservers מכילה ממסר אחד או יותר. הגדירו את הפרוטוקול ל-turn לחיבור רגיל או ל-turn-tls לחיבור TLS. השאירו את מפתחות הגרסה כפי שהם.

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

יש שלוש דרכים למסור את המסמך הזה למכשירים שלכם. בחרו את זו שמתאימה להגדרה שלכם.

אפשרות A: הניחו קובץ api.json על כל מכשיר

שמרו את המסמך כקובץ בשם api.json בתיקיית התצורה של HopToDesk, ואז הפעילו מחדש את HopToDesk. האפליקציה קוראת את הקובץ בהפעלה ואינה פונה יותר ל-API של HopToDesk.

פלטפורמהנתיב
Windows, כל המשתמשים והשירות (דורש הרשאות מנהל)C:\ProgramData\HopToDesk\config\api.json
Windows, המשתמש הנוכחי בלבד%APPDATA%\HopToDesk\config\api.json
macOS~/Library/Preferences/com.hoptodesk.HopToDesk/api.json
Linux~/.config/hoptodesk/api.json

ב-Linux, שימו עותק נוסף ב-/root/.config/hoptodesk. האפליקציה משתמשת בעותק הזה במסך הכניסה, לפני שמשתמש מתחבר.

אפשרות B: אחסנו את הקובץ בכתובת URL ובחרו אותה באפליקציה

  1. העלו את api.json לכל שרת אינטרנט שהמכשירים שלכם יכולים להגיע אליו. מומלץ HTTPS.
  2. ב-HopToDesk, לחצו על סמל גלגל השיניים כדי לפתוח את ההגדרות.
  3. תחת Network, לחצו על Choose Network.
  4. בחרו Custom Network Settings, הדביקו את כתובת ה-URL של הקובץ שלכם ואשרו.
  5. HopToDesk מוריד את הקובץ, בודק שהוא מכיל רשומת rendezvous תקינה ורשימת turnservers, ואז מתחבר מחדש דרך השרת שלכם.

כדי לחזור לרשת הציבורית, פתחו שוב את Choose Network ובחרו HopToDesk Network (Default).

ב-Android וב-iOS, פתחו את ההגדרות, כבו את Use HopToDesk Network באזור הרשת, ואז הזינו את כתובת ה-URL של הקובץ שלכם. טלפונים שמנוהלים דרך EMM יכולים לקבל את אותה כתובת URL בהגדרה המנוהלת custom_api_url.

אפשרות C: דחפו את ההגדרות מלוח הבקרה

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

שרת חדש: בלוח הבקרה פתחו הגדרות, Network Settings, Set up a private network. בחרו In my AWS account או On my own server. השרת מדווח על כתובתו בעת ההפעלה, וכל מכשיר מקושר מקבל את ההגדרות. אין מה להקליד.

שרת שכבר פועל אצלכם: הזינו את ההגדרות שלו ידנית.

  1. היכנסו ללוח הבקרה כבעלים או כמנהל ופתחו את ההגדרות.
  2. תחת Network Settings, בחרו Custom Network.
  3. הזינו את המארח של שרת האיתות, את הפורט שלו ו-WS כפרוטוקול. הוסיפו שרת TURN אם אתם מפעילים ממסר משלכם, או השאירו ריק כדי להישאר עם הממסר של HopToDesk.
  4. לחצו על Save Network Settings. כל מכשיר מקושר מקבל את ההגדרות החדשות ומחיל אותן ללא התקנה מחדש.

הפעלת ממסר TURN משלכם (אופציונלי)

הפעלות שאינן יכולות להתחבר ישירות עוברות כברירת מחדל דרך הממסר של HopToDesk. כדי לשמור את כל התעבורה בתשתית שלכם, הפעילו שרת TURN. כל שרת TURN סטנדרטי עובד, ו-coturn הוא בחירה נפוצה ב-Linux.

  1. התקינו coturn על שרת הממסר.
sudo apt install coturn
  1. ערכו את /etc/turnserver.conf והגדירו לפחות את הערכים שלהלן. החליפו את ה-realm, פרטי הגישה וכתובת ה-IP הציבורית בערכים שלכם.
listening-port=443
fingerprint
lt-cred-mech
user=myuser:mypassword
realm=example.com
external-ip=PUBLIC_IP
  1. אם /etc/default/coturn מכיל שורת TURNSERVER_ENABLED, הסירו ממנה את ההערה. לאחר מכן הפעילו את השירות והתחילו אותו.
sudo systemctl enable --now coturn
sudo systemctl restart coturn
  1. פתחו בחומת האש של הממסר את פורט ההאזנה ל-TCP ול-UDP, וכן את טווח ממסר ה-UDP 49152 עד 65535.
  2. מסרו את הממסר למכשירים שלכם: הריצו שוב את המתקין עם ארבעת ערכי ה-TURN, או ערכו את בלוק turnservers בהגדרות הרשת. השתמשו ב-turn-tls כפרוטוקול אם הממסר שלכם מסיים TLS.

ניהול השרת ב-Linux

sudo systemctl status hopsignal
sudo systemctl restart hopsignal
sudo systemctl stop hopsignal
tail -f /home/hopsignal/hs.log

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

להסרת השרת יחד עם השירות ורשומות ה-cron שלו:

curl -o hsinstall.sh -sL https://www.hoptodesk.com/hs/hsinstall && sudo sh hsinstall.sh remove

פתרון בעיות

  • המזהה נשאר על Generating, או שהאפליקציה ממשיכה לנסות להתחבר לרשת: המכשיר אינו מגיע לשרת האיתות. בדקו שהשירות פועל, שפורט 80 פתוח ושהכתובת בהגדרות הרשת שלכם נכונה.
  • המכשירים מתחברים ב-LAN אבל לא מבחוץ: הממסר אינו נגיש. עם ממסר ברירת המחדל, המכשירים צריכים גישה יוצאת אל turn.hoptodesk.com בפורט 443. עם ממסר משלכם, בדקו את כללי חומת האש ואת פרטי הגישה שלו.
  • האפליקציה מתעלמת מ-api.json: ודאו שהקובץ הוא JSON תקין ללא פסיקים בסוף, שהוא נמצא בתיקייה הנכונה ושהפעלתם מחדש את HopToDesk. יומן האפליקציה מכיל את השורה Loaded local api.json כשהקובץ נקלט.
  • פורט 82 הוא פורט הפדרציה לקישור כמה שרתי איתות משלכם. השאירו אותו סגור לאינטרנט.
  • שרת האיתות אינו שומר נתוני הפעלה. אם משהו נראה תקוע, הפעילו מחדש את השירות. המכשירים מתחברים מחדש בעצמם תוך כדקה.

אחסון אצל צד שלישי

מעדיפים פלטפורמה מנוהלת? פרסו את רשת HopToDesk שלכם ב-Cloudflare או ב-AWS.

HopToDesk על Cloudflare

  1. היכנסו לחשבון Cloudflare שלכם ועברו לאזור הדומיין שברצונכם להשתמש בו.
  2. צרו worker חדש עם שם הקובץ index.js.
  3. העתיקו את קוד ה-worker אל index.js, ואז שמרו ופרסו את ה-worker. קוד worker
  4. בהגדרות ה-worker, הוסיפו קישור Durable Object בשם group עבור המחלקה SessionGroup.
  5. כתובת ה-URL של ה-Cloudflare Worker שלכם מוכנה. השתמשו בה כערך "rendezvousssl". api.json API מותאם

HopToDesk על AWS

  1. הירשמו ל-HopToDesk Private Network ב-AWS Marketplace. הרישום חינמי; AWS מחייבת רק על השרת. AWS Marketplace
  2. מחוברים ללוח הבקרה? פתחו הגדרות, Network Settings, Set up a private network ובחרו In my AWS account. קישור ההפעלה כבר מכיל את ההגדרות, השרת מדווח ללוח הבקרה שלכם בעצמו, ואפשר לדלג על השלבים הבאים.
  3. בחרו Launch with CloudFormation. טופס אחד יוצר את השרת, את הכתובת הקבועה שלו ואת כללי חומת האש שלו באזור שתבחרו.
  4. כשה-stack מוכן, פתחו את הלשונית Outputs. היא מציגה את קובץ api.json עבור האפליקציות שלכם.
  5. שמרו את api.json הזה בכל מחשב, או שלחו אותו לכל המכשירים מהגדרות הרשת בלוח הבקרה. api.json

הערה: ה-worker משתמש ב-Durable Objects. העלות שלהם תלויה בתוכנית Cloudflare שלכם ובשימוש. מחירי Durable Objects

AWS Marketplace והלוגו של AWS Marketplace הם סימנים מסחריים של Amazon.com, Inc. או של חברות הבת שלה.
Cloudflare, הלוגו של Cloudflare ו-Cloudflare Workers הם סימנים מסחריים ו/או סימנים מסחריים רשומים של Cloudflare, Inc. בארצות הברית ובתחומי שיפוט נוספים.

מתכננים פריסה באחסון עצמי? בקשת הצעת מחיר