Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: pptp-сервер за NAT  (Прочитано 7440 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн RustemNur

  • Автор темы
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2939
  • умрешь с вами
    • Просмотр профиля
pptp-сервер за NAT
« : 20 Февраля 2011, 16:28:53 »
Друзья!
Что нужно еще прописать, кроме
iptables -t nat -A POSTROUTING -p tcp --dport 1723 -j SNAT --to-source $OUTADDR
iptables -t nat -A PREROUTING -p tcp -d $OUTADDR --dport 1723 -j DNAT --to-destination $SRV:1723
чтобы pptp-сервер можно было перенести с входного роутера в локалку?

Заранее благодарен.

Оффлайн Unreg

  • Активист
  • *
  • Сообщений: 751
  • Ubuntu 8.04 / Acer Aspire One 110 > Debian 5.04
    • Просмотр профиля
    • LJ
Re: pptp-сервер за NAT
« Ответ #1 : 20 Февраля 2011, 16:31:58 »
https://forum.ubuntu.ru/index.php?topic=139314.msg1029712

Пользователь решил продолжить мысль 20 Февраля 2011, 16:32:32:
+ gre

Оффлайн RustemNur

  • Автор темы
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2939
  • умрешь с вами
    • Просмотр профиля
Re: pptp-сервер за NAT
« Ответ #2 : 20 Февраля 2011, 16:57:25 »
У меня были прописаны модули, но без префикса nf_
Кто такие с этим префиксом, я не в курсе.  :(
Загрузил их на роутере, вот что получаю в syslog на сервере при попытке коннекта:

Feb 20 18:47:17 server pptpd[20275]: CTRL: Client 92.50.146.30 control connection started
Feb 20 18:47:18 server pptpd[20275]: CTRL: Starting call (launching pppd, opening GRE)
Feb 20 18:47:18 server pppd[20276]: Plugin /usr/lib/pptpd/pptpd-logwtmp.so loaded.
Feb 20 18:47:18 server pppd[20276]: pptpd-logwtmp: $Version$
Feb 20 18:47:18 server pptpd[20275]: GRE: Bad checksum from pppd.
Feb 20 18:47:21 server pppd[20276]: sent [CHAP Challenge id=0x47 <634a3c17408ee7de0d9705034d325261>, name = "pptpd"]
Feb 20 18:47:21 server pptpd[20275]: GRE: read(fd=6,buffer=805a540,len=8196) from PTY failed: status = -1 error = Input/output error, usually caused by unexpected termination of pppd, check option syntax and pppd logs
Feb 20 18:47:21 server pptpd[20275]: CTRL: PTY read or GRE write failed (pty,gre)=(6,7)
Feb 20 18:47:21 server pptpd[20275]: CTRL: Reaping child PPP[20276]
Feb 20 18:47:21 server pptpd[20275]: CTRL: Client 92.50.146.30 control connection finished


Оффлайн Unreg

  • Активист
  • *
  • Сообщений: 751
  • Ubuntu 8.04 / Acer Aspire One 110 > Debian 5.04
    • Просмотр профиля
    • LJ
Re: pptp-сервер за NAT
« Ответ #3 : 20 Февраля 2011, 17:00:51 »
sudo iptables-save

Оффлайн RustemNur

  • Автор темы
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2939
  • умрешь с вами
    • Просмотр профиля
Re: pptp-сервер за NAT
« Ответ #4 : 20 Февраля 2011, 17:12:49 »
sudo iptables-save

# Generated by iptables-save v1.4.4 on Sun Feb 20 19:03:37 2011
*nat
:PREROUTING ACCEPT [2867050:203216365]
:POSTROUTING ACCEPT [34720:1946845]
:OUTPUT ACCEPT [60:5394]
...
-A PREROUTING -d 92.50.146.30/32 -p tcp -m tcp --dport 1723 -j DNAT --to-destination 192.168.1.2:1723
...
-A POSTROUTING -p tcp -m tcp --dport 1723 -j SNAT --to-source 92.50.146.30
...

*filter
:INPUT DROP [509:28318]
:FORWARD ACCEPT [54915:18902660]
:OUTPUT ACCEPT [280:288244]
...
-A INPUT -p gre -j ACCEPT
-A INPUT -p tcp -m tcp --dport 1723 -j ACCEPT
...

Оффлайн Unreg

  • Активист
  • *
  • Сообщений: 751
  • Ubuntu 8.04 / Acer Aspire One 110 > Debian 5.04
    • Просмотр профиля
    • LJ
Re: pptp-сервер за NAT
« Ответ #5 : 20 Февраля 2011, 17:15:12 »
Цитировать
-A POSTROUTING -p tcp -m tcp --sport 1723 -j SNAT --to-source 92.50.146.30
до INPUT по идее ничего не дойдёт

Пользователь решил продолжить мысль 20 Февраля 2011, 17:20:19:
-A PREROUTING -s 92.50.146.30/32 -p tcp -m tcp --dport 1723 -j DNAT --to-destination 192.168.1.2:1723

92.50.146.30 - это IP адрес клиента?
« Последнее редактирование: 20 Февраля 2011, 17:20:19 от Unreg »

Оффлайн RustemNur

  • Автор темы
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2939
  • умрешь с вами
    • Просмотр профиля
Re: pptp-сервер за NAT
« Ответ #6 : 20 Февраля 2011, 17:27:32 »
92.50.146.30 - это IP адрес клиента?

Нет, внешний адрес роутера

Оффлайн Unreg

  • Активист
  • *
  • Сообщений: 751
  • Ubuntu 8.04 / Acer Aspire One 110 > Debian 5.04
    • Просмотр профиля
    • LJ
Re: pptp-сервер за NAT
« Ответ #7 : 20 Февраля 2011, 17:34:35 »
$ lsmod | grep pptp; lsmod | grep gre


Пользователь решил продолжить мысль 20 Февраля 2011, 17:35:48:
$ /sbin/modprobe -l | grep pptp;  /sbin/modprobe -l | grep gre

Оффлайн RustemNur

  • Автор темы
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2939
  • умрешь с вами
    • Просмотр профиля
Re: pptp-сервер за NAT
« Ответ #8 : 20 Февраля 2011, 17:50:00 »
/sbin/modprobe -l | grep pptp
kernel/net/netfilter/nf_conntrack_pptp.ko
kernel/net/ipv4/netfilter/nf_nat_pptp.ko
/sbin/modprobe -l | grep gre
kernel/net/sched/sch_gred.ko
kernel/net/sched/sch_ingress.ko
kernel/net/netfilter/nf_conntrack_proto_gre.ko
kernel/net/ipv4/netfilter/nf_nat_proto_gre.ko
kernel/net/ipv4/ip_gre.ko


Оффлайн Unreg

  • Активист
  • *
  • Сообщений: 751
  • Ubuntu 8.04 / Acer Aspire One 110 > Debian 5.04
    • Просмотр профиля
    • LJ
Re: pptp-сервер за NAT
« Ответ #9 : 20 Февраля 2011, 17:51:50 »
это какие модули доступны
а какие подгружены?

Оффлайн RustemNur

  • Автор темы
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2939
  • умрешь с вами
    • Просмотр профиля
Re: pptp-сервер за NAT
« Ответ #10 : 20 Февраля 2011, 17:57:01 »
это какие модули доступны
а какие подгружены?

Извиняюсь за невнимательность - грипп меня жрет жестоко  >:(

lsmod | grep pptp
nf_nat_pptp             1920  0
nf_conntrack_pptp       4413  1 nf_nat_pptp
nf_conntrack_proto_gre     4021  1 nf_conntrack_pptp
nf_nat_proto_gre        1259  1 nf_nat_pptp
nf_nat                 15735  3 nf_nat_pptp,nf_nat_proto_gre,iptable_nat
nf_conntrack           61615  8 xt_conntrack,xt_state,nf_nat_pptp,nf_conntrack_pptp,nf_conntrack_proto_gre,iptable_nat,nf_nat,nf_conntrack_ipv4
lsmod | grep gre
nf_conntrack_proto_gre     4021  1 nf_conntrack_pptp
nf_nat_proto_gre        1259  1 nf_nat_pptp
nf_nat                 15735  3 nf_nat_pptp,nf_nat_proto_gre,iptable_nat
nf_conntrack           61615  8 xt_conntrack,xt_state,nf_nat_pptp,nf_conntrack_pptp,nf_conntrack_proto_gre,iptable_nat,nf_nat,nf_conntrack_ipv4

Оффлайн Unreg

  • Активист
  • *
  • Сообщений: 751
  • Ubuntu 8.04 / Acer Aspire One 110 > Debian 5.04
    • Просмотр профиля
    • LJ
Re: pptp-сервер за NAT
« Ответ #11 : 20 Февраля 2011, 18:05:59 »
sudo iptables -t nat -A POSTROUTING -p gre -j SNAT --to-source 92.50.146.30

Оффлайн RustemNur

  • Автор темы
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2939
  • умрешь с вами
    • Просмотр профиля
Re: pptp-сервер за NAT
« Ответ #12 : 20 Февраля 2011, 18:10:46 »
sudo iptables -t nat -A POSTROUTING -p gre -j SNAT --to-source 92.50.146.30

Такое у меня было при экспериментах, оно не помогло. Сейчас тоже.

Пользователь решил продолжить мысль 20 Февраля 2011, 18:17:36:
А что-нибудь должно быть типа
iptables -t nat -A PREROUTING -p gre .....?
« Последнее редактирование: 20 Февраля 2011, 18:17:36 от RustemNur »

Оффлайн Unreg

  • Активист
  • *
  • Сообщений: 751
  • Ubuntu 8.04 / Acer Aspire One 110 > Debian 5.04
    • Просмотр профиля
    • LJ
Re: pptp-сервер за NAT
« Ответ #13 : 20 Февраля 2011, 18:26:57 »
трудно рассуждать, не видя полного списка правил МСЭ
sudo modprobe -v nf_nat_pptp; sudo modprobe -v nf_conntrack_pptp; sudo modprobe -v nf_conntrack_proto_gre; sudo modprobe -v nf_nat_proto_gre
sudo sysctl -w net.ipv4.ip_forward=1

набор правил я бы привел к такому виду
eth0 - wan eth1 - lan
Цитировать
# Generated by iptables-save v1.4.4 on Mon Feb 14 19:26:32 2011
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A INPUT -i ! lo -m addrtype --src-type LOCAL -j DROP
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -p udp -m udp --sport 67 --dport 68 -j ACCEPT
-A INPUT -i eth1 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i eth1 -m conntrack --ctstate NEW -j ACCEPT
-A FORWARD -m conntrack --ctstate INVALID -j DROP
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED,DNAT -j ACCEPT
-A FORWARD -p gre -j ACCEPT
-A FORWARD -i eth1 -s 192.168.1.0/24 -p icmp -j ACCEPT
COMMIT
# Completed on Mon Feb 14 19:26:32 2011
# Generated by iptables-save v1.4.4 on Mon Feb 14 19:26:32 2011
*nat
:PREROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A PREROUTING -i eth0 -p tcp -m tcp --dport 1723 -j DNAT --to-destination 192.168.1.2:1723
-A POSTROUTING -s 192.168.1.2/32 -o eth0 -j SNAT --to-source 92.50.146.30
COMMIT
# Completed on Mon Feb 14 19:26:32 2011
# Generated by iptables-save v1.4.4 on Mon Feb 14 19:26:32 2011
*mangle
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A FORWARD -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
COMMIT
# Completed on Mon Feb 14 19:26:32 2011

Оффлайн RustemNur

  • Автор темы
  • Почётный модератор
  • Старожил
  • *
  • Сообщений: 2939
  • умрешь с вами
    • Просмотр профиля
Re: pptp-сервер за NAT
« Ответ #14 : 20 Февраля 2011, 19:44:30 »
Практически все привел к твоему варианту, за исключением того, что политику для FORWARD оставил ACCEPT, ну и пробросы других портов, конечно же.
К огромному моему сожалению, ошибка в логе сервера все та же.

А на самом сервере pptp может что покрутить надо?

Спасибо тебе за помощь. Если есть еще мысли, с радостью выслушаю.

 

Страница сгенерирована за 0.019 секунд. Запросов: 21.