https://github.com/v2fly/domain-list-community/tree/master/data
https://github.com/RockBlack-VPN/ip-address
https://github.com/v2fly/domain-list-community/tree/master/data
https://github.com/RockBlack-VPN/ip-address
Обновляем систему и ставим нужные пакеты:
sudo apt update
sudo apt upgrade -y
sudo apt install xl2tpd ppp -y
Проверим, что сервис установлен:
systemctl status xl2tpd
/etc/xl2tpd/xl2tpd.confsudo nano /etc/xl2tpd/xl2tpd.conf
Пример минимальной конфигурации:
[global]
port = 1701
[lns default]
ip range = 10.10.10.10-10.10.10.100
local ip = 10.10.10.1
require chap = yes
refuse pap = yes
require authentication = yes
pppoptfile = /etc/ppp/options.xl2tpd
length bit = yes
/etc/ppp/options.xl2tpdsudo nano /etc/ppp/options.xl2tpd
ipcp-accept-local ipcp-accept-remote ms-dns 8.8.8.8 ms-dns 1.1.1.1 noccp auth idle 1800 mtu 1460 mru 1460 hide-password name l2tpd lcp-echo-interval 30 lcp-echo-failure 4
/etc/ppp/chap-secretssudo nano /etc/ppp/chap-secrets
Формат:
username server password ip
Пример:
vpnuser l2tpd strongpassword *
Права доступа обязательны:
sudo chmod 600 /etc/ppp/chap-secrets
Создайте отдельный конфигурационный файл:
sudo nano /etc/sysctl.d/99-ipforward.conf
Добавьте:
net.ipv4.ip_forward=1
Примените:
sudo sysctl --system
Проверьте:
sysctl net.ipv4.ip_forward
Ожидаемый результат:
net.ipv4.ip_forward = 1
Предположим, внешний интерфейс — eth0.
sudo iptables -t nat -A POSTROUTING -s 10.10.10.0/24 -o eth0 -j MASQUERADE
sudo iptables -A FORWARD -s 10.10.10.0/24 -j ACCEPT
sudo ufw enable
sudo ufw allow 1701/udp
sudo ufw allow OpenSSH
sudo ufw status
sudo systemctl restart xl2tpd
sudo systemctl enable xl2tpd
Проверка логов:
journalctl -u xl2tpd -f
Делайте строго по шагам, без пропусков.
sudo nano /etc/default/ufw
Найдите:
DEFAULT_FORWARD_POLICY="DROP"
Замените на:
DEFAULT_FORWARD_POLICY="ACCEPT"
Сохраните файл.
Определите внешний интерфейс:
ip route | grep default
Вы увидите что-то вроде:
default via 192.168.89.1 dev eth0
➡ значит интерфейс eth0
sudo nano /etc/ufw/before.rules
⚠️ В САМОЕ НАЧАЛО ФАЙЛА, первой строкой, вставьте:
*nat
:POSTROUTING ACCEPT [0:0]
-A POSTROUTING -s 10.10.10.0/24 -o eth0 -j MASQUERADE
COMMIT
❗ eth0 должен совпадать с вашим реальным интерфейсом.
sudo ufw disable
sudo ufw enable
sudo iptables -t nat -L POSTROUTING -n -v
Ожидаемо:
MASQUERADE all -- 10.10.10.0/24 0.0.0.0/0 out eth0
sudo iptables -t nat -L POSTROUTING -n -v
pkts должен увеличиваться — это главный индикатор.