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

59 lines
No EOL
1.5 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
description: "Развёртывание VPN-бота Telegram (vpnbot) на сервере: python3-venv, установка зависимостей pip и systemd-юнит vpnbot.service с автоперезапуском."
---
> [!mirror] Резервное зеркало
> Актуальная версия этой страницы — на основной вики: [wiki.zapret.moe/Zapret/ZapretVPN](https://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
```