BSDPORTAL.RU

На этом сайте обсуждаются вопросы использования ОС FreeBSD
 Портал  •  Статьи  •  Форум  •  Wiki  •  Поиск  •  FAQ  •  Обои  •   Официальная документация  •  Новые темы 

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 14 ] 
Автор Сообщение
 Заголовок сообщения: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Вс 04 окт, 2015 11:20 pm 
Не в сети

Зарегистрирован: Вс 02 авг, 2015 11:19 pm
Сообщения: 18
Здравствуйте коллеги.
Сам я не новичек в UNIX системах, но вот на днях столкнулся с непонятно проблемой.
Имею FreeBSD 10.0 х64 в качестве рабочего шлюза.
Инет через PPPoE. Поднят MPD5 для VPN клиентов по PPTP. И стоит SQUID+SAMS
Все исправно работает. Инет у всех на работе есть, фильтрация, клиенты по 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 коннект есть, но до локалки не достучаться.

Вроде все настроки идентичны, как на виртуалке, так и на рабочей машине.
И теперь я не пойму что за фигня такая.

Единственное осталось грешить на конфликт интерфейсов tun. Но это вроде смахивает на фантастику.

часть IPFW

Код:
$cmd add allow all from any to any via tun1
$cmd add allow all from any to ${extip} 1194 in via ${extif} keep-state
$cmd add allow all from 10.8.0.0/24 to ${LN} out via ${intif} keep-state


openvpn.conf

Код:
dev tun
server 10.8.0.0 255.255.255.0
keepalive 10 120
comp-lzo
persist-key
persist-tun


Помогите пожалуйста решить эту дилемму.
Спасибо.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Пн 05 окт, 2015 1:00 am 
Не в сети
Аватара пользователя

Зарегистрирован: Ср 23 июн, 2010 1:01 pm
Сообщения: 495
Маршруты на гостевой и на шлюзе?

_________________
Самурай без меча подобен самураю с мечом, но только без меча, однако как-будто с мечом, которого у него нет, но и без него он как с ним...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Пн 05 окт, 2015 11:29 am 
Не в сети

Зарегистрирован: Вс 02 авг, 2015 11:19 pm
Сообщения: 18
на шлюзе

netstat -rn

Код:
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




На гостевой


Вложения:
route.jpg
route.jpg [ 25.12 КБ | Просмотров: 10892 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Пн 05 окт, 2015 11:53 am 
Не в сети
Аватара пользователя

Зарегистрирован: Ср 23 июн, 2010 1:01 pm
Сообщения: 495
Какие IP у шлюза? У подсети, в которую необходим доступ? Где полные правила межсетевого экрана?

P.S.: Опять вангуем.

_________________
Самурай без меча подобен самураю с мечом, но только без меча, однако как-будто с мечом, которого у него нет, но и без него он как с ним...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Пн 05 окт, 2015 12:30 pm 
Не в сети

Зарегистрирован: Вс 02 авг, 2015 11:19 pm
Сообщения: 18
rc.conf

Код:
ifconfig_re1="inet 192.168.0.2 netmask 255.255.255.0"
ifconfig_re2="inet 192.168.1.2 netmask 255.255.255.0"
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"


т.е. 192.168.0.0/24 - это локалка, куда надо достучаться
192.168.0.2 - это к модему


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Пн 05 окт, 2015 12:35 pm 
Не в сети

Зарегистрирован: Вс 02 авг, 2015 11:19 pm
Сообщения: 18
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 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} 2001 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

${fwcmd} add 3000 allow all from any to any via ${LanIf}
${fwcmd} add 3100 allow all from ${LN} to any setup

${fwcmd} add 3200 allow tcp from any to any established




Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Пн 05 окт, 2015 12:36 pm 
Не в сети

Зарегистрирован: Вс 02 авг, 2015 11:19 pm
Сообщения: 18
netstat -rn

Код:
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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Пн 05 окт, 2015 12:52 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Ср 23 июн, 2010 1:01 pm
Сообщения: 495
Это при поднятом VPN?

_________________
Самурай без меча подобен самураю с мечом, но только без меча, однако как-будто с мечом, которого у него нет, но и без него он как с ним...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Пн 05 окт, 2015 1:57 pm 
Не в сети

Зарегистрирован: Вс 02 авг, 2015 11:19 pm
Сообщения: 18
нет.



Вот при поднятом:

Код:
Routing tables

Internet:
Destination        Gateway            Flags    Refs      Use  Netif Expire
default            84.201.225.100     UGS         0   232215   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      585    lo0
127.0.0.1          link#4             UH          0    13115    lo0
192.168.0.0/24     link#2             U           0   316964    re1
192.168.0.2        link#2             UHS         1        0    lo0
192.168.0.60       link#7             UH          0    11106    ng0
192.168.1.0/24     link#3             U           0      283    re2
192.168.1.2        link#3             UHS         0        0    lo0



Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Пн 05 окт, 2015 1:59 pm 
Не в сети

Зарегистрирован: Вс 02 авг, 2015 11:19 pm
Сообщения: 18
тоже самое по моему. Значит маршрут не поднимается?
Но ведь тоже самое и на виртуалках, и до локалки стучусь
странно


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Пн 19 окт, 2015 11:55 am 
Не в сети

Зарегистрирован: Вс 02 авг, 2015 11:19 pm
Сообщения: 18
В общем, такая ситуация. Все работает)
Перевел на tap интерфейс openvpn.

Но вот что выяснил:
Работает, работает, а потом примерно через 3-4 дня openvpn коннектится, но по RDP не пускает (в общем локалки снова нету)

Перезагружаю сервак - и все снова работает. И снова через 3-4 дня не работает.

ДУмал, что память что-то жрет. Перезапускал и выключал полностью apache22, mysql, squid (они жрали неплохо). Но это не помогло.
Только полный ребут.

Всего на серваке 2Gb RAM. Понимаю, что мало, но я не подумал, что так будет она расходываться.
По команде top в основном жрут apache22, mysql, squid

Вот у меня к вам вопрос:
Как можно выяснить, из-за чего не пускается пакеты через openvpn ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Пн 19 окт, 2015 12:54 pm 
Не в сети
Аватара пользователя

Зарегистрирован: Ср 23 июн, 2010 1:01 pm
Сообщения: 495
Проверяйте маршруты и межсетевой экран. Возможно какой-то динамический скрипт отрабатывает при дисконнектах и меняет маршруты. Также проверяйте конфигурационные файлы openvpn и маршруты в них, возможно один из клиентов при подключении меняет таблицу маршрутизации и пакеты уходят по другому маршруту.

_________________
Самурай без меча подобен самураю с мечом, но только без меча, однако как-будто с мечом, которого у него нет, но и без него он как с ним...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Пн 19 окт, 2015 1:15 pm 
Не в сети

Зарегистрирован: Вс 05 июн, 2005 4:19 pm
Сообщения: 3148
Откуда: Мезозой Пангея
VoxVeritas писал(а):
В общем, такая ситуация. Все работает)
Перевел на tap интерфейс openvpn.

Но вот что выяснил:
Работает, работает, а потом примерно через 3-4 дня openvpn коннектится, но по RDP не пускает (в общем локалки снова нету)

Перезагружаю сервак - и все снова работает. И снова через 3-4 дня не работает.

ДУмал, что память что-то жрет. Перезапускал и выключал полностью apache22, mysql, squid (они жрали неплохо). Но это не помогло.
Только полный ребут.

Всего на серваке 2Gb RAM. Понимаю, что мало, но я не подумал, что так будет она расходываться.
По команде top в основном жрут apache22, mysql, squid

Вот у меня к вам вопрос:
Как можно выяснить, из-за чего не пускается пакеты через openvpn ?



а на основном интерфейсе проскакивает такое?
<if>0: link state changed to UP
<if>0: link state changed to DOWN
?
у меня так openvpn отваливался и не восстанавливался, хотя все интерфейсы наместе и с виду живые - пришлось скриптом проверять конкретно линк и в случае его отсутствия - поочередно рестартовать сеть/интерфейсы, роутинг и сетевые сервисы.

_________________
Ми можемо все - що здатні собі уявити!
uname -a
Linux nonamehost 5.2.11-zen-my-ksm-muqss+ #1 ZEN SMP Thu Aug 29 14:11:55 EEST 2019 x86_64 x86_64 x86_64 GNU/Linux


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: OpenVPN + IPFW Kernel NAT
СообщениеДобавлено: Пн 19 окт, 2015 2:10 pm 
Не в сети

Зарегистрирован: Вс 02 авг, 2015 11:19 pm
Сообщения: 18
Отвечу позже, потому что message.log ротируется часто, а он сам большой из-за ошибок sams2 . Сейчас вот увеличил объем для ротации и время.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 14 ] 

Часовой пояс: UTC + 4 часа


Кто сейчас на конференции

Зарегистрированные пользователи: Bing [Bot], Google [Bot]


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Создано на основе phpBB® Forum Software © phpBB Group
Русская поддержка phpBB
Яндекс.Метрика