doc.rustdesk.com/content/self-host/install/_index.ru.md

144 lines
9.5 KiB
Markdown
Raw Normal View History

2022-04-11 13:23:47 +02:00
---
title: Установка
weight: 10
---
{{% notice note %}}
Сервер для самостоятельного развёртывания не бесплатный. Вы можете использовать демонстрационную лицензию для пробного периода.
{{% /notice %}}
## Настройте свой собственный сервер пр помощи следующих простых шагов
-----------
### Шаг-1 : Скачайте серверную часть
[Скачать](https://github.com/rustdesk/rustdesk-server/) или используйте Docker [rustdesk/rustdesk-server](https://hub.docker.com/r/rustdesk/rustdesk-server/tags).
<!-- **Note:** You need [buy license](https://rustdesk.com/server/) When using this software -->
Доступны версии для следующих платформ:
- Linux
- Windows
Руководство основано на версии для Linux.
В скачанной папке находится два исполняемых файла:
- hbbs - Сервер RustDesk ID/Rendezvous
- hbbr - Сервер ретранслятора RustDesk
- static - содержит все файлы Web-консоли
Они собраны на Centos7 и протестированы на Centos7/8 и Ubuntu 18/20.
#### Системные требования
Системные требования очень низкие. Минимальной конфигурации облачного сервера хватит. В зависимости от размера сети, если не удастся прямое TCP подключение, траффик пойдёт через ретранслятор. Объём трафика ретранслятора будет от 30 кб/с до 3 Мб/с (для экрана размером 1920х1080), в зависимости от разрешения и частоты обновления. Если софт испоьзуется для обычных офисных нужд, объём траффика будет около 100 кб/с.
### ШАГ-2 : Запуск hbbs и hbbr на сервере
Запустите hbbs/hbbr на вашем сервере (Centos или Ubuntu). Мы рекомендуем использовать [pm2](https://pm2.keymetrics.io/) для управления службами.
```
2022-05-10 05:08:09 +02:00
./hbbs -r <IP-адрес ретранслятора[:port]> -m <зарегистрированный email>
./hbbr -m <зарегистрированный email>
```
или запустите hbbs/hbbr при помощи pm2
```
2022-05-10 05:08:09 +02:00
pm2 start hbbs -- -r <IP-адрес ретранслятора[:port]> -m <зарегистрированный email>
pm2 start hbbr -- -m <зарегистрированный email>
```
<a name="demo"></a>
{{% notice note %}}
**Используйте `demo` вместо <зарегистрированный email> для пробного периода**
pm2 требует для себя nodejs v16+. Если не получится запустить pm2 (например, вы не видите hbbs/hbbr в `pm2 list`), установите последнюю LTS версию nodejs по ссылке https://nodejs.org. Если вы хотите чтобы hbbs/hbbr запускался вмести с системой, посмотрите `pm2 save` и `pm2 startup`. Подробности по ссылке: [pm2](https://pm2.keymetrics.io/docs/usage/quick-start/). Хороший инстурмет для записи логов: [pm2-logrotate](https://github.com/keymetrics/pm2-logrotate).
Параметр `-r` у hhbs не обязательный. Он необходим для автоподстановки адреса ретранслятора на стороне клиента. Адрес ретранслятора на стороне клиента имеет приоритет над адресом, указанным с ключом `-r`.
{{% /notice %}}
По умолчанию hbbs слушает порты 21114(tcp), 21115(tcp) и 21116(tcp/udp), 21118(tcp), hbbr слушает порты 21117(tcp) и 21119(tcp). Удостоверьтесь, что эти порты открыты на файрволле. **Обратите внимание: Порт 21116 должен быть открыт и как TCP и как UDP**. Порт 21114 используется для Web-консоли и API, 21115 используется для проверки типа NAT, 21116/UDP используется для регистрации и службы heartbeat, 21116/TCP используется для пробивания TCP отверстий и службы соединений, 21117 используется для службы ретранслятора, 21118 и 21119 используется для поддержки Web-клиентов. Если вам не нужны Web-консоль с API (21114) или Web-клиент (21118, 21119) соответствующие порты можно отключить.
- TCP(**21114, 21115, 21116, 21117, 21118, 21119**)
- UDP(**21116**)
Используйте ключ `-h` для получения справки.
#### Пример с использованием Docker
##### Linux/amd64
```
sudo docker image pull rustdesk/rustdesk-server
2022-05-10 05:08:09 +02:00
sudo docker run --name hbbs -p 21114:21114 -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 -v `pwd`:/root -it --net=host --rm rustdesk/rustdesk-server hbbs -r <IP-адрес ретранслятора[:port]> -m <зарегистрированный email>
sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v `pwd`:/root -it --net=host --rm rustdesk/rustdesk-server hbbr -m <зарегистрированный email>
```
##### Linux/arm64v8
```
sudo docker image pull rustdesk/rustdesk-server:latest-arm64v8
2022-05-10 05:08:09 +02:00
sudo docker run --name hbbs -p 21114:21114 -p 21115:21115 -p 21116:21116 -p 21116:21116/udp -p 21118:21118 -v `pwd`:/root -it --net=host --rm rustdesk/rustdesk-server:latest-arm64v8 hbbs -r <IP-адрес ретранслятора[:port]> -m <зарегистрированный email>
sudo docker run --name hbbr -p 21117:21117 -p 21119:21119 -v `pwd`:/root -it --net=host --rm rustdesk/rustdesk-server:latest-arm64v8 hbbr -m <зарегистрированный email>
```
<a name="net-host"></a>
{{% notice note %}}
--net=host работает только на Linux, таким образом hbbs/hbbr может видеть настоящий входящий IP-адрес, а не адрес контейнера(172.17.0.1).
Если --net=host сработало, ключ -p бесполезен.
**Уберите --net=host если наблюдаются проблемы на вашей платформе**
{{% /notice %}}
### ШАГ-3 : Настроить адрес hbbs/hbbr на стороне клиента
{{% notice note %}}
Для калиентов Windows, вы можете использвать генерацию [Windows EXE](/docs/ru/self-host/console/#windows-exe) для автоматического заполнения настроек.
{{% /notice %}}
Нажмите на кнопку меню справа от ID, как указано ниже, и выберите "ID/Relay Server".
![](/docs/en/self-host/install/images/server-set-menu.png)
Введите URL или IP-адрес hbbs в поле "ID server". Поле "Relay server" можно оставить пустыми, RustDesk автоматически определит адрес ретранслятора.
{{% notice note %}}
Поле Key не предназначено для зарегистрированного email. Подробности в [следующей секции](#key).
{{% /notice %}}
Например:
```
hbbs.yourhost.com
```
или
```
hbbs.yourhost.com:21116
```
![](/docs/en/self-host/install/images/server-set-window.png)
## Ключ шифрования
-----------
В отличии от предыдущих версий, в текущей версии ключ шифрования обязателен, но нет необходимости устанавливать его самостоятельно. Когда hbbs запускается в первый раз, он автоматически сгенерирует пару из зашифрованных приватного и публичного ключей (в файлах `id_ed25519` и `id_ed25519.pub` соответственно, в директории запуска).
Если вы не заполните поле `Key:` (содержимое файла публичного ключа `id_ed25519.pub`) на предыдущем шаге, это не отразится на соединении, но оно не будет зашифровано.
````
cat ./id_ed25519.pub
````
Если вы хотите запретить незашифрованные соединения, используйте параметр `-k _` для запуска hbbs и hbbr, например:
````
2022-05-10 05:08:09 +02:00
./hbbs -r <адрес ретранслятора[:port]> -k _
./hbbr -k _
````
Если вы хотите сменить ключ, удалите файлы `id_ed25519` и `id_ed25519.pub` и перезапустите hbbs/hbbrhbbs автоматически сгенерирует новую пару ключей.
{{% notice note %}}
Так-же, ключ можно увидеть в [консоли](/docs/ru/self-host/console/#console-home) на странице Windows EXE.
{{% /notice %}}