LINUX.ORG.RU
решено ФорумAdmin

Настройка openvpn сервера

 ,


1

1

ЛОР, будь добр, помоги поднять свой openvpn сервер человеку не особо разбирающемуся в сетевом стеке.

При первой попытке запустить сервер оно ругнулость Cannot open TUN/TAP dev /dev/net/tun: No such file or directory (errno=2). После создания вручную mknod /dev/net/tun c 10 200 все стартануло и отлично работало до первой перезагрузки. После перезагрузки tun слетел, и хотя был снова создан вручную, openvpn server теперь нормально не работает. Сервер стартует без ошибок, клиенты к нему коннектятся без ошибок, но траффик не проходит вообще.

Конфиг сервера

port 1194
proto udp
dev tun

ca ca.crt
cert server.crt
key server.key

dh dh2048.pem

server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt

push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"

keepalive 10 120
tls-auth ta.key 0
key-direction 0

cipher AES-128-CBC
auth SHA256

comp-lzo
user nobody
group nogroup

persist-key
persist-tun

status openvpn-status.log
log openvpn.log
verb 3

Подскажите куда копать, какие конфиги и выхлопы смотреть?

★★★

покажи вывод sudo sysctl -a | grep net.ipv4.ip_forward и sudo iptables -L -nv -t nat, ещё глянь iptables -L -nv (цепочка FORWARD в таблице filter)

Deleted
()

суть в том, что форвардинг должен быть включён (net.ipv4.ip_forward = 1), iptables не должен резать твой трафик в цепочке FORWARD, а в таблице nat в цепочке POSTROUTING в простейшем случае должно быть правило с MASQUERADE для динамической подмены source ip от клиентов, подключившихся к vpn

Deleted
()

После перезагрузки

видимо, вышесказанное было сделано, но изменения не были закреплены в конфигурационных файлах (/etc/sysctl.conf для параметров ядра, как сохранять правила iptables зависит от дистрибутива)

Deleted
()
Ответ на: комментарий от Medar

Этим гайдом и пользовался, отличие только в том что ufw у меня отключен и tun пришлось создавать вручную.

Worron ★★★
() автор топика
Ответ на: комментарий от Deleted
root@vpndrive:~# sysctl -a | grep net.ipv4.ip_forward
sysctl: reading key "kernel.unprivileged_userns_apparmor_policy"
net.ipv4.ip_forward = 1
net.ipv4.ip_forward_use_pmtu = 0
sysctl: reading key "net.ipv6.conf.all.stable_secret"
sysctl: reading key "net.ipv6.conf.default.stable_secret"
sysctl: reading key "net.ipv6.conf.eth0.stable_secret"
sysctl: reading key "net.ipv6.conf.lo.stable_secret"
sysctl: reading key "net.ipv6.conf.tun0.stable_secret"
root@vpndrive:~# iptables -L -nv -t nat
Chain PREROUTING (policy ACCEPT 91105 packets, 28M bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain INPUT (policy ACCEPT 2183 packets, 159K bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 13 packets, 1307 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain POSTROUTING (policy ACCEPT 364 packets, 24378 bytes)
 pkts bytes target     prot opt in     out     source               destination 
root@vpndrive:~# iptables -L -nv
Chain INPUT (policy ACCEPT 223 packets, 13585 bytes)
 pkts bytes target     prot opt in     out     source               destination         
17808 1558K f2b-sshd   tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            multiport dports 22

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 160 packets, 17493 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain f2b-sshd (1 references)
 pkts bytes target     prot opt in     out     source               destination         
   24  2228 REJECT     all  --  *      *       121.18.238.123       0.0.0.0/0            reject-with icmp-port-unreachable
   22  1452 REJECT     all  --  *      *       59.45.175.62         0.0.0.0/0            reject-with icmp-port-unreachable
14985 1308K RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0
Worron ★★★
() автор топика
Ответ на: комментарий от Worron

пробуй sudo iptables -A POSTROUTING ! -o lo -j MASQUERADE -t nat
должно заработать
в дебиане и производных правило сохраняются командой sudo netfilter-persistent save

Deleted
()
Последнее исправление: hellcat (всего исправлений: 1)
Ответ на: комментарий от Deleted

Вот, спасибо огромное, правило с MASQUERADE все починило.

Worron ★★★
() автор топика
Ответ на: комментарий от anonymous

Скрипт это круто конечно, но как нуб я предпочту гайд черному ящику. Вот, например, я так понял что скрипт easy-rsa wget'ом тянет, хотя на моем сервере он в репах есть.

Worron ★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.