Здравствуйте! Уже вторую сутку бьюсь над проблемой, буду благодарен за помощь, если укажете где ошибка и как решить.
Есть Windows VPS а также Centos 7 VPS на которой установлен OpenVPN сервер, который планируется использовать для выхода в интернет.
Задача использовать доступ в интернет через VPN на Windows VPS и при этом иметь возможность подключиться к Windows VPS через RDP. Задача кажется простой, нужно лишь пробросить 3389 порт через IPtables но к сожалению что то не получается.
Centos 7
/etc/openvpn/server.conf
port 1194
proto udp
dev tun
ca easy-rsa/keys/ca.crt
cert easy-rsa/keys/server.crt
key easy-rsa/keys/server.key
dh easy-rsa/keys/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 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
persist-key
persist-tun
status openvpn-status.log
Дополнительные настройки сервера
echo "net.ipv4.ip_forward=1" > /etc/sysctl.d/50-forwarding.conf
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o venet0 -j MASQUERADE
systemctl enable iptables
systemctl enable openvpn@server
ifconfig -a
gre0: flags=128<NOARP> mtu 1476
unspec 00-00-00-00-00-00-E0-1D-00-00-00-00-00-00-00-00 txqueuelen 0 (UNSPEC)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
gretap0: flags=4098<BROADCAST,MULTICAST> mtu 1476
ether 00:00:00:00:00:00 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 0 (Local Loopback)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
tun0: flags=4305<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST> mtu 1500
inet 10.8.0.1 netmask 255.255.255.255 destination 10.8.0.2
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 100 (UNSPEC)
RX packets 3076 bytes 211180 (206.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 82 bytes 15631 (15.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
venet0: flags=211<UP,BROADCAST,POINTOPOINT,RUNNING,NOARP> mtu 1500
inet 127.0.0.1 netmask 255.255.255.255 broadcast 0.0.0.0 destination 127.0.0.1
inet6 2a02:7aa0:1619::bce3:3f23 prefixlen 128 scopeid 0x0<global>
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 0 (UNSPEC)
RX packets 11409 bytes 1519515 (1.4 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 7764 bytes 725812 (708.8 KiB)
TX errors 0 dropped 3024 overruns 0 carrier 0 collisions 0
venet0:0: flags=211<UP,BROADCAST,POINTOPOINT,RUNNING,NOARP> mtu 1500
inet 95.YYY.46.6 netmask 255.255.255.255 broadcast 95.YYY.46.6 destination 95.YYY.46.6
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 0 (UNSPEC)
Задачу пытаюсь решить добавлением следующих правил в IPtables
iptables -t nat -A PREROUTING --dst 95.YYY.46.6 -p tcp --dport 3389 -j DNAT --to-destination 10.8.0.4:3389
iptables -I FORWARD 1 -i venet0 -o tun0 -d 10.8.0.4 -p tcp -m tcp --dport 3389 -j ACCEPT
iptables -t nat -A POSTROUTING --dst 10.8.0.4 -p tcp --dport 3389 -j SNAT --to-source 10.8.0.1
iptables -t nat -A OUTPUT --dst 95.YYY.46.6 -p tcp --dport 3389 -j DNAT --to-destination 10.8.0.4
После добавлений правил исполняю
/usr/libexec/iptables/iptables.init save
service iptables restart
Потом пробую подключиться через RDP к 95.YYY.46.6, и результат никакой.
Компьютер через который я буду подключаться к RDP не может быть обьединён в одну VPN сеть с удалённой машиной