On-premises

Host uw eigen HopToDesk-netwerk on-premises of in de cloud.

Zet uw eigen netwerk op

Zet uw eigen HopToDesk-netwerk op. Compatibel met Ubuntu 18 - 24 en Windows.

Besturingssysteem:
Linux
LinuxWindows
Met deze configuratie maken apparaten in uw LAN rechtstreeks verbinding, terwijl voor externe verbindingen de standaardrelayservers van HopToDesk worden gebruikt.
Configureer uw eigen TURN-server voor volledige controle over relayverbindingen. Alle velden zijn verplicht.

Installatiehandleiding

HopToDesk zelf hosten

Stapsgewijze installatiehandleiding

Wat het installatieprogramma doet, hoe u het controleert en hoe u uw apparaten met uw eigen netwerk verbindt.

Zo werkt het

HopToDesk gebruikt twee soorten servers. De signaalserver helpt apparaten elkaar te vinden en een sessie op te zetten. De TURN-relay draagt het sessieverkeer alleen als een directe verbinding tussen de twee apparaten niet mogelijk is.

Sessies zijn end-to-end versleuteld, dus geen van beide servers kan uw scherm, bestanden of chat lezen. De signaalserver ziet alleen apparaat-ID's en verbindingsverzoeken.

Het installatieprogramma op deze pagina zet de signaalserver op. Relayverkeer loopt standaard via de HopToDesk-relay, of via uw eigen TURN-server als u er een opgeeft.

Het dashboard blijft een gehoste dienst. Apparaten op een zelfgehost netwerk kunnen er nog steeds aan worden gekoppeld voor beheer, en het dashboard kan de netwerkinstellingen naar ze sturen.

Voordat u begint

  • Een server met Ubuntu 18.04 tot 24.04, of een Windows-server.
  • Root- of sudo-toegang op die server.
  • Een IP-adres of hostnaam die al uw apparaten kunnen bereiken. Voor een netwerk dat uw LAN nooit verlaat, is een privéadres genoeg.
  • TCP-poort 80 open op de firewall van de server voor uw apparaten.
  • Als u een eigen relay wilt: de host, poort, gebruikersnaam en het wachtwoord van uw TURN-server.

Stap 1: De signaalserver installeren op Linux

  1. Meld u op de server aan als root, of als gebruiker met sudo-rechten.
  2. Kies bovenaan deze pagina LAN + Default Relay of Custom TURN Server. Het installatiecommando verandert met uw keuze.
  3. Klik op Copy, plak het commando in de terminal en druk op Enter.
  4. Wacht tot het script klaar is. Op een nieuwe server kan het installeren van de pakketten enkele minuten duren.
  5. Aan het einde toont het script HopSignal Setup Complete, gevolgd door uw serveradres en een kant-en-klaar blok met netwerkinstellingen. Bewaar die uitvoer, u hebt hem nodig in stap 3.
cd /home && curl -o hsinstall.sh -sL https://www.hoptodesk.com/hs/hsinstall && sh hsinstall.sh

Met uw eigen TURN-server voegt u de vier waarden in deze volgorde toe aan het einde van het commando: host, poort, gebruikersnaam, wachtwoord.

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

Wat het script doet

  • Installeert met apt de benodigde buildtools en OpenSSL-bibliotheken.
  • Downloadt het binaire bestand van de signaalserver naar de map /home/hopsignal.
  • Maakt een systemd-service met de naam hopsignal aan en start die bij elke opstart.
  • Voegt een cron-watchdog toe die de service herstart als hij niet meer reageert, en het logbestand roteert zodra het groter wordt dan 100 MB.
  • Opent TCP-poort 80 in ufw wanneer ufw actief is.

Stap 1 op Windows: De signaalserver starten

  1. Zet de OS-schakelaar bovenaan deze pagina op Windows en klik op Download. U krijgt één bestand met de naam hopsignal.exe.
  2. Maak een map zoals C:\hopsignal en verplaats hopsignal.exe daarnaartoe.
  3. Maak in dezelfde map een leeg tekstbestand met de naam fedlist.txt.
  4. De Windows-versie verwacht ook een TLS-certificaat en de bijbehorende privésleutel in PEM-formaat. Elk paar werkt, ook een zelfondertekend. Sla ze op als cert.pem en key.pem in dezelfde map.
  5. Open een opdrachtprompt als administrator en start de server.
cd C:\hopsignal
hopsignal.exe --ADDR 0.0.0.0:80 --WSS_ADDR 0.0.0.0:443 --CERT cert.pem --KEY key.pem --FEDLIST fedlist.txt --FEDADDR 127.0.0.1:82 --FEDPWD 123456789 --LOGFILE hs.log

Als u OpenSSL hebt, maakt dit commando een zelfondertekend certificaatpaar:

openssl req -x509 -newkey rsa:2048 -nodes -keyout key.pem -out cert.pem -days 3650 -subj "/CN=hopsignal"

Sta de poort toe in Windows Firewall:

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

Om de server na een herstart te laten doordraaien, registreert u hem als geplande taak die bij het opstarten start onder het SYSTEM-account:

schtasks /Create /TN HopSignal /SC ONSTART /RU SYSTEM /TR "C:\hopsignal\hopsignal.exe --ADDR 0.0.0.0:80 --WSS_ADDR 0.0.0.0:443 --CERT C:\hopsignal\cert.pem --KEY C:\hopsignal\key.pem --FEDLIST C:\hopsignal\fedlist.txt --FEDADDR 127.0.0.1:82 --FEDPWD 123456789 --LOGFILE C:\hopsignal\hs.log"
schtasks /Run /TN HopSignal

Stap 2: Controleren of de server draait

Controleer op Linux de service en het logbestand:

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

Controleer op Windows of de poort luistert:

netstat -an | find ":80 "

Test vanaf een willekeurige computer de WebSocket-poort. Vervang SERVER_IP door uw serveradres. Een gezonde server antwoordt met 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/

Stap 3: Uw apparaten naar de server verwijzen

Elk apparaat leest zijn netwerkinstellingen uit een klein JSON-document. Dit is het blok dat het installatieprogramma aan het einde van stap 1 toonde. Vervang SERVER_IP door uw serveradres en vul het TURN-blok in als u een eigen relay draait.

{
  "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"
}

Het blok rendezvous is uw signaalserver. Gebruik de sleutel rendezvousssl in plaats van rendezvous wanneer de server via TLS wordt bereikt, bijvoorbeeld een Cloudflare Worker of een AWS-implementatie. De lijst turnservers bevat een of meer relays. Zet het protocol op turn voor een gewone verbinding of op turn-tls voor een TLS-verbinding. Laat de versiesleutels zoals ze zijn.

Er zijn drie manieren om dit document bij uw apparaten te krijgen. Kies de manier die bij uw situatie past.

Optie A: Zet een api.json-bestand op elk apparaat

Sla het document op als een bestand met de naam api.json in de configuratiemap van HopToDesk en herstart HopToDesk. De app leest het bestand bij het opstarten en neemt geen contact meer op met de HopToDesk-API.

PlatformPad
Windows, alle gebruikers en de serviceC:\ProgramData\HopToDesk\config\api.json
Windows, alleen de huidige gebruiker%APPDATA%\HopToDesk\config\api.json
macOS~/Library/Preferences/com.hoptodesk.HopToDesk/api.json
Linux~/.config/hoptodesk/api.json

Op Linux draait de achtergrondservice als root en leest hij het bestand onder /root, terwijl de app die u opent het bestand in uw eigen thuismap leest. Zet op beide plekken een kopie.

Optie B: Host het bestand op een URL en selecteer die in de app

  1. Upload api.json naar een webserver die uw apparaten kunnen bereiken. HTTPS wordt aanbevolen.
  2. Klik in HopToDesk op het tandwielpictogram om de instellingen te openen.
  3. Klik onder Network op Choose Network.
  4. Selecteer Custom Network Settings, plak de URL van uw bestand en bevestig.
  5. HopToDesk downloadt het bestand, controleert of het een geldige rendezvous-vermelding en een turnservers-lijst bevat, en maakt daarna opnieuw verbinding via uw server.

Om terug te keren naar het openbare netwerk, opent u Choose Network opnieuw en selecteert u HopToDesk Network.

Optie C: Stuur de instellingen vanuit het dashboard

Als uw apparaten aan het HopToDesk-dashboard zijn gekoppeld, kunt u het netwerk één keer voor het hele account instellen. Een aangepaste client die vanuit het dashboard is gebouwd, heeft deze instellingen al ingebouwd.

  1. Meld u aan bij het dashboard als eigenaar of beheerder en open de instellingen.
  2. Selecteer onder Network Settings de optie Custom Network.
  3. Voer de host van de signaalserver in, de poort en WS als protocol. Voeg een TURN-server toe als u een eigen relay draait, of laat het leeg om de HopToDesk-relay te behouden.
  4. Klik op Save Network Settings. Elk gekoppeld apparaat ontvangt de nieuwe instellingen en past ze toe zonder herinstallatie.

Uw eigen TURN-relay draaien (optioneel)

Sessies die geen directe verbinding kunnen maken, lopen standaard via de HopToDesk-relay. Om al het verkeer op uw eigen infrastructuur te houden, draait u een TURN-server. Elke standaard TURN-server werkt, en coturn is een gangbare keuze op Linux.

  1. Installeer coturn op de relayserver.
sudo apt install coturn
  1. Bewerk /etc/turnserver.conf en stel minimaal de onderstaande waarden in. Vervang de realm, de inloggegevens en het publieke IP door uw eigen gegevens.
listening-port=443
fingerprint
lt-cred-mech
user=myuser:mypassword
realm=example.com
external-ip=PUBLIC_IP
  1. Als /etc/default/coturn een regel TURNSERVER_ENABLED bevat, haal dan het commentaarteken weg. Schakel daarna de service in en start hem.
sudo systemctl enable --now coturn
sudo systemctl restart coturn
  1. Open op de firewall van de relay de luisterpoort voor TCP en UDP, plus het UDP-relaybereik 49152 tot 65535.
  2. Geef de relay door aan uw apparaten: voer het installatieprogramma opnieuw uit met de vier TURN-waarden, of bewerk het blok turnservers in uw netwerkinstellingen. Gebruik turn-tls als protocol als uw relay TLS afhandelt.

De server beheren op Linux

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

Om de server bij te werken, stopt u de service en voert u het installatiecommando opnieuw uit. Het downloadt het actuele binaire bestand en schrijft de service opnieuw.

Om de server samen met de service en de cron-regels te verwijderen:

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

Problemen oplossen

  • Het ID blijft op Generating staan, of de app blijft verbinding met het netwerk zoeken: het apparaat kan de signaalserver niet bereiken. Controleer of de service draait, of poort 80 open is en of het adres in uw netwerkinstellingen klopt.
  • Apparaten verbinden wel op het LAN maar niet van buitenaf: de relay is niet bereikbaar. Met de standaardrelay hebben apparaten uitgaande toegang nodig tot turn.hoptodesk.com op poort 443. Met uw eigen relay controleert u de firewallregels en de inloggegevens.
  • De app negeert api.json: controleer of het bestand geldige JSON is zonder afsluitende komma's, of het in de juiste map staat en of u HopToDesk hebt herstart. Het app-logbestand bevat de regel Loaded local api.json wanneer het bestand is ingelezen.
  • Poort 82 is de federatiepoort om meerdere eigen signaalservers te koppelen. Houd hem gesloten voor internet.
  • De signaalserver slaat geen sessiegegevens op. Als iets vast lijkt te zitten, herstart dan de service. Apparaten maken binnen ongeveer een minuut vanzelf opnieuw verbinding.

Hosting bij derden

Liever een beheerd platform? Implementeer uw HopToDesk-netwerk op Cloudflare of AWS.

HopToDesk op Cloudflare

  1. Log in op uw Cloudflare-account en ga naar de gewenste domeinzone.
  2. Maak een nieuwe worker met de bestandsnaam index.js.
  3. Kopieer de workercode naar index.js en sla de worker vervolgens op en implementeer hem. Workercode
  4. De URL van uw Cloudflare Worker is klaar. Gebruik deze als de waarde van "rendezvousssl". api.json Eigen API

HopToDesk op AWS

  1. Maak een AWS-account aan als u er nog geen heeft.
  2. Abonneer u op de HopToDesk-vermelding in de AWS Marketplace. AWS Marketplace
  3. Nadat Amazon de dienst heeft ingericht, configureert u deze indien nodig en start u de instantie.
  4. Uw HopToDesk-netwerk draait nu op AWS. Stel de https-URL in als de waarde van "rendezvousssl". api.json Eigen API

Let op: De worker vereist een betaald Cloudflare-abonnement vanaf $5 per maand, omdat hij Durable Objects gebruikt. Prijzen van Durable Objects

AWS Marketplace en het AWS Marketplace-logo zijn handelsmerken van Amazon.com, Inc. of haar dochterondernemingen.
Cloudflare, het Cloudflare-logo en Cloudflare Workers zijn handelsmerken en/of gedeponeerde handelsmerken van Cloudflare, Inc. in de Verenigde Staten en andere rechtsgebieden.