Система удаленного доступа Aspia пользуется заслуженной популярностью, но при ее развертывании есть некоторые особенности – пакеты собраны для Ubuntu 20.04 или Debian 11, которые на сегодня являются устаревшими.
Также, по нашим временам, для подобного ПО хочется большей переносимости, чтобы в случае чего можно было быстро мигрировать на новое место.
Для этих целей удобно использовать контейнеры, но официального Docker-образа для Aspia нет, есть неофициальный, созданный одним из участников сообщества, который сам активно использует этот продукт.
Допустим мы разместим проект в /opt/aspia, сразу создадим там две служебные директории для хранения базы данных и конфигов:
mkdir -p /opt/aspia/data/{database,config}Затем создадим docker-compose.yml со следующим содержимым:
services:
aspia-server:
image: paprikkafox/aspia-server:latest
container_name: aspia-server
hostname: aspia.example.com
environment:
- EXTERNAL_IP=203.0.113.6
ports:
- "8070:8070"
- "8060:8060"
volumes:
- ./data/database:/var/lib/aspia:rw
- ./data/config:/etc/aspia:rw
restart: always
Где вам потребуется указать имя хоста узла Aspia и внешний IP-адрес, по которому вы будете принимать внешние подключения.
Если вы переносите уже существующую инсталляцию сразу разместите в папках конфиги и публичный ключ в ./data/config и базу данных в
./data/database, в противном случае они будут автоматически созданы при первом запуске.Сразу после запуска контейнер готов к работе, хотя вы можете произвести более тонкие настройки через конфигурационные файлы.
Наиболее популярный тюнинг – это изменение диапазона ID клиентов, которые по умолчанию начинаются с единицы. Но это не сложно исправить.
Останавливаем службу:
docker compose down
Устанавливаем sqlite:
apt install -y sqlite3
Подключаемся к базе и правим нужную запись:
sudo sqlite3 ./data/database/router.db3 "INSERT INTO hosts (id, key) VALUES (3000, 0x53544152544b4559);"
В нашем случае мы установили начальное значение 3000. Обратите внимание, что это нужно сделать до того, как вы начали подключать клиентов.
После чего снова запускаем службу, сервер Aspia готов к работе.
