Я столкнулся с небольшой загадкой, и мне не повезло найти решение. Прямо сейчас я (к сожалению) подключен к сети через Verizon 3G. Они фильтруют весь входящий трафик, поэтому я не могу открыть порты, чтобы принимать соединения.
В настоящее время у меня есть виртуальная машина Linux на linode.com, и мне в голову пришла мысль установить pptpd
и попытаться выполнить iptables
переадресацию портов. Я pptpd
установил, и моя домашняя машина соединяется счастливо. Тем не менее, вот некоторая общая информация:
IP-адрес сервера (Debian) WAN: xxxx на eth0 - IP-адрес pptpd: yyy1 на ppp0 - IP-адрес клиента VPN: yyy100
Чтобы убедиться, что я не схожу с ума, я попытался установить некоторые соединения с сервера к открытым портам на клиенте, и клиент действительно принимает соединения через VPN IP.
Что я хочу сделать, это:
Интернет -> WAN IP: порт -> Переслать клиенту VPN IP: порт
Так, например, если бы у меня был открыт порт 6000 на моем клиенте, человек мог бы подключиться через telnet к xxxx: 6000, и сервер перехватил бы это и перенаправил бы его на 192.168.3.100:6000.
Я пробовал по крайней мере 20 различных Googled конфигов, iptables
и ни один еще не работал. У кого-нибудь есть какие-нибудь идеи или, может быть, даже совершенно другой подход, о котором я не знаю? Цель здесь состоит в том, чтобы прослушивать ужасно защищенное соединение, желательно как TCP, так и UDP трафик.
источник
iptables-save
показывать мои правила iptables - хотя вывод не предназначен для потребления человеком, он по-прежнему читабелен и показывает все ваши правила iptables.) Нет, к сожалению, вы не можете использовать там «все», потому что--dport
только работает с протоколами, которые на самом деле имеют порты («все» будет включать, например, ICMP, который не имеет понятия о портах). Вам понадобятся отдельные правила для TCP и UDP.Я также имел эту проблему и пытался решить ее в течение нескольких часов .. Вот мое решение:
VPNClient
с тем жеIPAddress
. Поэтому я дал каждому из них статическийIPAddress
http://www.yougetsignal.com/tools/open-ports/ и http://canyouseeme.org/ неправильно определяли порты. Мне пришлось дополнительно запустить свое приложение на клиенте, чтобы веб-сайты могли видеть эти порты.
Нет необходимости в дополнительных
SNAT
правилах. Нужны были только эти правила:источник
На большинстве серверов переадресация ip отключена в конфигурации по умолчанию. Вам нужно включить его, если вы хотите перенаправить входящие соединения через VPN.
Попробуй это:
Я имею в виду в дополнение к конфигурации iptables.
источник
То, чего вы хотите достичь, (возможно) очень возможно с помощью
pptpd
OpenVPN и iptables, однако, вы можете найти tinc лучшим кандидатом для этого варианта использования. Я только что прочитал это, которое описывает, как настроить tinc именно для этого варианта использования. Это (потенциально более простая) альтернатива частиpptdp
или OpenVPN. Тогда вам нужны точно такие же правила для iptables.источник