Здравствуйте,У меня встала задача поднять ipsec vpn тунель между двумя сетями (FreeBSD <--> Ubuntu).
Сейчас на стороне FreeBSD всё работает, тунель поднимается, со стороны FreeBSD есть пинг до внутренней сети ubuntu.
Проблемы на стороне Ubuntu, пинг который должен быть направлен в vpn улетает в интернет (в никуда).
Интернет на ubuntu получается через pppoe соединение.
Раздаётся в сеть через nat поднятым iptablesВ фаерволе никаких заглушек нет, специально всё открыл чтобы добить вопрос.
Ниже конфиги и логи.
Нужны ли какие то специфичные маршруты?
Или ещё что.Никак не могу понять почему нет пинга от сети ubuntu к FreeBSD, почему пакеты летят в интерент, а не заворачиваются в vpn.
Буду признателен за помощь.
aa.aa.aa.aa - внейший ip ubuntu
bb.bb.bb.bb - внешний ip FreeBSD
aa.aa.0.0/21 - внутренняя подсеть ubuntu
bb.bb.0.0/21 - внутренняя подсеть FreeBSDКонфиги применяются командами:
setkey -f /etc/racoon/setkey.conf
racoon -f /etc/racoon/racoon.conf -l /var/log/racoon.logКонфиг racoon
nano /etc/racoon/racoon.conf
# Configuration file generated by Open vSwitch
#
# Do not modify by hand!path pre_shared_key "/etc/racoon/psk.txt";
path certificate "/etc/racoon/certs";# Configuration file generated by Open vSwitch
#
# Do not modify by hand!path pre_shared_key "/etc/racoon/psk.txt";
path certificate "/etc/racoon/certs";
# "padding" defines some parameter of padding. You should not touch these.
padding {
maximum_length 20; # maximum padding length.
randomize off; # enable randomize length.
strict_check off; # enable strict check.
exclusive_tail off; # extract last one octet.
}
# if no listen directive is specified, racoon will listen to all available interface addresses.
listen {isakmp aa.aa.aa.aa [500];
}
# Specification of default various timer.
timer {
# These value can be changed per remote node.
counter 5; # maximum trying count to send.
interval 20 sec; # maximum interval to resend.
persend 1; # the number of packets per a send.
# timer for waiting to complete each phase.
phase1 30 sec;
phase2 15 sec;
}
remote anonymous {
exchange_mode main,aggressive;
#exchange_mode aggressive,main;
doi ipsec_doi;
# nat_traversal on;
situation identity_only;
#my_identifier address;
# my_identifier user_fqdn "sakane@kame.net"; peers_identifier user_fqdn "sakane@kame.net";
#certificate_type x509 "mycert" "mypriv";
nonce_size 16;
lifetime time 86400 sec; # sec,min,hour
initial_contact on;
# support_mip6 on;
support_proxy on;
proposal_check obey; # obey, strict or claim
proposal {
encryption_algorithm 3des;
hash_algorithm sha1;
authentication_method pre_shared_key ;
dh_group 2 ;
}
}sainfo anonymous {
pfs_group 1;
lifetime time 3600 sec;
encryption_algorithm 3des ;
authentication_algorithm hmac_sha1;
compression_algorithm deflate ;
}
Конфиг Ipsec-toolsnano /etc/racoon/setkey.conf
#!/sbin/setkey -fflush;
spdflush;# VPN
spdadd bb.bb.0.0/21 aa.aa.0.0/21 any -P in ipsec esp/tunnel/bb.bb.bb.bb-aa.aa.aa.aa/require;
spdadd aa.aa.0.0/21 bb.bb.0.0/21 any -P out ipsec esp/tunnel/aa.aa.aa.aa-bb.bb.bb.bb/require;
При установке тунеля видим:setkey -D
aa.aa.aa.aa bb.bb.bb.bb
esp mode=tunnel spi=93166794(0x058d9cca) reqid=0(0x00000000)
E: 3des-cbc dd145ec0 67802f1f ca952eef 841606cf eebda441 6724abf0
A: hmac-sha1 af9bf8ac 04413884 9f099127 bad00d24 ba3e6c7c
seq=0x00000000 replay=4 flags=0x00000000 state=mature
created: Jun 9 13:54:08 2011 current: Jun 9 14:32:37 2011
diff: 2309(s) hard: 3600(s) soft: 2880(s)
last: Jun 9 13:54:09 2011 hard: 0(s) soft: 0(s)
current: 504(bytes) hard: 0(bytes) soft: 0(bytes)
allocated: 6 hard: 0 soft: 0
sadb_seq=1 pid=21908 refcnt=0
bb.bb.bb.bb aa.aa.aa.aa
esp mode=tunnel spi=31011214(0x01d9318e) reqid=0(0x00000000)
E: 3des-cbc 0fda201e 72d48dec e47739b4 8b9fd251 5d429ee1 e4f1dc20
A: hmac-sha1 9e149b15 82978f9a 6fed8a88 43b54556 f20ec95e
seq=0x00000000 replay=4 flags=0x00000000 state=mature
created: Jun 9 13:54:08 2011 current: Jun 9 14:32:37 2011
diff: 2309(s) hard: 3600(s) soft: 2880(s)
last: Jun 9 13:54:09 2011 hard: 0(s) soft: 0(s)
current: 504(bytes) hard: 0(bytes) soft: 0(bytes)
allocated: 6 hard: 0 soft: 0
sadb_seq=0 pid=21908 refcnt=0Лог:
tail /var/log/racoon.log | ccze --mode ansi
2011-06-09 13:40:11: INFO: unsupported PF_KEY message REGISTER
2011-06-09 13:40:11: INFO: unsupported PF_KEY message REGISTER
2011-06-09 13:40:11: INFO: unsupported PF_KEY message REGISTER
2011-06-09 13:54:07: INFO: respond new phase 1 negotiation: aa.aa.aa.aa[500]<=>83.220.61.226[500]
2011-06-09 13:54:07: INFO: begin Identity Protection mode.
2011-06-09 13:54:07: INFO: received Vendor ID: DPD
2011-06-09 13:54:07: INFO: ISAKMP-SA established aa.aa.aa.aa[500]-83.220.61.226[500] spi:1f12b80dfe8160aa:8ad815b5b962dec9
2011-06-09 13:54:08: INFO: respond new phase 2 negotiation: aa.aa.aa.aa[500]<=>bb.bb.bb.bb[500]
2011-06-09 13:54:08: INFO: IPsec-SA established: ESP/Tunnel bb.bb.bb.bb[0]->aa.aa.aa.aa[0] spi=31011214(0x1d9318e)
2011-06-09 13:54:08: INFO: IPsec-SA established: ESP/Tunnel aa.aa.aa.aa[500]->bb.bb.bb.bb[500] spi=93166794(0x58d9cca)
>[оверквотинг удален]
> 2011-06-09 13:54:07: INFO: respond new phase 1 negotiation: aa.aa.aa.aa[500]<=>83.220.61.226[500]
> 2011-06-09 13:54:07: INFO: begin Identity Protection mode.
> 2011-06-09 13:54:07: INFO: received Vendor ID: DPD
> 2011-06-09 13:54:07: INFO: ISAKMP-SA established aa.aa.aa.aa[500]-83.220.61.226[500]
> spi:1f12b80dfe8160aa:8ad815b5b962dec9
> 2011-06-09 13:54:08: INFO: respond new phase 2 negotiation: aa.aa.aa.aa[500]<=>bb.bb.bb.bb[500]
> 2011-06-09 13:54:08: INFO: IPsec-SA established: ESP/Tunnel bb.bb.bb.bb[0]->aa.aa.aa.aa[0]
> spi=31011214(0x1d9318e)
> 2011-06-09 13:54:08: INFO: IPsec-SA established: ESP/Tunnel aa.aa.aa.aa[500]->bb.bb.bb.bb[500]
> spi=93166794(0x58d9cca)и чито не работает? тунель устанавливается.
tcpdump что говорит? пакеты иyкапсулированные летят?конфиг со сторону фряхи?
>[оверквотинг удален]
>> 2011-06-09 13:54:07: INFO: ISAKMP-SA established aa.aa.aa.aa[500]-83.220.61.226[500]
>> spi:1f12b80dfe8160aa:8ad815b5b962dec9
>> 2011-06-09 13:54:08: INFO: respond new phase 2 negotiation: aa.aa.aa.aa[500]<=>bb.bb.bb.bb[500]
>> 2011-06-09 13:54:08: INFO: IPsec-SA established: ESP/Tunnel bb.bb.bb.bb[0]->aa.aa.aa.aa[0]
>> spi=31011214(0x1d9318e)
>> 2011-06-09 13:54:08: INFO: IPsec-SA established: ESP/Tunnel aa.aa.aa.aa[500]->bb.bb.bb.bb[500]
>> spi=93166794(0x58d9cca)
> и чито не работает? тунель устанавливается.
> tcpdump что говорит? пакеты иyкапсулированные летят?
> конфиг со сторону фряхи?конфиг с фряхи аналогичный только ipsec^
spdadd bb.bb.0.0/2110.5.0.0/21 any -P out ipsec esp/tunnel/bb.bb.bb.bb-aa.aa.aa.aa/require;
spdadd aa.aa.0.0/21 bb.bb.0.0/21any -P in ipsec esp/tunnel/aa.aa.aa.aa-bb.bb.bb.bb/require;со стороны ubuntu:
eth1 - внутрений интерфейсtcpdump -n -i eth1 host bb.bb.0.1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth1, link-type EN10MB (Ethernet), capture size 65535 bytes
16:39:22.821120 IP aa.aa.0.5 > bb.bb.0.1: ICMP echo request, id 768, seq 15627, length 40
16:39:28.321286 IP aa.aa.0.5 > bb.bb.0.1: ICMP echo request, id 768, seq 15883, length 40
16:39:33.821203 IP aa.aa.0.5 > bb.bb.0.1: ICMP echo request, id 768, seq 16139, length 40
16:39:39.321127 IP aa.aa.0.5 > bb.bb.0.1: ICMP echo request, id 768, seq 16395, length 40ppp0 - pppoe соединение с интернетом.
tcpdump -n -i ppp0 host bb.bb.0.1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on ppp0, link-type LINUX_SLL (Linux cooked), capture size 65535 bytes
16:41:07.321056 IP aa.aa.aa.aa > bb.bb.0.1: ICMP echo request, id 768, seq 20491, length 40
16:41:12.820973 IP aa.aa.aa.aa > bb.bb.0.1: ICMP echo request, id 768, seq 20747, length 40
16:41:18.321139 IP aa.aa.aa.aa > bb.bb.0.1: ICMP echo request, id 768, seq 21003, length 40
> 16:41:18.321139 IP aa.aa.aa.aa > bb.bb.0.1: ICMP echo request, id 768, seq 21003,
> length 40это чито? aa.aa.aa.aa ??? внешний ip ubuntu? на pppoe? -- если да -- то трафик попал под нат -- и под правила инкапсуляции не попадёт -- соответственно не будет передан
>> 16:41:18.321139 IP aa.aa.aa.aa > bb.bb.0.1: ICMP echo request, id 768, seq 21003,
>> length 40
> это чито? aa.aa.aa.aa ??? внешний ip ubuntu? на pppoe? -- если
> да -- то трафик попал под нат -- и под правила
> инкапсуляции не попадёт -- соответственно не будет переданКакой надо сделать маршрут? или правило IPTABLES чтобы трафик шёл по назначению?