todo/Zapret/ZapretVPN.md
loop-uh 0ad0bcc8dd
Some checks failed
Published content check / validate (push) Failing after 5s
seo+зеркало: [!mirror]-плашка со ссылкой на вики и description во frontmatter всех заметок
Каждая публикуемая заметка получила callout-шапку со ссылкой на свою страницу
wiki.zapret.moe (на самой вики она вырезается транформером RemoveMirrorCallout,
видна только на зеркале Obsidian Publish и в Forgejo) и SEO-поле description —
1–2 предложения для meta description обоих сайтов.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-26 22:05:57 +03:00

1.5 KiB
Raw Permalink Blame History

description
Развёртывание VPN-бота Telegram (vpnbot) на сервере: python3-venv, установка зависимостей pip и systemd-юнит vpnbot.service с автоперезапуском.

[!mirror] Резервное зеркало Актуальная версия этой страницы — на основной вики: wiki.zapret.moe/Zapret/ZapretVPN

mkdir vpnbot
cd /root/vpnbot
apt install python3.12-venv
apt install python3.13-venv
python3 -m venv venv
source venv/bin/activate
pip install paramiko pytz aiogram aiohttp aiohttp_cors yoomoney requests python-dotenv timezones wireguard certbot schedule filelock playwright timedelta qrcode qrcode[pil]
nano /etc/systemd/system/vpnbot.service
[Unit]
Description=VPN Telegram Bot
After=network.target zapret-api.service
Wants=network-online.target

[Service]
Type=simple
User=root
WorkingDirectory=/root/vpnbot
ExecStart=/root/vpnbot/venv/bin/python /root/vpnbot/bot.py

# Перезапуск при падении
Restart=always
RestartSec=10

# Лимиты (отдельные от API!)
LimitNOFILE=32768
LimitNPROC=2048
TasksMax=2048

# Логирование
StandardOutput=journal
StandardError=journal
SyslogIdentifier=vpnbot

# Безопасность
PrivateTmp=true
NoNewPrivileges=true

[Install]
WantedBy=multi-user.target
sudo systemctl daemon-reload
sudo systemctl enable vpnbot
sudo systemctl restart vpnbot
journalctl -u vpnbot -f