kernel nat ipfw VPN PPTP

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-07 14:43:43

Приветствую гуру уникса.
Вообщем задача есть сервер на фряхе.
2 сетевухи
em1 смотрит в мир.
em0 в локалку там крутиться сетка 192.168.0.0/24
на самой фряхе поднимаются несколько туннелей до удаленных офисов. посредством mpd5. тип туннеля pptp.

Далее нужно разрешить пользователям локалки так же пробрасывать ВПН туннели то тех же удаленных серверов с теме же ип адресами.

Почитав доки по pptp gre ipfw . так и не понял. возможно так реализовать или нет?
вот правила фаера

Код: Выделить всё

#************************reset

${fwcmd} -f flush

#${fwcmd} -f pipe flush

#${fwcmd} -f queue flush

${fwcmd} -f table 0 flush

               config nat interface

#deny in config nat

 ${fwcmd} nat 1 config ip External_ip same_ports reset 

#*********Rules to Server GRE

        ${fwcmd} add 110 pass log tcp from any to me 1723 in via ${em1}

        ${fwcmd} add 120 pass log ip from me to any out via ${em1}

        ${fwcmd} add 130 pass gre from any to me in via ${em1}

#*********Nat out , LAN net to Rules

        ${fwcmd} add 150 nat 1 ip from 192.168.0.0/24 to any out via ${em1}



#*****************************nat rules in

        ${fwcmd} add 300 nat 1 ip from any to Externall_ip in via ${wan_int}

   ${fwcmd} add 65000 deny log all from any to any

Если поставить правила ната выше правил для сервера то туннели с фряхи не поднимаются. если ниже то с фряхи туннели поднимаются , с компов в локалке ВПН НЕ поднимаются выдает ошибку 619. по tcpdump-у видно что не проходят gre пакеты внутрь локалки.

Возможно решить данную проблему ? и если возможно то каким образом?
Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-08 5:36:31

не у кого нет вариантов?
Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

lazhu
сержант
Сообщения: 254
Зарегистрирован: 2013-08-10 14:28:38
Контактная информация:

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение lazhu » 2013-11-08 6:41:43

убрать правило 110, вместо него

Код: Выделить всё

nat 1 config ip External_ip same_ports reset deny_in redirect_port External_ip:1723 1723
Таким образом все входящие соединения на External_ip:1723 будут перенаправляться на локальную машину (сервер), а с локалки все будет ходить через нат.

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-08 7:05:30

lazhu писал(а):убрать правило 110, вместо него

Код: Выделить всё

nat 1 config ip External_ip same_ports reset deny_in redirect_port External_ip:1723 1723
Таким образом все входящие соединения на External_ip:1723 будут перенаправляться на локальную машину (сервер), а с локалки все будет ходить через нат.
Дело в том что с самого сервера так же поднимаются туннели. да и если поставить deny_in то вообще ничего не работает.
Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-08 7:56:21

Тобишь VPN сервера нет в локалке. Есть шлюз на фряхе с которого и происходит соединение до внешних серверов и потом уже машрутизируется в локалку. соответственно для юзверов из локалки сделан нат для выхода в инет.
Но еще нужно для некоторых товарищей поднимать доп. ВПН. до тех же серверов. для доступа к определенным ресурсам.
Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

lazhu
сержант
Сообщения: 254
Зарегистрирован: 2013-08-10 14:28:38
Контактная информация:

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение lazhu » 2013-11-08 8:07:31

CTOPMbI4 писал(а):
lazhu писал(а):убрать правило 110, вместо него

Код: Выделить всё

nat 1 config ip External_ip same_ports reset deny_in redirect_port External_ip:1723 1723
Таким образом все входящие соединения на External_ip:1723 будут перенаправляться на локальную машину (сервер), а с локалки все будет ходить через нат.
Дело в том что с самого сервера так же поднимаются туннели. да и если поставить deny_in то вообще ничего не работает.
Так для того и делается редирект, чтобы локальные сервисы работали при deny_in

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-08 8:50:15

хм.. куда делается проброс то? сам на себя что ли?
Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

lazhu
сержант
Сообщения: 254
Зарегистрирован: 2013-08-10 14:28:38
Контактная информация:

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение lazhu » 2013-11-08 9:15:48

CTOPMbI4 писал(а):хм.. куда делается проброс то? сам на себя что ли?
Да.
Правда, насколько я понял, в данном случае туннель устанавливается исходящий, так что локальный порт 1723 вообще не при делах. Если известны ip pptp-серверов, можно занести их в таблицу и прописать

Код: Выделить всё

add allow ip from table\(1\) to any in via em1
до ната.

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-08 10:22:58

Вот переделал. нат поставил раньше разрешения для сервера.
тут сложность заключается в входящих соединениях gre.
если исходящие можно фильтровать по ип адресу. тобишь локалки. и ип адресу сервера. то входящий gre пакет приходит на сервер на один и тот же ип адрес.
и дальше какое правило будет первым либо нат либо для сервера. то и будет работать.

какие варианты как решить эту траблу?
как то поставить established до правил ната для ип сервера.

Код: Выделить всё

${fwcmd} nat 1 config ip external_ip same_ports reset 
*********Nat out , LAN net to Rules

        ${fwcmd} add 50 nat 1 ip from 192.168.0.0/24 to any out via ${wan_int}



#*****************************nat rules in

        ${fwcmd} add 100 nat 1 ip from any to external_ip in via ${wan_int}

#to server

   ${fwcmd} add 110 pass tcp from "table(2)" to me 1723 in via ${wan_int}

        ${fwcmd} add 120 pass ip from me to any out via ${wan_int}

        ${fwcmd} add 130 pass gre from "table(2)" to me in via ${wan_int}
       


Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-08 12:20:22

Код: Выделить всё

add allow ip from table\(1\) to any in via em1
до ната

Если поставить до правил ната. то тогда пакеты предназначенные для ПК в локалке. не будут доходить.
Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

Аватара пользователя
gumeniuc
ст. сержант
Сообщения: 343
Зарегистрирован: 2009-11-08 15:46:05
Откуда: md
Контактная информация:

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение gumeniuc » 2013-11-09 11:00:35

CTOPMbI4 писал(а): Далее нужно разрешить пользователям локалки так же пробрасывать ВПН туннели то тех же удаленных серверов с теме же ип адресами.
Поясните, пожалуйста, на конкретном примере с адресами чего Вы хотите добиться.
Да шо ему сделается...

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-09 11:37:51

Все до банальности просто.

FreeBSD 9.1
em1 External_ip
em0 192.168.0.0/24
Поднят mpd5 в качестве клиента.
C FreeBSD должны быть подняты туннели до внешних удаленных офисов с внешними ип адресами.
Юзверы с локалки 192.168.0.0/24 должны иметь инет через NAT который поднят на FreeBSD. + должны иметь возможность поднимать туннели до тех же
удаленных офисов.
Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

Аватара пользователя
kharkov_max
капитан
Сообщения: 1861
Зарегистрирован: 2008-10-03 14:56:40

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение kharkov_max » 2013-11-10 22:32:28

Вот ответ на Ваш вопрос ...
http://forum.lissyara.su/viewtopic.php?f=4&t=39449

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-12 16:57:28

kharkov_max писал(а):Вот ответ на Ваш вопрос ...
http://forum.lissyara.su/viewtopic.php?f=4&t=39449
сегодня проверил.
ВПН поднялись с сервера.
Но нат корректно не работает.
тобишь с стороны клиентских ПК пакеты натятся. приходят обратно на внешний интерфейс. обратно из ната не работает.
поставил

Код: Выделить всё

net.inet.ip.fw.one_pass=0
убрал

Код: Выделить всё

deny_in и reset
Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

Аватара пользователя
kharkov_max
капитан
Сообщения: 1861
Зарегистрирован: 2008-10-03 14:56:40

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение kharkov_max » 2013-11-12 17:32:40

Ну как бы без конфигов тяжело что то говорить и обсуждать.
Выкладывайте конфиг ipfw - посмотрим ...

Только покажите весь ipfw

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-13 6:07:23

Прошу весь конфиг.

Код: Выделить всё


#!/bin/sh

fwcmd="/sbin/ipfw"

#***********************Lans net

wan_lan="Externall_ip/30"
lan_net="192.168.1.0/24"


#***********************interfaces

lan_int="em0"
wan_int="em1"
ng0_int="ng0"
ng1_int="ng1"
ng2_int="ng2"


#***********************ip to interface

wan_ip="External_ip"
lan_ip="192.168.1.1"


#************************tables

#**********table local net

${fwcmd} table 1 add 10.0.0.0/8
#${fwcmd} table 1 add 192.168.0.0/16
${fwcmd} table 1 add 172.16.0.0/12
${fwcmd} table 1 add 169.254.0.0/16
${fwcmd} table 1 add 240.0.0.0/4
${fwcmd} table 1 add 224.0.0.0/4



#************************table VPN remote offices

${fwcmd} table 2 add VPN_ip1/32
${fwcmd} table 2 add VPN_ip2/32
${fwcmd} table 2 add VPN_ip3/32




#************************reset

${fwcmd} -f flush

#${fwcmd} -f pipe flush

#${fwcmd} -f queue flush

${fwcmd} -f table 0 flush


#************************access loopback

        ${fwcmd} add 10 pass all from any to any via lo0

#************************deny loopback 127.0.0.0/8 to all

        ${fwcmd} add 20 deny log all from any to 127.0.0.0/8
        ${fwcmd} add 30 deny log all from 127.0.0.0/8 to any


#************************diamond shit shild to brut pass

        ${fwcmd} add 40 deny not icmp from "table(0)" to me



#************************shild to WAN interface rfc (LAN)

        ${fwcmd} add 50 deny all from "table(1)" to any in via ${wan_int}
        ${fwcmd} add 60 deny all from any to "table(1)" in via ${wan_int}




#*************************deny on tcp state flags shild to bruts nmaps

        ${fwcmd} add  70 deny log tcp from any to any not established tcpflags fin
        ${fwcmd} add  80 deny log tcp from any to any tcpflags fin,syn,rst,psh,ack,urg
        ${fwcmd} add  90 deny log tcp from any to any tcpflags !fin,!syn,!rst,!psh,!ack,!urg

#*************************deny spoofing attack

        ${fwcmd} add 91 deny ip from any to any not verrevpath in


#*************************deny rules to WAN INT, netbios and etc

        ${fwcmd} add 95 deny log all from any to any 23,67,68,3128,137-139,81,445 via ${wan_int}

        ${fwcmd} add 96 deny ip from 10.0.0.0/16 to any in via ${ng0_int}

#*************************deny icmp type only

        ${fwcmd} add 97 pass icmp from any to me in via ${wan_int} icmptype 3,8,12

        ${fwcmd} add 98 deny icmp from amy to me in via ${wan_int}






#*****************************nat config + redirect ports

#                       config nat interface

#deny in config nat

 ${fwcmd} nat 1 config ip Ext_ip same_ports \
redirect_port udp 192.168.1.100:50555 50555 \
redirect_port udp 192.168.1.100:20010-20020 20010-20020



#*********Rules LAN INT Alloy all to Local int


        ${fwcmd} add 100 allow all from any to any via ${lan_int}



#*****************************Nat rules out

        ${fwcmd} add 150 nat 1 ip from 192.168.1.0/24 to any out via ${wan_int}

#*****************************nat rules in

        ${fwcmd} add 200 nat 1 ip from any to Externall_ip in via ${wan_int}




#****************************rules from server


        ${fwcmd} add 400 add pass ip from me to any out via ${wan_int}

        ${fwcmd} add 410 add pass gre from me to any out via ${wan_int}

        ${fwcmd} add 420 add pass tcp from "table(2)" 1723 to me in via ${wan_int}

        ${fwcmd} add 430 add pass gre from "table(2)" to me in via ${wan_int}



#************************* ng interfaces all access
#ng0

# establlished

${fwcmd} add 1000 allow all from any to any via ${ng0_int}

#int ng1

${fwcmd} add 1010 allow all from any to any via ${ng1_int}

#int ng2

${fwcmd} add 1020 allow all from any to any via ${ng2_int}




#                       deny all to not allow

        ${fwcmd} add 65000 deny log all from any to any
Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

Аватара пользователя
kharkov_max
капитан
Сообщения: 1861
Зарегистрирован: 2008-10-03 14:56:40

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение kharkov_max » 2013-11-13 9:39:14

Ну как минимум Ваш конфиг, отличается от того что я Вам показал.
В вашу схему особо не вникал т.к. это из разряда найди 10 отличий ...

Еще раз проверте, а еще лучше повторите то что есть и все заработает ...

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-13 10:18:46

Если упустить всякие запрещающие правила.
все сводится к этим правилам

Код: Выделить всё


#обьявляем нат без deny_in
${fwcmd} nat 1 config ip Ext_ip same_ports


*****************************натим исходящую локалку

        ${fwcmd} add 150 nat 1 ip from 192.168.1.0/24 to any out via ${wan_int}
это правило отрабатывает норм.

#*****************************натим входящие пакеты

        ${fwcmd} add 200 nat 1 ip from any to Externall_ip in via ${wan_int}

вот тут проблема. не работает!!!
тобишь пакеты доходят и дальше ничего.


#****************************тут правила до самого сервера
они норм работают.


        ${fwcmd} add 400 add pass ip from me to any out via ${wan_int}

        ${fwcmd} add 410 add pass gre from me to any out via ${wan_int}

        ${fwcmd} add 420 add pass tcp from "table(2)" 1723 to me in via ${wan_int}

        ${fwcmd} add 430 add pass gre from "table(2)" to me in via ${wan_int}

Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

Аватара пользователя
kharkov_max
капитан
Сообщения: 1861
Зарегистрирован: 2008-10-03 14:56:40

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение kharkov_max » 2013-11-13 10:39:49

Ну да это так, все сводится к этим правилам.

Теперь найдите отличия, от моих правил )))

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-13 11:34:54

kharkov_max писал(а):Ну да это так, все сводится к этим правилам.

Теперь найдите отличия, от моих правил )))
скиньте точный готовый конфиг. без лишних правил запретов. именно эту часть.
Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

Аватара пользователя
kharkov_max
капитан
Сообщения: 1861
Зарегистрирован: 2008-10-03 14:56:40

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение kharkov_max » 2013-11-13 12:04:26

Код: Выделить всё

${fw} nat 1 config ip ${ext_gateway_ip} same_ports

# =============Разрешаем шлюзу создавать VPN подключения ================
${fw} add allow tcp from ${ext_gateway_ip} to any 1723         out via ${ext_if}
${fw} add allow gre from ${ext_gateway_ip} to table\(5\)       out via ${ext_if}


${fw} add allow tcp from any  1723       to ${ext_gateway_ip}   in via ${ext_if}
${fw} add allow gre from table\(5\)      to ${ext_gateway_ip}   in via ${ext_if}

${fw} add allow all from { 192.168.0.1,192.168.0.2 } to any out via mpd5
${fw} add allow all from any to { 192.168.0.1,192.168.10.2 }  in via mpd5
# ========================================================================

# ====================== NAT VPN в инет ======================================================
${fw} add nat 1 tag 8 tcp from table\(3\) to any 1723        out recv ${int_if} xmit ${ext_if}
${fw} add nat 1 tag 8 gre from table\(3\) to any             out recv ${int_if} xmit ${ext_if}
${fw} add nat 1 tag 8 gre from ${ext_gateway_ip} to any      out via ${ext_if}
${fw} add allow tcp from ${ext_gateway_ip} to any 1723       out via ${ext_if} tagged 8
${fw} add allow gre from ${ext_gateway_ip} to any            out via ${ext_if} tagged 8

${fw} add nat 1 tag 8 tcp from any 1723 to ${ext_gateway_ip}  in via ${ext_if}
${fw} add nat 1 tag 8 gre from any to ${ext_gateway_ip}       in via ${ext_if}
${fw} add allow tcp from any 1723 to table\(3\)               in via ${ext_if} tagged 8
${fw} add allow gre from any to table\(3\)                    in via ${ext_if} tagged 8
# ============================================================================================
Вставте этот блок вместо своих правил, ну и конечно подправте под свои переменные и IP.

table5 - куда шлюз может строить VPN на внешние VPN серверы (мне так было нужно !!!)
table3 - кто из локальной сети может строить VPN наружу в инет
ext_gateway_ip - внешний IP, или несколько IP шлюза
mpd5 - VPN интерфейс который который поднял шлюз с внешним VPN сервером.

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-13 12:08:49

подождите вы говорили что правила ната должны быть первыми. а потом уже разрешение для сервера.
Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

Аватара пользователя
CTOPMbI4
прапорщик
Сообщения: 482
Зарегистрирован: 2008-05-02 20:20:47
Откуда: Made in Russia

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение CTOPMbI4 » 2013-11-13 12:15:06

у вас в этом конфиге наоборот. сначала правила для шлюза а потом уже нат.
вся проблема заключается именно в входящем пакете. так как в нем содержится
ип адрес сервера в качестве dst ip.

цитирую вас в вашей статье.
Правила nat фильтрации должны быть первыми, потом правила для mpd5 клиента, а потом правила для mpd5 сервера.
Таким образом возврящаясь от сервера пакет для mpd5 клиента попадает в nat (т.к. он первый в правилах), nat видит что у него нет исходящего пакета, пакет не натит, но пропускает по правилам дальше. Далее пакет попадает в правила для mpd5 клиента.
Для этого нужно поставить параметр one_pass=0 в ноль
таким образом пакет пойдет на след правило после ната. и тут уже можно для него подставить нужные правила.
Настроил именно как вы сказали. Но не заработало.
Либо я что то не понимаю.
Последний раз редактировалось CTOPMbI4 2013-11-13 12:16:13, всего редактировалось 1 раз.
Это почти неподвижности мука
Мчаться куда то со скоростью звука,
зная преакрасно, что есть уже где то
Некто
Летящий
Со скорости
Света!

Аватара пользователя
kharkov_max
капитан
Сообщения: 1861
Зарегистрирован: 2008-10-03 14:56:40

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение kharkov_max » 2013-11-13 12:16:03

CTOPMbI4 писал(а):подождите вы говорили что правила ната должны быть первыми. а потом уже разрешение для сервера.
Да, вы правы.
Глянул только что рабочий конфиг там такой порядок.

Код: Выделить всё

${fw} nat 1 config ip ${ext_gateway_ip} same_ports

# ====================== NAT VPN в инет ======================================================
${fw} add nat 1 tag 8 tcp from table\(3\) to any 1723        out recv ${int_if} xmit ${ext_if}
${fw} add nat 1 tag 8 gre from table\(3\) to any             out recv ${int_if} xmit ${ext_if}
${fw} add nat 1 tag 8 gre from ${ext_gateway_ip} to any      out via ${ext_if}
${fw} add allow tcp from ${ext_gateway_ip} to any 1723       out via ${ext_if} tagged 8
${fw} add allow gre from ${ext_gateway_ip} to any            out via ${ext_if} tagged 8

${fw} add nat 1 tag 8 tcp from any 1723 to ${ext_gateway_ip}  in via ${ext_if}
${fw} add nat 1 tag 8 gre from any to ${ext_gateway_ip}       in via ${ext_if}
${fw} add allow tcp from any 1723 to table\(3\)               in via ${ext_if} tagged 8
${fw} add allow gre from any to table\(3\)                    in via ${ext_if} tagged 8
# ============================================================================================

# =============Разрешаем шлюзу создавать VPN подключения ================
${fw} add allow tcp from ${ext_gateway_ip} to any 1723         out via ${ext_if}
${fw} add allow gre from ${ext_gateway_ip} to table\(5\)       out via ${ext_if}


${fw} add allow tcp from any  1723       to ${ext_gateway_ip}   in via ${ext_if}
${fw} add allow gre from table\(5\)      to ${ext_gateway_ip}   in via ${ext_if}

${fw} add allow all from { 192.168.0.1,192.168.0.2 } to any out via mpd5
${fw} add allow all from any to { 192.168.0.1,192.168.10.2 }  in via mpd5
# ========================================================================

# ============== Правила для VPN сервера, если нужно =======================

# =======================================================================
Сори за неточность, а Вам респект за бдительность.

Аватара пользователя
kharkov_max
капитан
Сообщения: 1861
Зарегистрирован: 2008-10-03 14:56:40

Re: kernel nat ipfw VPN PPTP

Непрочитанное сообщение kharkov_max » 2013-11-13 12:16:45

цитирую вас в вашей статье.
Это не статья а просто записка, мысли в слух .... ))))