I have a VPN connection to a server on a remote location. I want other pc's to be able to reach the webserver on the remote location trough the VPN connector. But i can't get where i want.
This is the situation:
VPN Server (and also the webserver): 10.0.0.2
^
|
Router: 192.168.1.127 & 10.0.0.1 (openssh port is forwarded to 10.0.0.2)
^
|
|
VPN Connector: 192.168.1.148
^
|
Client pc: 192.168.1.129
Also the ip of the vpn networks (called tun0) are: VPN Server: 192.168.2.1 VPN Connector: 192.168.2.6
So, if i login to the VPN Connector, and do a wget 192.168.2.1:4848 it works fine.
That's good, the vpn connection works.
But what i want to do is: on the client pc go to the browser and go to 192.168.1.148:4848. (that's the vpn connector). Then the connector should forward it to the vpn showing me the webserver on 192.168.2.1 (the vpn server).
This is my IPTables setup:
iptables -t nat -A PREROUTING -p tcp -d 192.168.1.148 --dport 4848 -m state --state NEW,ESTABLISHED,RELATED -j DNAT -to 192.168.2.1:4848
iptables -t nat -A POSTROUTING -o tun0 MASQUERADE
So, i'm fairly new to iptables, What am i missing?
If i do a tcpdump on the vpn connector on tun0 i can see that the packets go trough?
13:31:02.850057 IP 192.168.1.129.52870 > 192.168.2.1.1337: Flags [S], seq 538959383, win 8192, options [mss 1460,nop,nop,sackOK], length 0
But if i do a tcpdump on the VPN server on tun0 nothing is happening.
I'm sorry that this is a long post, but what am i doing wrong? Please help!