Initial Commit

This commit is contained in:
Morty Sunshine 2024-01-25 20:25:01 +03:00
parent 927101643c
commit c56d35cf01
No known key found for this signature in database
GPG Key ID: F062AF84A6D4C401
2 changed files with 101 additions and 2 deletions

View File

@ -1,3 +1,66 @@
# rustdesk-server # Rustdesk сервер в Docker-Compose
Docker-Compose Rustdesk Сервер Для работы потребуется установленный docker-compose
## Установка Docker-Compose и Git в Ubuntu/Debian
Ставим пакеты и включаем демона Docker
```
sudo apt update
sudo apt install docker-compose git
sudo systemctl start docker.service
sudo systemctl enable docker.service
sudo systemctl status docker.service
```
Так же добавляем пользователя в группу docker чтобы не запускать контейнеры с root
```
sudo usermod -aG docker $USER
```
## Клонирование репозитория
Клонируем репозиторий:
```
git clone https://gitea.mayex.net/mayekkuzu/rustdesk-server.git
cd rustdesk-server
sudo nano docker-compose.yaml
```
## Настройка
Параметры, на которые стоит обратить внимание.
- Контейнеры внутри:
`hbbs` - RustDesk ID/Rendezvous сервер
`hbbr` - Сервер RustDesk Relay
- Порты: По умолчанию работают 21115/TCP, 21116/TCP/UDP и 21118/TCP, 21117/TCP и 21119/TCP. 21118-21119 порты можно не открывать, потому как это требуется для веб-служб сервиса.
- Relay: используется для ретрансляции сервиса rustdesk. Используется, если сервисов несколько и расположены на разных серверах. Параметр `hbbs` можно оставить без ключа `-r`.
- Volumes: указание папки хранения ключа и базы данных. Можно указать произвольную.
## Шифрование
По умолчанию в папке `./data` создается пара ключей ed25529. Нам нужно посмотреть содержимое публичного ключа `id_ed25529.pub`.
Ключ указываем в docker-compose.yaml
```
...
image: rustdesk/rustdesk-server:latest
command: hbbs -r IP_ADDRESS_RELAY:21117 -k СОДЕРЖИМОЕ_КЛЮЧА
...
...
image: rustdesk/rustdesk-server:latest
command: hbbr -k СОДЕРЖИМОЕ_КЛЮЧА
...
```
Запускаем сервер командой `docker-compose up -d`
Дополнительно открываем порты на маршрутизаторе. Если используем сервер на VPS/VDS - открываем порты в ufw или iptables.
## Клиенты
Скачиваем [клиент](https://github.com/rustdesk/rustdesk/releases/) для требуемой платформы.
В настройках указываем ip/dns сервера и ключ который мы взяли с файла `id_ed25529.pub`

36
docker-compose.yaml Normal file
View File

@ -0,0 +1,36 @@
version: '3'
networks:
rustdesk-net:
external: false
services:
hbbs:
container_name: hbbs
ports:
- 21115:21115
- 21116:21116
- 21116:21116/udp
- 21118:21118
image: rustdesk/rustdesk-server:latest
command: hbbs -r FQDN-OR-IP:21117 -k pub_key_string
volumes:
- ./data:/root
networks:
- rustdesk-net
depends_on:
- hbbr
restart: unless-stopped
hbbr:
container_name: hbbr
ports:
- 21117:21117
- 21119:21119
image: rustdesk/rustdesk-server:latest
command: hbbr -k pub_key_string
volumes:
- ./data:/root
networks:
- rustdesk-net
restart: unless-stopped