Voltar ao início

Relay próprio

RemoScreen — Guia de implantação do relay

Este guia explica como implantar um relay RemoScreen. O pacote inclui o relay Linux, a ferramenta de configuração, modelos e este guia. O estado do download no app indica se os pacotes estão disponíveis.

Baixar o pacote do relay

Escolha a arquitetura do seu servidor. O pacote inclui o SHA256SUMS: confira o download antes de extrair.

Linux x86_64 Linux ARM64 (em teste)

Função do relay

Os dispositivos tentam uma conexão direta primeiro. Quando ela não está disponível, o relay encaminha imagem, áudio e comandos de sessões autorizadas. Adicione seu relay em Serviços de conexão no Mac e no iPad para usá-lo como caminho alternativo. Todas as etapas de download, configuração e inicialização deste guia se referem ao relay.

Download e preparação

Escolha Linux x86_64 ou ARM64 conforme o servidor. O pacote deve incluir remoscreen-service, remoscreen-setup, modelos, este guia, identificadores de versão e código-fonte e SHA256SUMS. Compare a soma de verificação com a página de publicação, extraia em um novo diretório e mantenha a versão anterior.

Prepare um servidor Linux, um domínio que aponte para ele e um certificado HTTPS válido para o domínio. Use uma conta dedicada com privilégios mínimos e um diretório de dados persistentes. Dê permissão de execução aos programas; restrinja o diretório de estado à conta do serviço e defina as chaves geradas com permissões 0600.

Os exemplos usam connect.example.com, HTTPS 8443 e TCP 9443 para o relay. Verifique domínio, portas, firewall e grupos de segurança da nuvem. Se uma porta estiver ocupada, planeje um proxy reverso ou outro endereço de escuta, sem substituir serviços existentes.

Inicializar o relay alternativo

Execute a ferramenta com a conta do serviço. Substitua o domínio e use um diretório de dados separado pertencente a essa conta:

./remoscreen-setup -directory /var/lib/remoscreen/relay \
  -role relay -name RemoScreen \
  -control-url https://connect.example.com:8443/v2/control \
  -relay-host connect.example.com -relay-tcp-port 9443

A ferramenta gera a identidade do serviço, a chave de acesso do cliente e a configuração. Novas inicializações devem manter a função relay e o endereço original; identidades existentes não são sobrescritas. Não apague dados nem gere novas chaves para atualizar o programa.

Iniciar o relay alternativo

Use o mesmo diretório de dados e substitua os caminhos dos certificados por arquivos PEM reais que a conta do serviço possa ler:

./remoscreen-service -service-role=relay \
  -control-listen=:8443 \
  -control-tls-certificate=/etc/remoscreen/fullchain.pem \
  -control-tls-key=/etc/remoscreen/privkey.pem \
  -service-info-config=/var/lib/remoscreen/relay/service-info.json \
  -relay-control-config=/var/lib/remoscreen/relay/relay-control.json \
  -relay-access-keys=/var/lib/remoscreen/relay/relay-access-keys.json \
  -control-revocation-store=/var/lib/remoscreen/relay/revocations.json \
  -control-primary-lock=/var/lib/remoscreen/relay/primary.lock \
  -account-deletion-journal=/var/lib/remoscreen/relay/deletion-journal.json \
  -usage-ledger-store=/var/lib/remoscreen/relay/usage.jsonl \
  -public-host=connect.example.com -tcp-relay-listen=:9443 \
  -tcp-require-local-control-allocation=true \
  -relay-node-id=self-hosted -relay-region=self-hosted \
  -require-commercial-subscription=false

Verifique primeiro a inicialização em primeiro plano e depois use o gerenciador de serviços Linux. A unidade deve definir a conta dedicada, caminhos absolutos, os mesmos argumentos, o diretório privado e reinício em caso de falha. Reinicie este serviço após renovar o certificado para carregar o novo.

Adicionar no Mac e no iPad

Leia o arquivo privado client-connection.json no servidor para obter o endereço e a chave de acesso do cliente. Compartilhe-os por um canal confiável. Em cada dispositivo, abra Serviços de conexão → Adicionar servidor, informe os valores, verifique a identidade e salve.

Arquivos importáveis devem ser gerados pela função Exportar configuração do app. client-connection.json é um resultado de inicialização para administradores, não um arquivo de importação do app. Não compartilhe service-info.json, relay-control.json, chaves privadas TLS nem o diretório completo de dados.

A conexão direta continua prioritária. Este caminho alternativo só é usado quando o relay é permitido e a conexão direta está indisponível.

Verificar a implantação

Em outra rede, verifique o certificado HTTPS e a identidade assinada em /v2/service-info; depois execute a verificação do servidor no app. Com dispositivos já autorizados e uma rede de teste sem conexão direta, confirme que este relay é realmente utilizado. Verifique os logs em busca de erros de certificado ou chave.

Um processo em execução ou uma resposta de integridade bem-sucedida não bastam. Teste a tela remota, teclado, mouse, transferência de arquivos e reconexão. Confirme que a versão informada pelo servidor corresponde à distribuída.

Atualizar, restaurar e desinstalar

Antes de atualizar, faça backup da configuração, de todos os dados persistentes e dos programas anteriores, e registre a versão atual. Pare o serviço correspondente, mude para a nova versão mantendo o diretório de dados e a identidade e repita as verificações. Em caso de falha, pare a nova versão e restaure a anterior com o backup correspondente. Siga as instruções de migração caso o formato dos dados mude.

Para desinstalar, desative e remova primeiro a unidade do serviço. O administrador deve decidir explicitamente se apaga programas e dados. Preserve dados persistentes e backups por padrão; não apague dados de outros serviços ou apps.