Хорошо, вот моя проблема ...
Я хочу подключиться к VPN через pptp
однако в Windows XP он находится за брандмауэром, который я не могу контролировать. Я могу устанавливать SSH-соединения.
Я хочу подключиться к серверу, который я не контролирую, но разрешает доступ через VPN. Допустим, у него IP 193.60.20.50
ради аргументов.
У меня есть промежуточный сервер под управлением Debian Wheezy, который я полностью контролирую и могу подключаться по SSH с компьютера Windows. Допустим, у него IP 212.74.214.28
ради аргументов.
Как мне туннелировать VPN-соединение с машины Windows через мой промежуточный сервер на конечный сервер? Я предполагаю, что это возможно с использованием SSH-туннелирования в PuTTY. Однако я понятия не имею, что iptables
правила, которые я требую на промежуточном сервере, чтобы разрешить прохождение трафика.
Пока я настроил PuTTY на переадресацию порта 1723
к 193.60.20.50:1723
похоже, это работает, поскольку VPN-соединение сразу возвращает ошибку, в отличие от того, когда туннель выключен, и оно пытается подключиться в течение длительного периода времени, прежде чем выдает ошибку. Однако я считаю, что мой iptables
правила запрещают соединение.
Мой iptables
правила в настоящее время (я выделил конкретные правила, которые я добавил, пытаясь решить эту проблему):
Chain INPUT (policy ACCEPT) target prot opt source destination fail2ban-ssh-ddos tcp -- anywhere anywhere multiport dports ssh fail2ban-ssh tcp -- anywhere anywhere multiport dports ssh ACCEPT all -- anywhere anywhere REJECT all -- anywhere loopback/8 reject-with icmp-port-unreachable ACCEPT all -- anywhere anywhere state RELATED,ESTABLISHED ACCEPT tcp -- anywhere anywhere tcp dpt:http ACCEPT tcp -- anywhere anywhere tcp dpt:https ПРИНЯТЬ tcp - везде где угодно tcp dpt: 1723 ПРИНЯТЬ gre - в любом месте ACCEPT tcp -- anywhere anywhere tcp dpts:http-alt:8090 ACCEPT udp -- anywhere anywhere udp dpts:60000:61000 ACCEPT tcp -- anywhere anywhere state NEW tcp dpt:ssh ACCEPT icmp -- anywhere anywhere icmp echo-request LOG all -- anywhere anywhere limit: avg 5/min burst 5 LOG level debug prefix "iptables denied: " REJECT all -- anywhere anywhere reject-with icmp-port-unreachable Chain FORWARD (policy ACCEPT) target prot opt source destination ACCEPT all -- anywhere anywhere ACCEPT all -- anywhere anywhere REJECT all -- anywhere anywhere reject-with icmp-port-unreachable Chain OUTPUT (policy ACCEPT) target prot opt source destination ACCEPT all -- anywhere anywhere ПРИНЯТЬ tcp - везде где угодно tcp dpt: 1723 ПРИНЯТЬ gre - в любом месте Chain fail2ban-ssh (1 references) target prot opt source destination RETURN all -- anywhere anywhere Chain fail2ban-ssh-ddos (1 references) target prot opt source destination RETURN all -- anywhere anywhere
Вы не можете туннелировать GRE через ssh. ( https://superuser.com/questions/657758/is-it-possible-to-tunnel-pptp-over-ssh )
Я бы посоветовал вам использовать настройку MyEnTunnel и Proxifier. MyEnTunnel не является обязательным, вы также можете сделать это с помощью Putty.
Однако вы можете туннелировать OpenVPN в режиме TCP через SSH.