On-premises

Kör ditt eget HopToDesk-nätverk lokalt eller i molnet.

Skapa ditt eget nätverk

Skapa ditt eget HopToDesk-nätverk. Kompatibelt med Ubuntu 18 - 24 och Windows.

OS:
Linux
LinuxWindows
Den här konfigurationen låter enheter i ditt LAN ansluta direkt, samtidigt som HopToDesks standardreläservrar används för externa anslutningar.
Konfigurera din egen TURN-server för full kontroll över reläanslutningar. Alla fält är obligatoriska.

Installationsguide

Egen drift av HopToDesk

Steg-för-steg-guide för installation

Vad installationsprogrammet gör, hur du kontrollerar det och hur du ansluter dina enheter till ditt eget nätverk.

Så fungerar det

HopToDesk använder två slags servrar. Signalservern hjälper enheter att hitta varandra och sätta upp en session. TURN-reläet bär sessionstrafiken bara när en direkt anslutning mellan de två enheterna inte är möjlig.

Sessioner är krypterade från ände till ände, så ingen av servrarna kan läsa din skärm, dina filer eller din chatt. Signalservern ser bara enhets-ID:n och anslutningsförfrågningar.

Installationsprogrammet på den här sidan sätter upp signalservern. Relätrafik går som standard via HopToDesks relä, eller via din egen TURN-server om du anger en.

Panelen förblir en värdtjänst. Enheter i ett självhostat nätverk kan fortfarande länkas till den för hantering, och panelen kan skicka nätverksinställningarna till dem.

Innan du börjar

  • En server med Ubuntu 18.04 till 24.04, eller en Windows-server.
  • Root- eller sudo-åtkomst på den servern.
  • En IP-adress eller ett värdnamn som alla dina enheter kan nå. För ett nätverk som aldrig lämnar ditt LAN räcker en privat adress.
  • TCP-port 80 öppen i serverns brandvägg för dina enheter.
  • Om du vill ha ett eget relä: värd, port, användarnamn och lösenord för din TURN-server.

Steg 1: Installera signalservern på Linux

  1. Logga in på servern som root, eller som en användare med sudo-rättigheter.
  2. Välj LAN + Default Relay eller Custom TURN Server högst upp på den här sidan. Installationskommandot ändras med ditt val.
  3. Klicka på Copy, klistra in kommandot i terminalen och tryck på Enter.
  4. Vänta tills skriptet är klart. På en ny server kan paketinstallationen ta några minuter.
  5. I slutet skriver skriptet ut HopSignal Setup Complete, följt av din serveradress och ett färdigt block med nätverksinställningar. Spara den utskriften, du behöver den i steg 3.
cd /home && curl -o hsinstall.sh -sL https://www.hoptodesk.com/hs/hsinstall && sh hsinstall.sh

Med en egen TURN-server lägger du till dess fyra värden i slutet av kommandot i den här ordningen: värd, port, användarnamn, lösenord.

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

Vad skriptet gör

  • Installerar de byggverktyg och OpenSSL-bibliotek som behövs med apt.
  • Laddar ner signalserverns binärfil till mappen /home/hopsignal.
  • Skapar en systemd-tjänst med namnet hopsignal och startar den vid varje uppstart.
  • Lägger till en cron-vakthund som startar om tjänsten om den slutar svara, och roterar loggen när den växer förbi 100 MB.
  • Öppnar TCP-port 80 i ufw när ufw är aktivt.

Steg 1 på Windows: Kör signalservern

  1. Ställ OS-reglaget högst upp på den här sidan på Windows och klicka på Download. Du får en enda fil med namnet hopsignal.exe.
  2. Skapa en mapp som C:\hopsignal och flytta hopsignal.exe dit.
  3. Skapa en tom textfil med namnet fedlist.txt i samma mapp.
  4. Windows-versionen förväntar sig också ett TLS-certifikat och dess privata nyckel i PEM-format. Vilket par som helst fungerar, även ett självsignerat. Spara dem som cert.pem och key.pem i samma mapp.
  5. Öppna en kommandotolk som administratör och starta servern.
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

Om du har OpenSSL skapar det här kommandot ett självsignerat certifikatpar:

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

Tillåt porten i Windows-brandväggen:

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

För att servern ska fortsätta köras efter en omstart registrerar du den som en schemalagd uppgift som startar vid uppstart under SYSTEM-kontot:

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

Steg 2: Kontrollera att servern körs

På Linux, kontrollera tjänsten och loggen:

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

På Windows, bekräfta att porten lyssnar:

netstat -an | find ":80 "

Testa WebSocket-porten från valfri dator. Ersätt SERVER_IP med din serveradress. En frisk server svarar 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/

Steg 3: Peka dina enheter mot servern

Varje enhet läser sina nätverksinställningar från ett litet JSON-dokument. Det är blocket som installationsprogrammet skrev ut i slutet av steg 1. Ersätt SERVER_IP med din serveradress och fyll i TURN-blocket om du kör ett eget relä.

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

Blocket rendezvous är din signalserver. Använd nyckeln rendezvousssl i stället för rendezvous när servern nås via TLS, till exempel en Cloudflare Worker eller en AWS-driftsättning. Listan turnservers innehåller ett eller flera reläer. Sätt protokollet till turn för en vanlig anslutning eller till turn-tls för en TLS-anslutning. Lämna versionsnycklarna som de är.

Det finns tre sätt att ge det här dokumentet till dina enheter. Välj det som passar din uppsättning.

Alternativ A: Lägg en api.json-fil på varje enhet

Spara dokumentet som en fil med namnet api.json i HopToDesks konfigurationsmapp och starta sedan om HopToDesk. Appen läser filen vid start och kontaktar inte längre HopToDesks API.

PlattformSökväg
Windows, alla användare och tjänstenC:\ProgramData\HopToDesk\config\api.json
Windows, endast aktuell användare%APPDATA%\HopToDesk\config\api.json
macOS~/Library/Preferences/com.hoptodesk.HopToDesk/api.json
Linux~/.config/hoptodesk/api.json

På Linux körs bakgrundstjänsten som root och läser filen under /root, medan appen du öppnar läser filen i din egen hemmapp. Lägg en kopia på båda ställena.

Alternativ B: Publicera filen på en URL och välj den i appen

  1. Ladda upp api.json till valfri webbserver som dina enheter kan nå. HTTPS rekommenderas.
  2. Klicka på kugghjulsikonen i HopToDesk för att öppna inställningarna.
  3. Under Network klickar du på Choose Network.
  4. Välj Custom Network Settings, klistra in URL:en till din fil och bekräfta.
  5. HopToDesk laddar ner filen, kontrollerar att den innehåller en giltig rendezvous-post och en turnservers-lista, och återansluter sedan via din server.

För att gå tillbaka till det publika nätverket öppnar du Choose Network igen och väljer HopToDesk Network.

Alternativ C: Skicka inställningarna från panelen

Om dina enheter är länkade till HopToDesk-panelen kan du ställa in nätverket en gång för hela kontot. En anpassad klient som byggts från panelen levereras med de här inställningarna inbyggda.

  1. Logga in i panelen som ägare eller administratör och öppna inställningarna.
  2. Under Network Settings väljer du Custom Network.
  3. Ange signalserverns värd, dess port och WS som protokoll. Lägg till en TURN-server om du kör ett eget relä, eller lämna tomt för att behålla HopToDesks relä.
  4. Klicka på Save Network Settings. Varje länkad enhet får de nya inställningarna och tillämpar dem utan ominstallation.

Kör ett eget TURN-relä (valfritt)

Sessioner som inte kan ansluta direkt går som standard via HopToDesks relä. För att hålla all trafik i din egen infrastruktur kör du en TURN-server. Vilken standard-TURN-server som helst fungerar, och coturn är ett vanligt val på Linux.

  1. Installera coturn på reläservern.
sudo apt install coturn
  1. Redigera /etc/turnserver.conf och ange minst värdena nedan. Ersätt realm, inloggningsuppgifter och publik IP med dina egna.
listening-port=443
fingerprint
lt-cred-mech
user=myuser:mypassword
realm=example.com
external-ip=PUBLIC_IP
  1. Om /etc/default/coturn innehåller en rad TURNSERVER_ENABLED, avkommentera den. Aktivera sedan tjänsten och starta den.
sudo systemctl enable --now coturn
sudo systemctl restart coturn
  1. Öppna lyssningsporten för TCP och UDP, plus UDP-reläintervallet 49152 till 65535, i reläets brandvägg.
  2. Ge reläet till dina enheter: kör installationsprogrammet igen med de fyra TURN-värdena, eller redigera blocket turnservers i dina nätverksinställningar. Använd turn-tls som protokoll om ditt relä terminerar TLS.

Hantera servern på Linux

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

För att uppdatera servern stoppar du tjänsten och kör installationskommandot igen. Det laddar ner den aktuella binärfilen och skriver om tjänsten.

För att ta bort servern tillsammans med dess tjänst och cron-poster:

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

Felsökning

  • ID:t står kvar på Generating, eller appen försöker hela tiden ansluta till nätverket: enheten når inte signalservern. Kontrollera att tjänsten körs, att port 80 är öppen och att adressen i dina nätverksinställningar stämmer.
  • Enheterna ansluter på LAN men inte utifrån: reläet går inte att nå. Med standardreläet behöver enheterna utgående åtkomst till turn.hoptodesk.com på port 443. Med ett eget relä kontrollerar du dess brandväggsregler och inloggningsuppgifter.
  • Appen ignorerar api.json: se till att filen är giltig JSON utan avslutande kommatecken, att den ligger i rätt mapp och att du har startat om HopToDesk. Appens logg innehåller raden Loaded local api.json när filen har lästs in.
  • Port 82 är federationsporten för att länka flera egna signalservrar. Håll den stängd mot internet.
  • Signalservern lagrar inga sessionsdata. Om något verkar ha fastnat, starta om tjänsten. Enheterna återansluter själva inom ungefär en minut.

Hosting hos tredjepart

Föredrar du en hanterad plattform? Distribuera ditt HopToDesk-nätverk på Cloudflare eller AWS.

HopToDesk på Cloudflare

  1. Logga in på ditt Cloudflare-konto och gå till den domänzon du vill använda.
  2. Skapa en ny worker med filnamnet index.js.
  3. Kopiera worker-koden till index.js, spara sedan och distribuera workern. Worker-kod
  4. Din Cloudflare Worker-URL är klar. Använd den som värdet för "rendezvousssl". api.json Eget API

HopToDesk på AWS

  1. Registrera ett AWS-konto om du inte redan har ett.
  2. Prenumerera på HopToDesk-listningen i AWS Marketplace. AWS Marketplace
  3. När Amazon har etablerat tjänsten konfigurerar du vid behov och startar instansen.
  4. Ditt HopToDesk-nätverk är nu distribuerat på AWS. Ange dess https-URL som värdet för "rendezvousssl". api.json Eget API

Obs: Workern kräver ett betalt Cloudflare-abonnemang från 5 $ i månaden, eftersom den använder Durable Objects. Priser för Durable Objects

AWS Marketplace och AWS Marketplace-logotypen är varumärken som tillhör Amazon.com, Inc. eller dess dotterbolag.
Cloudflare, Cloudflare-logotypen och Cloudflare Workers är varumärken och/eller registrerade varumärken som tillhör Cloudflare, Inc. i USA och andra jurisdiktioner.