Скачал вчера FreeBSD-11.0-CURRENT-amd64-20150421-r281832-disc1.iso Сегодня установил. Что касается IPSEC, то в ядре его нет. Ладно, пересобрал ядро.
Вот это все опции, что добавил в конфиг от GENERIC: options IPSEC options IPSEC_NAT_T device crypto device enc device pf device pflog В системе правил pf нет (просто pf в ядро включил). Есть несколько виртуалок - FreeBSD 9.3 (racoon), 10.1 (strongswan), 11.0 (strongswan), pfsense 2.2.2 (strongswan) У всех по две сетевухи. На вторых сетевых разная адресация и разные виртуальные свичи. ipsec-туннели построены меджу этими 4-мя хостами в разных комбинациях. Везде все хорошо - в плане туннели поднимаются, пакеты в туннелях ходят между разными хостами. Кроме FreeBSD 11.0 Здесь туннели поднимаются со всеми хостами. Но пакеты в туннеле ходят только с pfsense. strongswan был установлен пакаджем. Поставил из портов - ситуация не изменилась. До натирования дело не дошло. > -----Original Message----- > From: Andrey V. Elsukov [mailto:[email protected]] > Sent: Friday, April 24, 2015 8:41 AM > To: Golub Mikhail; [email protected] > Subject: Re: [freebsd] IPsec VPN and NAT > > On 24.04.2015 08:09, Golub Mikhail wrote: > >>> В pfsense есть два параметра: > >>> net.inet.ip.pfil.inbound: pf > >>> net.inet.ip.pfil.outbound: pf > >>> > >>> На 10.1, 9.3, 8.4, 7* - таких oid-ов нет. > >> > >> Судя по названию, эти оиды регулируют порядок или необходимость > >> запуска pfil хуков на input/output. Т.е. к сути дела не имеют. > > > > Экспериментально проверил, что имеют (могу ошибаться). > > Когда выполнил команду - пакеты в ipsec-туннель перестали > заворачиваться. > > sysctl net.inet.ip.pfil.inbound="" > > Могу предположить, что таким образом вы убрали пакетный фильтр с > обработки входящих пакетов. > Пару лет назад andre@ кажется предлагал подобные патчи, где можно > было > через sysctl выбирать порядок в котором будут вызываться фильтры. Но > тогда они не нашли сторонников, или реализация была неочень. В > pfsense > видимо нашли. > > >> А есть у вас возможность попробовать head/? > > > > Скачал вчера, пробую. > > > >> По сути вам нужно включить filtertunnel, настроить filter_mask так, > >> чтобы исходящий пакет отправлялся в NAT до инкапсуляции, а > входящий > >> после отрезания внешнего заголовка (см. if_enc(4)). > > > > В pfsense net.inet.ipsec.filtertunnel=0 > > У них там и реализация AES-GCM есть в ipsec, и strongswan патченный > для > этого. Ещё и ipsec можно включать через sysctl. eri@ ещё полгода назад > хотел это всё в базу внедрить. Даже от FF был грант прошлой осенью > про > IPSec. Но что-то не задалось у него... > > -- > WBR, Andrey V. Elsukov
