This commit is contained in:
wakadakawaka 2025-06-11 19:15:07 +05:00
parent 076e87cf03
commit e039fddeab

View File

@ -0,0 +1,147 @@
---
title: Инструкция по обслуживанию VPN-шлюза (Debian)
---
## 🧭 Общая схема
* Устройства в сети используют `192.168.1.120` как шлюз
* Только указанные домены маршрутизируются через VPN (`tun0`)
* Остальной трафик идёт напрямую через `enp5s0`
---
## ✅ 1. Проверка статуса
### Подключение OpenVPN:
```bash
sudo systemctl status openvpn-client@default_route
```
### Маршруты к доменам через VPN:
```bash
ip rule show
ip route show table vpnroute
```
### Интерфейс VPN:
```bash
ip a show tun0
```
---
## 🔁 2. Перезапуск компонентов
### Перезапуск OpenVPN:
```bash
sudo systemctl restart openvpn-client@default_route
```
### Обновление маршрутов:
```bash
sudo systemctl restart vpn-routing
```
---
## 🔄 3. Обновление списка доменов
Редактировать файл:
```bash
sudo nano /opt/ovpn/vpn-domains.txt
```
Применить изменения:
```bash
sudo systemctl restart vpn-routing
```
---
## 🕒 4. Автообновление маршрутов
Обновление каждые 15 минут через systemd-timer:
Проверка:
```bash
systemctl list-timers vpn-routing.timer
```
---
## 🔥 5. iptables / UFW
### NAT:
```bash
sudo iptables -t nat -L POSTROUTING -n -v
```
Должны быть `MASQUERADE` на `tun0` и `enp5s0`
### UFW:
```bash
sudo ufw status verbose
```
---
## 🧰 6. Обновление системы
```bash
sudo apt update && sudo apt upgrade
```
---
## 🪠 7. Сброс маршрутов
```bash
sudo ip rule | grep vpnroute | awk '{print $1}' | xargs -I {} sudo ip rule del priority {}
sudo ip route flush table vpnroute
```
---
## 📋 8. Логи
### vpn-routing:
```bash
sudo journalctl -u vpn-routing.service -n 50
```
### UFW:
```bash
sudo ufw logging on
```
---
## ⚠️ 9. При пропаже интернета у клиентов
1. `ping 192.168.1.120`
2. `cat /proc/sys/net/ipv4/ip_forward`
3. `iptables -t nat -L POSTROUTING`
4. `systemctl status openvpn-client@default_route`
5. `dmesg | grep UFW`
---
## ♻️ 10. Полная перезагрузка
```bash
sudo systemctl restart openvpn-client@default_route
sudo systemctl restart vpn-routing
sudo systemctl restart ufw
```