Назад | Перейти на главную страницу

Сервер OpenVPN не будет перенаправлять трафик

Я установил сервер OpenVPN на своем VPS, используя это руководство: http://vpsnoc.com/blog/how-to-install-openvpn-on-a-debianubuntu-vps-instally/

И я могу подключиться к нему без проблем. Подключитесь, то есть потому, что трафик не перенаправляется. Когда я пытаюсь загрузить веб-страницу при подключении к vpn, я просто получаю сообщение об ошибке.

Это файл конфигурации, который он сгенерировал:

dev tun
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
ca ca.crt
cert server.crt
key server.key
dh dh1024.pem
push "route 10.8.0.0 255.255.255.0"
push "redirect-gateway"
comp-lzo
keepalive 10 60
ping-timer-rem
persist-tun
persist-key
group daemon
daemon

Это мой iptables.conf

# Generated by iptables-save v1.4.4 on Sat May  7 13:09:44 2011
*raw
:PREROUTING ACCEPT [37938267:10998335127]
:OUTPUT ACCEPT [35616847:14165347907]
COMMIT
# Completed on Sat May  7 13:09:44 2011
# Generated by iptables-save v1.4.4 on Sat May  7 13:09:44 2011
*nat
:PREROUTING ACCEPT [794948:91051460]
:POSTROUTING ACCEPT [1603974:108147033]
:OUTPUT ACCEPT [1603974:108147033]
-A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
-A POSTROUTING -s 10.8.0.0/24 -o eth1 -j MASQUERADE
-A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE
COMMIT
# Completed on Sat May  7 13:09:44 2011
# Generated by iptables-save v1.4.4 on Sat May  7 13:09:44 2011
*mangle
:PREROUTING ACCEPT [37938267:10998335127]
:INPUT ACCEPT [37677226:10960834925]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [35616847:14165347907]
:POSTROUTING ACCEPT [35680187:14169930490]
COMMIT
# Completed on Sat May  7 13:09:44 2011
# Generated by iptables-save v1.4.4 on Sat May  7 13:09:44 2011
*filter
:INPUT ACCEPT [37677226:10960834925]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [35616848:14165347947]
-A INPUT -i eth0 -j LOG --log-prefix "BANDWIDTH_IN:" --log-level 7
-A FORWARD -o eth0 -j LOG --log-prefix "BANDWIDTH_OUT:" --log-level 7
-A FORWARD -i eth0 -j LOG --log-prefix "BANDWIDTH_IN:" --log-level 7
-A OUTPUT -o eth0 -j LOG --log-prefix "BANDWIDTH_OUT:" --log-level 7
COMMIT
# Completed on Sat May  7 13:09:44 2011

Просто убедитесь, что вы добавили правило NAT, разрешающее исходящий трафик через шлюз вашего сервера.

Вы не упомянули свой пул клиентов - поэтому я просто предполагаю, но исправлю его по своему усмотрению.

iptables -t nat -I POSTROUTING -o tun+ -s 10.8.1.0/24 -j MASQUERADE

И в зависимости от других правил вашего брандмауэра вам может потребоваться добавить и это

iptables -P FORWARD ACCEPT
iptables -A INPUT -i tun+ -j ACCEPT
iptables -A FORWARD -i tun+ -j ACCEPT

Я также написал подробную конфигурацию для базовой настройки здесь https://serverfault.com/a/403016/113375

Вы должны попробовать это:

отредактируйте server.conf и добавьте:

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

Конфигурация роутера

echo "1" > /proc/sys/net/ipv4/ip_forward

Отредактируйте /etc/sysctl.conf и добавьте

net.ipv4.ip_forward = 1

затем

sudo sh -c "iptables-save > /etc/iptables.rules"

Перезапустите свой VPN:

sudo service openvpn restart

Это должно работать

Убедитесь, что вы раскомментировали строку ниже в своем /etc/sysctl.conf файл

net.ipv4.ip_forward=1

Исправление для Ubuntu / Debian

редактировать - /etc/openvpn/server.conf

добавить: нажмите "redirect-gateway def1"

редактировать - /etc/sysctl.conf

добавить: net.ipv4.ip_forward = 1

Добавьте эти правила в свои Iptables:

iptables -A FORWARD -m state --state RELATED, ESTABLISHED -j ACCEPT iptables -A FORWARD -s 10.8.0.0/24 -j ACCEPT iptables -A FORWARD -j REJECT iptables -t nat -A POSTROUTING -s 10.8.0.0/ 24 -o eth0 -j МАСКЕРАД

Установить dnsmasq - apt-get install dnsmasq

редактировать - /etc/openvpn/server.conf

добавить: нажмите "dhcp-option DNS 10.8.0.1"

Перезагрузите сервер.

Теперь сервер должен туннелировать трафик IPv4 и DNS.