mirror of
https://github.com/rustdesk/doc.rustdesk.com.git
synced 2025-01-10 08:18:43 +01:00
126 lines
6.7 KiB
Markdown
126 lines
6.7 KiB
Markdown
---
|
|
title: Instalação
|
|
weight: 1
|
|
---
|
|
|
|
Instalação do RustDesk
|
|
Este documento explica como instalar o RustDesk em seu próprio servidor.
|
|
|
|
### Tutoriais em Vídeo
|
|
Existem vários tutoriais em vídeo no [YouTube](https://github.com/rustdesk/rustdesk/wiki/FAQ#video-tutorials.) (em inglês).
|
|
|
|
### Instalar seu próprio servidor como serviço systemd usando um script de instalação simples
|
|
O script está hospedado no [Techahold](https://github.com/techahold/rustdeskinstall) e tem suporte no nosso [Discord](https://discord.com/invite/nDceKgxnkV).
|
|
|
|
Atualmente, o script fará o download e configurará os servidores Relay e Signal (hbbr e hbbs), gerará configurações e as hospedará em uma página da web protegida por senha para implantação simples nos clientes.
|
|
|
|
#### Requisitos
|
|
Você precisa ter o Linux instalado. O script foi testado e funciona com CentOS Linux 7/8, Ubuntu 18/20 e Debian. Um servidor com 1 CPU, 1 GB de RAM e 10 GB de disco é suficiente para executar o RustDesk.
|
|
|
|
#### Como instalar o servidor
|
|
Configure seu firewall no servidor antes de executar o script.
|
|
|
|
Certifique-se de ter acesso via SSH ou outro método antes de configurar o firewall. Os comandos de exemplo para UFW (sistemas baseados em Debian) são:
|
|
```
|
|
ufw allow proto tcp from YOURIP to any port 22
|
|
```
|
|
|
|
Se você tiver o UFW instalado, use os seguintes comandos para configurar o firewall (porta 8000 somente necessária se você quiser usar os arquivos de instalação gerados automaticamente):
|
|
```
|
|
ufw allow 21114:21119/tcp
|
|
ufw allow 8000/tcp
|
|
ufw allow 21116/udp
|
|
sudo ufw enable
|
|
```
|
|
|
|
Execute os seguintes comandos:
|
|
```
|
|
wget https://raw.githubusercontent.com/techahold/rustdeskinstall/master/install.sh
|
|
chmod +x install.sh
|
|
./install.sh
|
|
```
|
|
Também há um script de atualização no repositório do [Techahold's](https://github.com/techahold/rustdeskinstall) (em inglês).
|
|
|
|
### Instalar seu próprio servidor como serviço systemd usando arquivo deb para distribuições Debian
|
|
|
|
Faça o [Download](https://github.com/rustdesk/rustdesk-server/releases/latest) dos arquivos deb e instale-os com `apt-get -f install <nome_do_arquivo>.deb` ou `dpkg -i <nome_do_arquivo>.deb`.
|
|
|
|
### Configurar sua própria instância de servidor manualmente
|
|
|
|
#### PASSO 1: Baixe os programas do servidor
|
|
Faça o [Download](https://github.com/rustdesk/rustdesk-server/releases/latest).
|
|
|
|
Versões fornecidas para plataformas:
|
|
|
|
- Linux
|
|
- Windows
|
|
|
|
O tutorial abaixo é baseado na compilação do Linux.
|
|
|
|
Existem dois executáveis e uma pasta:
|
|
|
|
- `hbbs`: Servidor de ID/Encontro do RustDesk
|
|
- `hbbr`: Servidor Relay do RustDesk
|
|
|
|
Eles são compilados no CentOS Linux 7, testados no CentOS Linux 7/8 e Ubuntu 18/20.
|
|
|
|
##### Requisitos do Servidor
|
|
|
|
Os requisitos de hardware são muito baixos; a configuração mínima de um servidor básico em nuvem é suficiente, e os requisitos de CPU e memória são mínimos. Você também pode usar um Raspberry Pi ou algo semelhante. Em relação ao tamanho da rede, se a conexão direta por perfuração de túnel TCP falhar, o tráfego do relay será consumido. O tráfego de uma conexão relay fica entre 30 K/s e 3 M/s (tela de 1920x1080), dependendo das configurações de resolução e atualização da tela. Se for apenas para demanda de trabalho de escritório, o tráfego fica em torno de 100 K/s.
|
|
|
|
#### PASSO 2: Execute hbbs e hbbr no seu servidor
|
|
Sugerimos usar o [PM2](https://pm2.keymetrics.io/) (em inglês) para gerenciar seu serviço.
|
|
|
|
##### Opção 1
|
|
Executar hbbs/hbbr sem PM2.
|
|
|
|
```sh
|
|
./hbbs -r <ip_do_servidor_relay[:porta]>
|
|
./hbbr
|
|
```
|
|
|
|
##### Opção 2
|
|
Executar hbbs/hbbr com PM2.
|
|
|
|
```sh
|
|
pm2 start hbbs -- -r <ip_do_servidor_relay[:porta]>
|
|
pm2 start hbbr
|
|
```
|
|
|
|
<a name="demo"></a>
|
|
{{% notice note %}}
|
|
O PM2 requer Node.js v16+. Se você não conseguir executar o PM2 (por exemplo, não consegue ver `hbbs/hbbr` em `pm2 list`), faça o [download](https://nodejs.org/pt) e instale a versão LTS do Node.js. Para configurar a execução automática do `hbbs/hbbr` após a reinicialização, use os comandos `pm2 save` e `pm2 startup`. Saiba mais sobre o [PM2](https://pm2.keymetrics.io/docs/usage/quick-start/) (em inglês). Outra ferramenta útil para seus logs é o [pm2-logrotate](https://github.com/keymetrics/pm2-logrotate) (em inglês).
|
|
|
|
O parâmetro `-r` do hbbs é opcional, serve apenas para sua conveniência para não precisar especificar um servidor relay no lado do cliente controlado. Você não precisa especificar a porta se estiver usando a porta padrão **21117**. O servidor relay especificado pelo cliente tem prioridade sobre esta opção.
|
|
{{% /notice %}}
|
|
|
|
#### Portas
|
|
|
|
Por padrão, o `hbbs` escuta nas portas **21114** (TCP, para console web, disponível somente na versão Pro), **21115** (TCP), **21116** (TCP/UDP) e **21118** (TCP). O `hbbr` escuta nas portas **21117** (TCP) e **21119** (TCP). Certifique-se de abrir essas portas no firewall. **Observe que a porta 21116 deve estar habilitada para TCP e UDP.** A porta **21115** é usada para o teste de tipo NAT, a porta **21116/UDP** é usada para o serviço de registro de ID e pulsação, a porta **21116/TCP** é usada para o serviço de conexão e perfuração de tunel TCP, a porta **21117** é usada para os serviços Relay e as portas **21118** e **21119** são usadas para suportar clientes web. *Se você não precisa de suporte a cliente web (portas **21118** e **21119**), as portas correspondentes podem ser desabilitadas.*
|
|
|
|
- TCP (**21114, 21115, 21116, 21117, 21118, 21119**)
|
|
- UDP (**21116**)
|
|
Execute o comando com a opção `-h` para ver a ajuda caso queira escolher sua própria porta.
|
|
|
|
#### PASSO 3: [Set hbbs/hbbr address on client-side](/docs/pt/self-host/client-configuration/)
|
|
|
|
### Chave
|
|
|
|
A chave é obrigatória, mas você não precisa defini-la manualmente. Quando o `hbbs` é executado pela primeira vez, ele gera automaticamente um par de chaves criptografadas, privada e pública (localizadas respectivamente nos arquivos `id_ed25519` e `id_ed25519.pub` no diretório de execução). O principal objetivo dessas chaves é a criptografia da comunicação.
|
|
|
|
Se você não preencheu o campo "Key:" (o conteúdo do arquivo de chave pública `id_ed25519.pub`) na etapa anterior, isso não afeta a conexão, mas a conexão não poderá ser criptografada.
|
|
|
|
```sh
|
|
cat ./id_ed25519.pub
|
|
```
|
|
|
|
Se você quiser alterar a chave, remova os arquivos `id_ed25519` e `id_ed25519.pub` e reinicie o `hbbs/hbbr`. O `hbbs` gerará um novo par de chaves.
|
|
|
|
{{% notice note %}}
|
|
Se você estiver usando o docker-compose e as chaves não existirem, a inicialização dos contêineres criará chaves diferentes nas pastas hbbs e hbbr.
|
|
|
|
Você pode criar chaves manualmente no hbbs e copiá-las para o hbbr antes de iniciar os contêineres.
|
|
|
|
Ou você pode parar o contêiner hbbr, copiar as chaves do hbbs para a pasta hbbr e reiniciar o contêiner.
|
|
{{% /notice %}}
|