No local
Hospede sua própria rede HopToDesk localmente ou na nuvem.
Configure sua própria rede
Configure sua própria rede HopToDesk. Compatível com Ubuntu 18 - 24 e Windows.
Tutorial de configuração
Guia de configuração passo a passo
O que o instalador faz, como verificá-lo e como conectar os seus dispositivos à sua própria rede.
Como funciona
O HopToDesk usa dois tipos de servidores. O servidor de sinalização ajuda os dispositivos a se encontrarem e a iniciar uma sessão. O relay TURN transporta o tráfego da sessão apenas quando uma conexão direta entre os dois dispositivos não é possível.
As sessões são criptografadas de ponta a ponta, então nenhum dos servidores consegue ler sua tela, seus arquivos ou seu chat. O servidor de sinalização vê apenas os IDs dos dispositivos e os pedidos de conexão.
O instalador desta página configura o servidor de sinalização. O tráfego de relay passa pelo relay da HopToDesk por padrão, ou pelo seu próprio servidor TURN se você informar um.
O painel continua sendo um serviço hospedado. Os dispositivos de uma rede auto-hospedada ainda podem ser vinculados a ele para gerenciamento, e o painel pode enviar as configurações de rede a eles.
Antes de começar
- Um servidor com Ubuntu 18.04 a 24.04, ou um servidor Windows.
- Acesso root ou sudo nesse servidor.
- Um endereço IP ou nome de host que todos os seus dispositivos consigam alcançar. Para uma rede que nunca sai da sua LAN, um endereço privado basta.
- Porta TCP 80 aberta no firewall do servidor para os seus dispositivos.
- Se quiser o seu próprio relay: host, porta, usuário e senha do seu servidor TURN.
Passo 1: Instalar o servidor de sinalização no Linux
- Faça login no servidor como root ou como um usuário com permissão sudo.
- No topo desta página, escolha LAN + Default Relay ou Custom TURN Server. O comando de instalação muda conforme a sua escolha.
- Clique em Copy, cole o comando no terminal e pressione Enter.
- Aguarde o script terminar. Em um servidor novo, a instalação dos pacotes pode levar alguns minutos.
- No final, o script imprime HopSignal Setup Complete, seguido do endereço do seu servidor e de um bloco de configurações de rede pronto para uso. Guarde essa saída, você vai precisar dela no passo 3.
cd /home && curl -o hsinstall.sh -sL https://www.hoptodesk.com/hs/hsinstall && sh hsinstall.sh
Com o seu próprio servidor TURN, acrescente os quatro valores dele ao final do comando nesta ordem: host, porta, usuário, senha.
sh hsinstall.sh turn.example.com 443 myuser mypassword
O que o script faz
- Instala com o apt as ferramentas de compilação e as bibliotecas OpenSSL necessárias.
- Baixa o binário do servidor de sinalização para a pasta /home/hopsignal.
- Cria um serviço systemd chamado hopsignal e o inicia a cada boot.
- Adiciona um watchdog no cron que reinicia o serviço se ele parar de responder e rotaciona o log quando ele passa de 100 MB.
- Abre a porta TCP 80 no ufw quando o ufw está ativo.
Passo 1 no Windows: Rodar o servidor de sinalização
- Mude o seletor OS no topo desta página para Windows e clique em Download. Você recebe um único arquivo chamado hopsignal.exe.
- Crie uma pasta como C:\hopsignal e mova hopsignal.exe para dentro dela.
- Na mesma pasta, crie um arquivo de texto vazio chamado fedlist.txt.
- A versão para Windows também exige um certificado TLS e a sua chave privada no formato PEM. Qualquer par funciona, inclusive um autoassinado. Salve-os como cert.pem e key.pem na mesma pasta.
- Abra um Prompt de Comando como administrador e inicie o servidor.
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
Se você tem OpenSSL, este comando cria um par de certificados autoassinados:
openssl req -x509 -newkey rsa:2048 -nodes -keyout key.pem -out cert.pem -days 3650 -subj "/CN=hopsignal"
Libere a porta no Firewall do Windows:
netsh advfirewall firewall add rule name="HopSignal" dir=in action=allow protocol=TCP localport=80
Para manter o servidor rodando após uma reinicialização, registre-o como tarefa agendada que inicia no boot com a conta SYSTEM:
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
Passo 2: Verificar se o servidor está rodando
No Linux, verifique o serviço e o log:
sudo systemctl status hopsignal tail /home/hopsignal/hs.log
No Windows, confirme que a porta está escutando:
netstat -an | find ":80 "
De qualquer computador, teste a porta WebSocket. Substitua SERVER_IP pelo endereço do seu servidor. Um servidor saudável responde 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/
Passo 3: Apontar os seus dispositivos para o servidor
Cada dispositivo lê suas configurações de rede de um pequeno documento JSON. É o bloco que o instalador imprimiu no final do passo 1. Substitua SERVER_IP pelo endereço do seu servidor e preencha o bloco TURN se você usa o seu próprio relay.
{
"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"
}
O bloco rendezvous é o seu servidor de sinalização. Use a chave rendezvousssl em vez de rendezvous quando o servidor for acessado por TLS, por exemplo um Cloudflare Worker ou uma implantação na AWS. A lista turnservers contém um ou mais relays. Defina o protocolo como turn para uma conexão simples ou turn-tls para uma conexão TLS. Deixe as chaves de versão como estão.
Há três formas de entregar este documento aos seus dispositivos. Escolha a que se encaixa na sua configuração.
Opção A: Colocar um arquivo api.json em cada dispositivo
Salve o documento como um arquivo chamado api.json na pasta de configuração do HopToDesk e reinicie o HopToDesk. O aplicativo lê o arquivo na inicialização e deixa de consultar a API da HopToDesk.
| Plataforma | Caminho |
|---|---|
| Windows, todos os usuários e o serviço | C:\ProgramData\HopToDesk\config\api.json |
| Windows, somente o usuário atual | %APPDATA%\HopToDesk\config\api.json |
| macOS | ~/Library/Preferences/com.hoptodesk.HopToDesk/api.json |
| Linux | ~/.config/hoptodesk/api.json |
No Linux, o serviço em segundo plano roda como root e lê o arquivo em /root, enquanto o aplicativo que você abre lê o arquivo na sua própria pasta pessoal. Coloque uma cópia nos dois lugares.
Opção B: Hospedar o arquivo em uma URL e selecioná-la no aplicativo
- Envie o api.json para qualquer servidor web que os seus dispositivos consigam alcançar. HTTPS é recomendado.
- No HopToDesk, clique no ícone de engrenagem para abrir as configurações.
- Em Network, clique em Choose Network.
- Selecione Custom Network Settings, cole a URL do seu arquivo e confirme.
- O HopToDesk baixa o arquivo, verifica se ele contém uma entrada rendezvous válida e uma lista turnservers, e então reconecta pelo seu servidor.
Para voltar à rede pública, abra Choose Network de novo e selecione HopToDesk Network.
Opção C: Enviar as configurações pelo painel
Se os seus dispositivos estão vinculados ao painel da HopToDesk, você pode definir a rede uma única vez para toda a conta. Um cliente personalizado gerado no painel já vem com essas configurações embutidas.
- Entre no painel como proprietário ou administrador e abra as configurações.
- Em Network Settings, selecione Custom Network.
- Informe o host do servidor de sinalização, a porta e WS como protocolo. Adicione um servidor TURN se você usa o seu próprio relay, ou deixe vazio para manter o relay da HopToDesk.
- Clique em Save Network Settings. Cada dispositivo vinculado recebe as novas configurações e as aplica sem reinstalação.
Rodar o seu próprio relay TURN (opcional)
As sessões que não conseguem conectar diretamente passam pelo relay da HopToDesk por padrão. Para manter todo o tráfego na sua própria infraestrutura, rode um servidor TURN. Qualquer servidor TURN padrão funciona, e o coturn é uma escolha comum no Linux.
- Instale o coturn no servidor de relay.
sudo apt install coturn
- Edite /etc/turnserver.conf e defina pelo menos os valores abaixo. Substitua o realm, as credenciais e o IP público pelos seus.
listening-port=443 fingerprint lt-cred-mech user=myuser:mypassword realm=example.com external-ip=PUBLIC_IP
- Se /etc/default/coturn tiver uma linha TURNSERVER_ENABLED, descomente-a. Depois habilite e inicie o serviço.
sudo systemctl enable --now coturn sudo systemctl restart coturn
- Abra a porta de escuta para TCP e UDP, além do intervalo de relay UDP 49152 a 65535, no firewall do relay.
- Entregue o relay aos seus dispositivos: execute o instalador de novo com os quatro valores TURN, ou edite o bloco turnservers nas suas configurações de rede. Use turn-tls como protocolo se o seu relay termina TLS.
Gerenciar o servidor no Linux
sudo systemctl status hopsignal sudo systemctl restart hopsignal sudo systemctl stop hopsignal tail -f /home/hopsignal/hs.log
Para atualizar o servidor, pare o serviço e execute o comando de instalação de novo. Ele baixa o binário atual e reescreve o serviço.
Para remover o servidor junto com o serviço e as entradas do cron:
cd /home && curl -o hsinstall.sh -sL https://www.hoptodesk.com/hs/hsinstall && sh hsinstall.sh remove
Solução de problemas
- O ID fica em Generating, ou o aplicativo fica tentando conectar à rede: o dispositivo não consegue alcançar o servidor de sinalização. Verifique se o serviço está rodando, se a porta 80 está aberta e se o endereço nas suas configurações de rede está correto.
- Os dispositivos conectam na LAN, mas não de fora: o relay não está acessível. Com o relay padrão, os dispositivos precisam de acesso de saída a turn.hoptodesk.com na porta 443. Com o seu próprio relay, verifique as regras de firewall e as credenciais.
- O aplicativo ignora o api.json: confira se o arquivo é um JSON válido sem vírgulas finais, se está na pasta certa e se você reiniciou o HopToDesk. O log do aplicativo contém a linha Loaded local api.json quando o arquivo foi carregado.
- A porta 82 é a porta de federação para ligar vários servidores de sinalização seus. Mantenha-a fechada para a internet.
- O servidor de sinalização não armazena dados de sessão. Se algo parecer travado, reinicie o serviço. Os dispositivos reconectam sozinhos em cerca de um minuto.
Hospedagem em terceiros
Prefere uma plataforma gerenciada? Implante sua rede HopToDesk na Cloudflare ou na AWS.

HopToDesk na Cloudflare
- Faça login na sua conta Cloudflare e acesse a zona de domínio que deseja usar.
- Crie um novo worker com o nome de arquivo index.js.
- Copie o código do worker para index.js, depois salve e implante o worker. Código do worker
- A URL do seu Cloudflare Worker está pronta. Use-a como valor de "rendezvousssl". api.json API personalizada

HopToDesk na AWS
- Crie uma conta AWS caso ainda não tenha uma.
- Assine a listagem do HopToDesk no AWS Marketplace. AWS Marketplace
- Depois que a Amazon provisionar o serviço, configure se necessário e inicie a instância.
- Sua rede HopToDesk agora está implantada na AWS. Defina a URL https como valor de "rendezvousssl". api.json API personalizada
Observação: O worker exige um plano pago da Cloudflare a partir de US$ 5 por mês, porque depende de Durable Objects. Preços do Durable Objects
AWS Marketplace e o logotipo do AWS Marketplace são marcas registradas da Amazon.com, Inc. ou de suas afiliadas.Cloudflare, o logotipo da Cloudflare e o Cloudflare Workers são marcas comerciais e/ou marcas registradas da Cloudflare, Inc. nos Estados Unidos e em outras jurisdições.