@squard72
высокий

Почему не работает проброс портов?

Добрый день, имеется:
1. VPS с работающим OpenVPN сервером
2. Клиент сети подключенный к VPS
Зачем:
Предоставление доступа к сервисам локальной сети находящейся за NAT провайдера.

Структура:
venet0:0 - интерфейс VPS смотрящий в интернет с адресом XXX.XXX.XXX.XXX
tun0 - интерфейс OpenVPN с адресом YYY.YYY.YYY.YYY
Так как OpenVPN имеет не совсем удобный для простого обывателя алгоритм подключения(установка клиента, выдача сертификатов и прочее) был установлен PPTPD на сервер внутри локальной сети(той что за NAT), данный сервер необходимо выпустить в интернет по средствам VPS. Работоспособность самого PPTPD проверена внутри сети, все все работает и подключается, но при пробросе порта 1723 на VPS, на сервер YYY.YYY.YYY.YYY:1723 и попытке подключения к PPTPD по адресу VPS, XXX.XXX.XXX.XXX:1723 - работать отказывается. Стоит экран ufw на VPS - проверил, порты открыл.

Пробрасывал так:
iptables -t nat -A PREROUTING --dst YYY.YYY.YYY.YYY -p tcp --dport 1723 -j DNAT --to-destination XXX.XXX.XXX.XXX
iptables -I FORWARD 1 -i venet0:0 -o tun0 -d XXX.XXX.XXX.XXX -p tcp -m tcp --dport 1723 -j ACCEPT
iptables -t nat -A POSTROUTING --dst XXX.XXX.XXX.XXX -p tcp --dport 1723 -j SNAT --to-source YYY.YYY.YYY.YYY
iptables -t nat -A OUTPUT --dst YYY.YYY.YYY.YYY -p tcp --dport 1723 -j DNAT --to-destination XXX.XXX.XXX.XXX
iptables -t nat -A POSTROUTING -s XXX.XXX.XXX.XXX -o tun0 -j MASQUERADE
iptables -t nat -A PREROUTING --dst YYY.YYY.YYY.YYY -p tcp --dport 1723 -j DNAT --to-destination XXX.XXX.XXX.XXX
iptables -I FORWARD -i venet0:0 -o tun0 -d XXX.XXX.XXX.XXX -p tcp -m tcp --dport 1723 -j ACCEPT


XXX.XXX.XXX.XXX - адрес на туннеле, сервера локальной сети
YYY.YYY.YYY.YYY -внешний адрес VPS
tun0 - имя интерфейса туннеля
venet0:0 - имя интерфейса смотрящего в глабольную сеть на VPS
Система на VPS Debian 9.8

Только пожалуйста более простым языком, терпеть не могу iptables, никогда с ним не дружил.:(
  • Вопрос задан
  • 582 просмотра
Пригласить эксперта
Ответы на вопрос 3
Sanes
@Sanes
На OpenVZ урезаный функционал iptables. Тем более на Venet. Уточняйте у хостера.
Ответ написан
Комментировать
20ivs
@20ivs
Пользователь пока ничего не рассказал о себе.
PPTP использует GRE, а ваш VPS об этом ничего не знает, вероятно.
Ответ написан
Комментировать
SignFinder
@SignFinder
Wintel\Unix Engineer\DevOps
Как правильно заметили нужен проброс gre протокола используя -p gre.
Также еще нужна поддержка в ядре. Проверить можно командой modprobe nf_conntrack_proto_gre
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы