Huawei AR161FG-L + PfSense 2.6.0 - ipsec s2s
-
Добрый день участники.
Цель: получить соединение site-to-site из аппаратного маршрутизатора Huawei и PfSense.
Проблема в данный момент заключатеся в том, что через успешно установленный туннель ipsec (режим tunnel policy, ipv4) трафик ходит только в одну сторону, из сети со стороны Huawei AR в сторону сети с PfSense. Тестировал к примеру iperf3. Прошу помочь в решении проблемы. Что нужно предоставить уважаемым участникам сообщества?
Конфиг Huawei прилагаю.
[router001-k85]display current-configuration
[V200R010C10SPC700]sysname router001-k85
pki set-certificate expire-prewarning 90
drop illegal-mac alarm
vlan batch 3 to 4
firewall log statistics enable
firewall log blacklist enable
firewall log session enable
firewall log defend enable
firewall log packet-filter enablefirewall statistics system enable
authentication-profile name default_authen_profile
authentication-profile name dot1x_authen_profile
authentication-profile name mac_authen_profile
authentication-profile name portal_authen_profile
authentication-profile name dot1xmac_authen_profile
authentication-profile name multi_authen_profiledns resolve
dns server 192.168.22.1
dns proxy enabledhcp enable
vlan 3
description lan_netradius-server template default
pki realm default
certificate-check nonessl policy default_policy type server
pki-realm default
version tls1.0 tls1.1
ciphersuite rsa_aes_128_cbc_sha ecdhe_rsa_aes128_gcm_sha256 ecdhe_rsa_aes256_gcm_sha384acl name GigabitEthernet0/0/4 2999
rule 5 permitacl number 3980
description Allow 2 Lan
rule 30 permit icmp
rule 40 permit ip
acl number 3990
description allow to Local Zone
rule 25 permit icmp source 192.168.22.200 0
rule 30 permit ip source 192.168.22.200 0
acl name b_GigabitEthernet0/0/4_1 3998
rule 5 permit ip source 10.9.30.0 0.0.0.255 destination 10.9.20.0 0.0.0.255ipsec proposal branch_p1
esp authentication-algorithm sha2-256
esp encryption-algorithm aes-256ike proposal default
encryption-algorithm aes-256
dh group14
authentication-algorithm sha2-256
authentication-method pre-share
integrity-algorithm hmac-sha2-256
prf hmac-sha2-256
ike proposal 1
encryption-algorithm aes-256
dh group14
authentication-algorithm sha2-256
authentication-method pre-share
integrity-algorithm hmac-sha2-256
prf hmac-sha2-256ike peer branch_p1
undo version 1
pre-shared-key cipher %^%#YUt.SxodW1!oHd;n,kt>,S&[6@0M3(+7m6)V#{&Z%^%#
ike-proposal 1
remote-id-type ip
remote-address 192.168.22.200
rsa encryption-padding oaep
rsa signature-padding pss
ikev2 authentication sign-hash sha2-256ipsec policy branch_p1 1 isakmp
security acl 3998
ike-peer branch_p1
proposal branch_p1
route inject dynamicfree-rule-template name default_free_rule
portal-access-profile name portal_access_profile
aaa
authentication-scheme default
authentication-scheme radius
authentication-mode radius
authorization-scheme default
accounting-scheme default
domain default
authentication-scheme default
domain default_admin
authentication-scheme default
local-user admin password irreversible-cipher $1a$U6prJ*`.o;$4"8JJ@9M.$xA'054AJ2'J}7L.i"-BCdO}e/wD!MD$ idle-timeout 20 0
local-user admin privilege level 15
local-user admin service-type terminal httpweb
firewall zone wan
priority 1firewall zone lan
priority 10firewall zone Local
firewall interzone lan wan
firewall enablefirewall interzone Local wan
firewall enable
packet-filter 3990 inboundfirewall interzone Local lan
firewall enable
packet-filter 3980 inboundinterface Vlanif3
ip address 10.9.30.254 255.255.255.0
zone laninterface GigabitEthernet0/0/0
port link-type access
port default vlan 3interface GigabitEthernet0/0/1
port link-type access
port default vlan 3interface GigabitEthernet0/0/2
port link-type access
port default vlan 3interface GigabitEthernet0/0/3
port link-type access
port default vlan 3interface GigabitEthernet0/0/4
tcp adjust-mss 1200
ip address 192.168.22.100 255.255.255.0
nat outbound 2999
zone wan
ipsec policy branch_p1interface GigabitEthernet0/0/5
description VirtualPort
shutdowninterface Cellular0/0/0
zone waninterface Cellular0/0/1
zone waninterface NULL0
info-center timestamp log format-date
snmp-agent local-engineid 800007DB034CF95D20A84D
set web login-style simple
http secure-server ssl-policy default_policy
http server enable
http secure-server enableip route-static 0.0.0.0 0.0.0.0 GigabitEthernet0/0/4 192.168.22.1
fib regularly-refresh disable
user-interface con 0
authentication-mode aaa
user-interface vty 0
authentication-mode aaa
user privilege level 15
user-interface vty 1 4dot1x-access-profile name dot1x_access_profile
mac-access-profile name mac_access_profile
ops
autostart
secelog
return
-
конфиг PfSense
config-pfSense.home.arpa-20230122135244.xml -
Добрый день
я бы действовал , на Вашем месте , так- Выбираем любой хост из сети 10.9.20.0/24 и запускаем бесконечный пинг в сторону любого хоста из сети 10.9.30.0/24
открываем консоль и смотрим , что происходит в этот момент на интерфейсе enc0
tcpdump -netti enc0
в идеале , должны наблюдать вот такую картину
tcpdump -netti enc0 host 192.168.200.155 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on enc0, link-type ENC (OpenBSD encapsulated IP), capture size 262144 bytes 1674461426.578692 (authentic,confidential): SPI 0x0fade217: 192.168.1.153 > 192.168.200.155: ICMP echo request, id 6921, seq 29, length 64 1674461426.618755 (authentic,confidential): SPI 0xc022a23f: 192.168.200.155 > 192.168.1.153: ICMP echo reply, id 6921, seq 29, length 64 1674461427.581814 (authentic,confidential): SPI 0x0fade217: 192.168.1.153 > 192.168.200.155: ICMP echo request, id 6921, seq 30, length 64 1674461427.730404 (authentic,confidential): SPI 0xc022a23f: 192.168.200.155 > 192.168.1.153: ICMP echo reply, id 6921, seq 30, length 64 1674461428.585254 (authentic,confidential): SPI 0x0fade217: 192.168.1.153 > 192.168.200.155: ICMP echo request, id 6921, seq 31, length 64 1674461429.002176 (authentic,confidential): SPI 0xc022a23f: 192.168.200.155 > 192.168.1.153: ICMP echo reply, id 6921, seq 31, length 64
если запрос есть , а ответа нет , смотрим , что происходит на wan интерфейсе в этот момент
tcpdump -netti em0 host 192.168.22.100
результат должен быть приблизительно таким
tcpdump -netti igb0 host 31.173.86.60 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on igb0, link-type EN10MB (Ethernet), capture size 262144 bytes 1674461615.615658 00:08:a2:0a:ff:72 > 00:90:1a:a3:be:e1, ethertype IPv4 (0x0800), length 178: 79.165.x.x.4500 > 31.173.86.60.26369: UDP-encap: ESP(spi=0x0fade217,seq=0x12b), length 136 1674461615.640211 00:90:1a:a3:be:e1 > 00:08:a2:0a:ff:72, ethertype IPv4 (0x0800), length 178: 31.173.86.60.26369 > 79.165.x.x.4500: UDP-encap: ESP(spi=0xc022a23f,seq=0xf9), length 136
если пакеты уходят , а ответа нет , надо разбираться со второй стороной туннеля
если пакеты не уходят , разбираемся с правилами файрвола (нет ли блокировок трафика ) - Выбираем любой хост из сети 10.9.20.0/24 и запускаем бесконечный пинг в сторону любого хоста из сети 10.9.30.0/24
-
Добрый.
@rnduser
Крутите nat и правила fw на пф.
Проверяйте с пом. трейсроута из сети за ПФ где затык.
Заходите в тг https://t.me/ru_pfsense -
@konstanti
У него с натом и \или правилами fw проблема 99% -
Добрый день. Благодрю за ответы.
С момента публикации моего поста, естественно перепробовал разные варианты, в том числе с использованием режима VTI и туннельного интерфейса L3.
Но ничего не удалось. Решил остановиться на первоначальном и самом простом (ага:)) варианте с использованием policy.
Можно вопрос по базовой настройке со стороны PfSense?- после добавления обеих фаз соединения, какие ещё манируляции обязательны?
- нужно ли добавлять GW с ip адресом другой стороны туннеля?
- нужно ли рукми добавлять маршрут в локальную сеть с противоположной стороной маршрута?
в данный момент определенно удалось одно:
- туннель установлен, в логах с обех сторон никаких ошибок
- трафик ходит со стороны Huawei на сам PfSense (Itself) и на хост его локально сети.
На этом всё ))
p.s. сейчас тестирую эту связку в "домашних" условиях, где оба устройства находятся в сети за NAT (бытовой роутер), но WAN - интерфейсы 192.168.22.100 и 192.168.22.200 - доступны прямо.
-
Вы попробовали сделать так , как я указал выше ?
У меня есть идея одна , но мне нужно понять , ходят ли пинги ? -
@konstanti ещё не успел.
сейчас всё сломаю, и настрою с нуля. и Huawei и PfSense.
причем на Huawei выполню базовую настройку Firewall и разнесу интерфейсы по зонам безопасности. -
@rnduser
Пока ничего не ломайте , попробуйте сделать то , что я написал -
@konstanti пожалуй снесу, т.к. последняя итерация включала в себя Firewall disable, с целью исключения блокировки входящего трафика на Huawei.
Благодарю за советы. Чуть позже отпишусь. -
@konstanti можете прокомментировать мои вопросы выше на счет "обязательных" настроек при режимы ipsec tunnel + policy ?
-
@rnduser
1 pfsense автоматически добавит правила на WAN интерфейсе (порты 900 и 4500)
2 как таковые доп настройки не нужны ( кроме правил на lan и IPSec интерфейсах )3 стат маршруты при IPSec не нужны ( IPSec работает на основе ловушек селекторов трафика) . в настройках хайвей вы используете для этого ACL
-
@konstanti по пунктам всё верно. читал документацию.
Но когда со стороны Huawei обращаешься в сторону PfSense, трафик хэндлится на WAN интерфейсе и отбрасывается по-дефолту. Т.е. приходится добавлять правило, разрешающее необходимый вид трафика от источника 192,168,22,100 (wan интерфейс huawei). Это нормальное поведение? -
@rnduser
не совсем понимаю вопрос
на wan интерфейсе PF должны присутствовать вот такие правилаВы говорите, что у Вас туннель устанавливается , это значит , что Фаза 1 и Фаза 2 на обеих сторонах туннеля настроены корректно ( настройки это тоже подтверждают)
Если бы Вы провели тест , который я Вам описал, многие вопросы отпали бы .
-
@konstanti пересобрал.
Теперь на PFSense не добавлял GW и Static route.
Трафик не ходит никуда.
-
@rnduser
1 Туннель поднимается ?
2 проверьте правила на Lan и IPsec интерфейсах PF - должно быть все разрешено ( по умолчанию , все запрещено)3 методику локализации поиска я Вам показал
-
@konstanti вот пинг с хоста за Хуавеем в сторону хоста за ПфСенсом
Message: 09:42:19 router001-k85 %%01FW-LOG/5/PACKET_FILTER(l)[76]:Packet filter permit: protocol=1, source-ip=10.9.30.220, source-port=1,destination-ip=10.9.20.220, destination-port=1, interzone-lan-wan outbound.**
-
Этот пинг доходит до назначения ?
Запустите tcpdump на PF и посмотрите, что происходит -
@konstanti said in Huawei AR161FG-L + PfSense 2.6.0 - ipsec s2s:
Этот пинг доходит до назначения ?
нет. с другой стороны тоже
-
@rnduser
Вам надо посмотреть , что происходит на PF ( на wan и enc0 интерфейсах)
Правила на Lan и IPsec интерфейсах PF проверили ?