|
Компьютерный форум OSzone.net » Linux и FreeBSD » Программное обеспечение Linux и FreeBSD » OpenVPN + IPFW Kernel NAT |
|
OpenVPN + IPFW Kernel NAT
|
Новый участник Сообщения: 2 |
Профиль | Отправить PM | Цитировать Здравствуйте коллеги.
Сам я не новичек в UNIX системах, но вот на днях столкнулся с непонятно проблемой. Имею FreeBSD 10.0 х64 в качестве рабочего шлюза в компании. Инет через PPPoE. Поднят MPD5 для VPN клиентов по PPTP. И стоит SQUID Все исправно работает. Инет у всех на работе есть, фильтрация, клиенты по VPN подключаются и т.д. Но есть один сотрудник, который живет в Польше. И он не может подключиться по VPN. Наверное провайдеры там блокируют GRE. Было решение поднять на шлюзе OpenVPN. Установил, настроил. Коннект происходит. Но вот LAN в офисе не доступен. Пингуется только 10.8.0.1 Что только не делал: и различные правила в IPFW и варианты директив push, route в конфиге openvpn.conf Но вот что самое главное. У меня дома развернута на виртуалке LAN сеть для теста. Там у меня 3 гостевых системы. Первая FreeBSD, вторая CentOS, третья Винда FreeBSD 10.1 х86 Настроен IPFW + Kernel NAT. И установлен и настроен OpenVPN. Так вот. C моей хостовой машины коннект идет на виртуальную FreeBSD и далее я могу подключиться по RDP к Винде. А вот на FreeBSD в офисе коннект есть, но до локалки не достучаться. Вроде все настроки идентичны (ipfw, openvpn.conf), как на виртуалке, так и на рабочей машине. И теперь я не пойму что за фигня такая. Единственное осталось грешить на конфликт интерфейсов tun. Но это вроде смахивает на фантастику. IPFW #!/bin/sh fwcmd="ipfw" LanIf="re1" LN="192.168.0.0/24" LanIp="192.168.0.2" WanIf="tun0" WanIp="84.201.232.226" ${fwcmd} -f flush ${fwcmd} add 1 allow ip from any to any via lo0 ${fwcmd} add 300 deny ip from any to 127.0.0.0/8 ${fwcmd} add 301 deny ip from 127.0.0.0/8 to any ${fwcmd} add 319 allow all from any to me 5192 via tun0 setup limit src-addr 2 #${fwcmd} add 350 allow all from any to any via ${LanIf} keep-state #${fwcmd} add 351 allow all from any to any via ${WanIf} keep-state ${fwcmd} add 400 allow icmp from any to any icmptypes 0,8,11 ${fwcmd} add 411 allow all from 192.168.1.0/24 to any via re1 ${fwcmd} add 412 allow all from any to 192.168.1.0/24 via re2 setup keep-state ${fwcmd} add 500 check-state ############################# DNS ${fwcmd} add 700 allow udp from any to ${WanIp} 53 in via ${WanIf} ${fwcmd} add 710 allow udp from ${WanIp} 53 to any out via ${WanIf} ${fwcmd} add 712 allow udp from any 53 to ${WanIp} in via ${WanIf} ${fwcmd} add 714 allow udp from ${WanIp} to any 53 out via ${WanIf} ############################## DNS ############################### VPN SERVER ${fwcmd} add 800 allow all from any to me 1723 ${fwcmd} add 801 allow all from me 1723 to any ${fwcmd} add 802 allow gre from any to any ${fwcmd} add 820 allow all from any to any via tun9 ${fwcmd} add 821 allow all from any to ${WanIp} 1194 in via ${WanIf} setup keep-state ${fwcmd} add 822 allow all from 10.8.0.0/24 to ${LN} out via ${LanIf} setup keep-state ############################ VPN SERVER #${fwcmd} add 900 allow all from any to any via ${LanIf} keep-state #${fwcmd} add 901 allow all from any to any via ${WanIf} keep-state ############################ SQUID ${fwcmd} add 950 allow tcp from me to any out via ${LanIf} keep-state uid squid ${fwcmd} add 951 fwd 127.0.0.1,3121 tcp from ${LN} to any 21,80,443 out via ${WanIf} ############################ NAT ${fwcmd} add 984 allow all from ${WanIp} to any out via ${WanIf} keep-state ${fwcmd} add 985 allow all from ${LN} to any in via ${LanIf} ${fwcmd} add 987 nat 1 all from ${LN} to any out via ${WanIf} ${fwcmd} add 989 nat 1 all from any to ${WanIp} in via ${WanIf} ${fwcmd} add 990 allow all from any to ${LN} out via ${LanIf} ${fwcmd} nat 1 config log if ${WanIf} deny_in reset same_ports unreg_only ############################# NAT ############################# NAT 2 #${fwcmd} add 1003 nat 2 all from 10.8.0.0/24 to any #${fwcmd} add 1006 nat 2 all from any to ${WanIp} #${fwcmd} nat 2 config log if ${WanIp} ############################# NAT 2 ############################# NAT 3 #${fwcmd} add 1008 nat 2 all from 10.8.0.0/24 to any #${fwcmd} add 1009 nat 2 all from any to 10.8.0.0/24 #${fwcmd} nat 2 config log if tun9 ############################# NAT 3 ${fwcmd} add 3000 allow all from any to any via ${LanIf} ${fwcmd} add 3100 allow all from ${LN} to any setup #${fwcmd} add 3150 allow all from any to any via ${LanIf} keep-state #${fwcmd} add 3151 allow all from any to any via ${WanIf} keep-state ${fwcmd} add 3200 allow tcp from any to any established openvpn.conf port 1194 proto tcp dev tun9 server 10.8.0.0 255.255.255.0 # добавлял push - все-равно не работает, тем более на виртуалке и без этого работает ;push "route 192.168.0.0 255.255.255.0" keepalive 10 120 comp-lzo persist-key persist-tun verb 3 ifconfig_re1="inet 192.168.0.2 netmask 255.255.255.0" # To LAN ifconfig_re2="inet 192.168.1.2 netmask 255.255.255.0" # To Modem gateway_enable="YES" ppp_enable="YES" ppp_mode="ddial" ppp_profile="tcm" firewall_enable="YES" firewall_nat_enable="YES" firewall_script="/etc/ipfw" firewall_logging="YES" mpd_enable="YES" openvpn_enable="YES" Routing tables Internet: Destination Gateway Flags Refs Use Netif Expire default 84.201.225.100 UGS 0 146452 tun0 10.8.0.0/24 10.8.0.2 UGS 0 0 tun9 10.8.0.1 link#6 UHS 0 0 lo0 10.8.0.2 link#6 UH 0 0 tun9 84.201.225.100 link#5 UHS 0 0 tun0 84.201.232.226 link#5 UHS 0 518 lo0 127.0.0.1 link#4 UH 0 2647 lo0 192.168.0.0/24 link#2 U 0 204874 re1 192.168.0.2 link#2 UHS 1 0 lo0 192.168.0.60 link#7 UH 0 9348 ng0 192.168.1.0/24 link#3 U 0 236 re2 192.168.1.2 link#3 UHS 0 0 lo0 re1: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=8209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,LINKSTATE> ether ec:22:80:eb:9f:f7 inet 192.168.0.2 netmask 0xffffff00 broadcast 192.168.0.255 media: Ethernet autoselect (none) status: no carrier re2: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500 options=8209b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,WOL_MAGIC,LINKSTATE> ether 38:2c:4a:bf:31:f1 inet 192.168.1.2 netmask 0xffffff00 broadcast 192.168.1.255 media: Ethernet autoselect (100baseTX <full-duplex>) status: active lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384 options=600003<RXCSUM,TXCSUM,RXCSUM_IPV6,TXCSUM_IPV6> inet 127.0.0.1 netmask 0xff000000 tun0: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1492 options=80000<LINKSTATE> inet 84.201.232.226 --> 84.201.225.100 netmask 0xffffffff Opened by PID 822 tun9: flags=8051<UP,POINTOPOINT,RUNNING,MULTICAST> metric 0 mtu 1500 options=80000<LINKSTATE> inet 10.8.0.1 --> 10.8.0.2 netmask 0xffffffff Opened by PID 1345 ng0: flags=88d1<UP,POINTOPOINT,RUNNING,NOARP,SIMPLEX,MULTICAST> metric 0 mtu 1396 inet 192.168.0.2 --> 192.168.0.60 netmask 0xffffffff Помогите пожалуйста решить эту дилемму. Спасибо. |
|
Отправлено: 23:38, 06-10-2015 |
Новый участник Сообщения: 2
|
Профиль | Отправить PM | Цитировать В общем, такая ситуация. Все работает)
Перевел на tap интерфейс openvpn. Но вот что выяснил: Работает, работает, а потом примерно через 3-4 дня openvpn коннектится, но по RDP не пускает (в общем локалки снова нету) Перезагружаю сервак - и все снова работает. И снова через 3-4 дня не работает. ДУмал, что память что-то жрет. Перезапускал и выключал полностью apache22, mysql, squid (они жрали неплохо). Но это не помогло. Только полный ребут. Всего на серваке 2Gb RAM. Понимаю, что мало, но я не подумал, что так будет она расходываться. По команде top в основном жрут apache22, mysql, squid Вот у меня к вам вопрос: Как можно выяснить, из-за чего не пускается пакеты через openvpn ? |
Отправлено: 10:57, 19-10-2015 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
FreeBSD - Настройка ipfw+nat | Clod57 | Общий по FreeBSD | 1 | 29-12-2014 14:02 | |
FreeBSD - [решено] ipfw+nat | rip88 | Общий по FreeBSD | 1 | 07-10-2013 16:56 | |
FreeBSD - ipfw + NAT | FloID1986 | Общий по FreeBSD | 1 | 04-05-2012 18:02 | |
FreeBSD - Задача с IPFW+NAT | zlx | Общий по FreeBSD | 3 | 10-01-2010 00:25 | |
FreeBSD - [решено] IPFW+NAT+MPD | mss_sarvarbek | Общий по FreeBSD | 14 | 27-02-2009 21:11 |
|