✅ Проведено полное тестирование функционала: - Меню жильца (11 кнопок) - Меню админа (17 кнопок) - База данных (проверка записей) - Уникальность callback_data - Сообщения в личку (без спама) 📝 Созданные файлы: - tests/run_tests.py — автотесты - tests/TEST_REPORT.md — отчёт о тестировании - tests/COMPREHENSIVE_TEST_PLAN.md — план тестов - send_test_report.py — отправка отчёта 📊 Результаты: - Все кнопки работают - Участковский работает через БД (2 записи) - Сообщения только в личку - Веб-админка работает со всеми разделами 🎯 ВСЁ РАБОТАЕТ! Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
188 lines
5 KiB
Markdown
188 lines
5 KiB
Markdown
# 🔐 ПРОКСИ ДЛЯ ДОМОВОЙ БОТА — ИНСТРУКЦИЯ
|
||
|
||
**Обновлено:** 1 марта 2026
|
||
**Статус:** ✅ РАБОТАЕТ
|
||
|
||
---
|
||
|
||
## 📋 ЧТО СДЕЛАНО
|
||
|
||
1. ✅ **Установлен x-ui** (панель управления Xray)
|
||
2. ✅ **Настроен SOCKS5 прокси** на порту 10808
|
||
3. ✅ **Добавлен inbound** в конфигурацию x-ui
|
||
4. ✅ **Автозапуск** через systemd (x-ui сервис)
|
||
5. ✅ **Автозапуск** через crontab (проверка после ребута)
|
||
6. ✅ **Бот настроен** на использование прокси
|
||
|
||
---
|
||
|
||
## 🚀 БЫСТРЫЙ СТАРТ
|
||
|
||
### Проверить статус прокси:
|
||
```bash
|
||
ss -tlnp | grep 10808
|
||
```
|
||
|
||
### Проверить статус бота:
|
||
```bash
|
||
ps aux | grep "python.*main"
|
||
```
|
||
|
||
### Перезапустить прокси:
|
||
```bash
|
||
sudo systemctl restart x-ui
|
||
```
|
||
|
||
### Перезапустить бота:
|
||
```bash
|
||
cd /home/matrixhasyou/domovoy_bot
|
||
./stop.sh && ./start.sh
|
||
```
|
||
|
||
---
|
||
|
||
## 🔧 УПРАВЛЕНИЕ ПРОКСИ
|
||
|
||
### Включить/выключить прокси в боте:
|
||
```bash
|
||
cd /home/matrixhasyou/domovoy_bot
|
||
./toggle_proxy.sh
|
||
```
|
||
|
||
### Добавить новый inbound через БД:
|
||
```bash
|
||
sudo sqlite3 /etc/x-ui/x-ui.db "INSERT INTO inbounds (...) VALUES (...);"
|
||
sudo systemctl restart x-ui
|
||
```
|
||
|
||
### Посмотреть все inbound:
|
||
```bash
|
||
sudo sqlite3 /etc/x-ui/x-ui.db "SELECT id, protocol, port, remark FROM inbounds;"
|
||
```
|
||
|
||
---
|
||
|
||
## 📊 ТЕКУЩАЯ КОНФИГУРАЦИЯ
|
||
|
||
| Параметр | Значение |
|
||
|----------|----------|
|
||
| **Протокол** | SOCKS5 |
|
||
| **Порт** | 10808 |
|
||
| **Listen** | 127.0.0.1 (localhost only) |
|
||
| **Auth** | noauth (без пароля) |
|
||
| **Xray Version** | 26.2.6 |
|
||
| **X-UI Version** | 2.8.10 |
|
||
|
||
---
|
||
|
||
## 🔄 АВТОЗАПУСК ПОСЛЕ РЕБУТА
|
||
|
||
### 1. x-ui сервис (systemd):
|
||
```bash
|
||
systemctl is-enabled x-ui # enabled
|
||
systemctl start x-ui # старт
|
||
```
|
||
|
||
### 2. Crontab проверка:
|
||
```bash
|
||
crontab -l | grep proxy
|
||
# @reboot /home/matrixhasyou/domovoy_bot/proxy-autostart.sh
|
||
```
|
||
|
||
### 3. Скрипт автозапуска:
|
||
- Проверяет что x-ui запущен
|
||
- Проверяет что порт 10808 слушает
|
||
- Проверяет что бот запущен
|
||
- Запускает если что-то не работает
|
||
|
||
---
|
||
|
||
## 🧪 ТЕСТИРОВАНИЕ
|
||
|
||
### Проверить что прокси работает:
|
||
```bash
|
||
# Через curl
|
||
curl -x socks5h://127.0.0.1:10808 https://www.google.com
|
||
|
||
# Через Python
|
||
venv/bin/python3 -c "
|
||
import requests
|
||
proxies = {'socks5': 'socks5://127.0.0.1:10808'}
|
||
r = requests.get('https://www.google.com', proxies=proxies)
|
||
print('OK' if r.status_code == 200 else 'FAIL')
|
||
"
|
||
```
|
||
|
||
### Проверить что бот использует прокси:
|
||
```bash
|
||
grep "🔒 Использование прокси" logs/bot.log
|
||
```
|
||
|
||
---
|
||
|
||
## 🛠️ УСТРАНЕНИЕ ПРОБЛЕМ
|
||
|
||
### Прокси не работает после ребута:
|
||
```bash
|
||
# 1. Проверить x-ui
|
||
sudo systemctl status x-ui
|
||
|
||
# 2. Перезапустить
|
||
sudo systemctl restart x-ui
|
||
|
||
# 3. Проверить порт
|
||
ss -tlnp | grep 10808
|
||
```
|
||
|
||
### Бот не подключается через прокси:
|
||
```bash
|
||
# 1. Проверить что прокси включен в .env
|
||
cat .env | grep USE_PROXY
|
||
|
||
# 2. Если USE_PROXY=true, но бот не видит прокси:
|
||
./toggle_proxy.sh # выключить
|
||
./toggle_proxy.sh # включить
|
||
./stop.sh && ./start.sh
|
||
```
|
||
|
||
### Ошибка "Couldn't connect to proxy":
|
||
```bash
|
||
# Прокси не запущен
|
||
sudo systemctl restart x-ui
|
||
sleep 3
|
||
ss -tlnp | grep 10808
|
||
```
|
||
|
||
---
|
||
|
||
## 📁 ФАЙЛЫ
|
||
|
||
| Файл | Описание |
|
||
|------|----------|
|
||
| `/etc/x-ui/x-ui.db` | База данных inbound |
|
||
| `/usr/local/x-ui/bin/config.json` | Конфиг Xray (генерируется из БД) |
|
||
| `/home/matrixhasyou/domovoy_bot/.env` | Настройки бота (USE_PROXY) |
|
||
| `/home/matrixhasyou/domovoy_bot/toggle_proxy.sh` | Вкл/выкл прокси |
|
||
| `/home/matrixhasyou/domovoy_bot/proxy-autostart.sh` | Автозапуск после ребута |
|
||
|
||
---
|
||
|
||
## 🔐 БЕЗОПАСНОСТЬ
|
||
|
||
- ✅ Прокси слушает только на **127.0.0.1** (localhost)
|
||
- ✅ Доступен только процессам на этом же сервере
|
||
- ✅ Нет аутентификации (не нужно для локального использования)
|
||
- ✅ Бот использует прокси через socks5h:// (DNS через прокси)
|
||
|
||
---
|
||
|
||
## 📞 ЕСЛИ ЧТО-ТО СЛОМАЛОСЬ
|
||
|
||
1. Проверь логи x-ui: `sudo journalctl -u x-ui -n 50`
|
||
2. Проверь логи бота: `tail -100 logs/bot.log`
|
||
3. Проверь порт: `ss -tlnp | grep 10808`
|
||
4. Перезапусти: `sudo systemctl restart x-ui && ./stop.sh && ./start.sh`
|
||
|
||
---
|
||
|
||
**by MatrixHasYou** 🏠
|