2.8 KiB
2.8 KiB
Установка
Вручную
- Склонируйте репозиторий
- Установите зависимости
pip install -r requirements.txt
- Сгенерируйте сертификат
Для тестирования (самоподписанный):
openssl req -x509 -newkey rsa:2048 -nodes -keyout key.pem -out cert.pem -days 365
Для прода — Let's Encrypt:
apt install certbot
certbot certonly --standalone -d openmax.su
- Настройте сервер (пример в
.env.example) - Импортируйте схему таблиц в свою базу данных из
tables.sql - Запустите сервер
python3 main.py
- Создайте пользователя через Telegram бот (
/register) - Зайдите со своего любимого клиента
Docker
- Склонируйте репозиторий
- Настройте
.env(пример в.env.example), укажитеdb_userотличный отroot - Получите сертификат Let's Encrypt:
apt install certbot
certbot certonly --standalone -d openmax.su
Укажите домен и пути в .env:
certfile=/certs/cert.pem
keyfile=/certs/key.pem
domain=openmax.su
- Запустите
docker compose up -d
База данных инициализируется автоматически из tables.sql.
- Создайте пользователя через Telegram бот (
/register) - Зайдите со своего любимого клиента
SMS-шлюз
По умолчанию коды авторизации доставляются через Telegram бот. Если вы хотите принимать пользователей с произвольными номерами без привязки к Telegram — поднимите SMS Gateway, укажите его адрес в .env и отключите Telegram бот:
telegram_bot_enabled=false
sms_gateway_url=http://localhost:8100/sms-gateway
Клиент MAX ожидает 6-значный код. Если ваш SMS-провайдер отправляет 5-значные коды и не поддерживает настройку длины — сервер автоматически дублирует последнюю цифру: 26541 → 265411. Пользователь получает SMS с 5 цифрами и вводит их дважды последнюю: 2-6-5-4-1-1.
Автопродление сертификата
certbot renew --deploy-hook "docker compose -f /opt/server/docker-compose.yml restart app"