Date: Mon, 29 Mar 2004 00:06:21 +0200 From: =?ISO-8859-1?Q?Cyrill_R=FCttimann?= <ruettimac@mac.com> To: freebsd-net@freebsd.org Subject: IPSec troubles Message-ID: <257C203C-8104-11D8-9902-00039303AB38@mac.com>
next in thread | raw e-mail | index | archive | help
Hello, I have troubles setting up an IPSec Host-to-Host connection between FreeBSD 5.2.1 and MacOS X 10.3.3: Network Setup: Cable-Modem-->FreeBSD Box, 192.168.0.1-->Apple Airport Station running in Bridge Mode-->MacOS X Box, 192.168.0.10 /etc/ipsec.conf (FreeBSD) spdadd 192.168.0.1/24 192.168.0.10/24 any -P out ipsec esp/transport/192.168.0.1-192.168.0.10/require; spdadd 192.168.0.10/24 192.168.0.1/24 any -P in ipsec esp/transport/192.168.0.10-192.168.0.1/require; /etc/ipsec.conf (MacOS X) spdadd 192.168.0.10/24 192.168.0.1/24 any -P out ipsec esp/transport/192.168.0.10-192.168.0.1/require; spdadd 192.168.0.1/24 192.168.0.10/24 any -P in ipsec esp/transport/192.168.0.1-192.168.0.10/require; /usr/local/etc/racoon/racoon.conf (FreeBSD) remote anonymous { #exchange_mode main,aggressive; exchange_mode aggressive,main; doi ipsec_doi; situation identity_only; #my_identifier address; my_identifier user_fqdn "root@ruettimac.ch"; peers_identifier user_fqdn "root@ruettimac.ch"; #certificate_type x509 "mycert" "mypriv"; nonce_size 16; lifetime time 1 min; # sec,min,hour initial_contact on; support_mip6 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 30 sec; encryption_algorithm 3des ; authentication_algorithm hmac_sha1; compression_algorithm deflate ; } /etc/racoon/remote/anonymous.conf (MacOS X) remote anonymous { #exchange_mode main,aggressive; exchange_mode aggressive,main; doi ipsec_doi; situation identity_only; #my_identifier address; my_identifier user_fqdn "root@ruettimac.ch"; peers_identifier user_fqdn "root@ruettimac.ch"; #certificate_type x509 "mycert" "mypriv"; nonce_size 16; lifetime time 1 min; # sec,min,hour initial_contact on; support_mip6 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 30 sec; encryption_algorithm 3des ; authentication_algorithm hmac_sha1; compression_algorithm deflate ; } /usr/local/etc/racoon/psk.txt (FreeBSD) 192.168.0.1 7HdopoY72bNmewP 192.168.0.10 7HdopoY72bNmewP /etc/racoon/psk.txt (MacOS X) 192.168.0.1 7HdopoY72bNmewP 192.168.0.10 7HdopoY72bNmewP Debug output (FreeBSD) Mar 28 22:55:54 protos racoon: DEBUG: algorithm.c:614:alg_oakley_dhdef(): hmac(modp1024) Mar 28 22:55:54 protos racoon: DEBUG: pfkey.c:2379:pk_checkalg(): compression algorithm can not be checked because sadb message doesn't support it. Mar 28 22:55:54 protos racoon: DEBUG: pfkey.c:197:pfkey_handler(): get pfkey X_SPDDUMP message Mar 28 22:55:54 protos racoon: DEBUG: pfkey.c:197:pfkey_handler(): get pfkey X_SPDDUMP message Mar 28 22:55:54 protos racoon: DEBUG: policy.c:184:cmpspidxstrict(): sub:0xbfbfec40: 192.168.0.1/24[0] 192.168.0.10/24[0] proto=any dir=out Mar 28 22:55:54 protos racoon: DEBUG: policy.c:185:cmpspidxstrict(): db :0x80a2c08: 192.168.0.10/24[0] 192.168.0.1/24[0] proto=any dir=in Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:221:isakmp_handler(): === Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:222:isakmp_handler(): 277 bytes message received from 192.168.0.10[500] Mar 28 22:57:11 protos racoon: DEBUG: plog.c:193:plogdump(): a8d6f8dc 8b9041c1 00000000 00000000 01100400 00000000 00000115 04000034 00000001 00000001 00000028 01010 001 00000020 01010000 800b0001 800c003c 80010005 80030001 80020002 80040002 0a000084 f23e0504 edb10453 8212421a f817e04d 148782fb 81436b89 f73240d1 a69d3662 5cbb7e5a cb234c8a 764c6357 87b6c7ee 6606ad2b daf088dc 27dfbac8 5c8ca5f5 20b7c274 4e6f22d7 a85e4237 36291558 2cc68a6e fc9f449c 9d9463e3 ebb1536b 068063f7 ac6f290e 6160f975 b059 aa6c dcccf25d ee5361aa d18ba202 b567ff46 05000014 d2b5d6de f4860836 93be994d 10fb9d3a 0d000019 03000000 726f6f74 40727565 7474696d 61632e63 68000000 144df379 28e9fc4f d1b32621 70d515c6 62 Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:2246:isakmp_printpacket(): begin. Mar 28 22:57:11 protos racoon: DEBUG: remoteconf.c:129:getrmconf(): anonymous configuration selected for 192.168.0.10[500]. Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:887:isakmp_ph1begin_r(): === Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1110:isakmp_parsewoh(): begin. Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1137:isakmp_parsewoh(): seen nptype=1(sa) Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1137:isakmp_parsewoh(): seen nptype=4(ke) Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1137:isakmp_parsewoh(): seen nptype=10(nonce) Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1137:isakmp_parsewoh(): seen nptype=5(id) Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1137:isakmp_parsewoh(): seen nptype=13(vid) Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1176:isakmp_parsewoh(): succeed. Mar 28 22:57:11 protos racoon: DEBUG: isakmp_agg.c:646:agg_r1recv(): received payload of type ke Mar 28 22:57:11 protos racoon: DEBUG: isakmp_agg.c:646:agg_r1recv(): received payload of type nonce Mar 28 22:57:11 protos racoon: DEBUG: isakmp_agg.c:646:agg_r1recv(): received payload of type id Mar 28 22:57:11 protos racoon: DEBUG: isakmp_agg.c:646:agg_r1recv(): received payload of type vid Mar 28 22:57:11 protos racoon: DEBUG: vendorid.c:137:check_vendorid(): received unknown Vendor ID Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:1117:get_proppair(): total SA len=48 Mar 28 22:57:11 protos racoon: DEBUG: plog.c:193:plogdump(): 00000001 00000001 00000028 01010001 00000020 01010000 800b0001 800c003c 80010005 80030001 80020002 80040 002 Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1110:isakmp_parsewoh(): begin. Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1137:isakmp_parsewoh(): seen nptype=2(prop) Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1176:isakmp_parsewoh(): succeed. Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:1170:get_proppair(): proposal #1 len=40 Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1110:isakmp_parsewoh(): begin. Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1137:isakmp_parsewoh(): seen nptype=3(trns) Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1176:isakmp_parsewoh(): succeed. Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:1311:get_transform(): transform #1 len=32 Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:1870:check_attr_isakmp(): type=Life Type, flag=0x8000, lorv=seconds Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:1870:check_attr_isakmp(): type=Life Duration, flag=0x8000, lorv=60 Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:1870:check_attr_isakmp(): type=Encryption Algorithm, flag=0x8000, lorv=3DES-CBC Mar 28 22:57:11 protos racoon: DEBUG: algorithm.c:386:alg_oakley_encdef(): encription(3des) Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:1870:check_attr_isakmp(): type=Authentication Method, flag=0x8000, lorv=pre-shared key Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:1870:check_attr_isakmp(): type=Hash Algorithm, flag=0x8000, lorv=SHA Mar 28 22:57:11 protos racoon: DEBUG: algorithm.c:256:alg_oakley_hashdef(): hash(sha1) Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:1870:check_attr_isakmp(): type=Group Description, flag=0x8000, lorv=1024-bit MODP group Mar 28 22:57:11 protos racoon: DEBUG: algorithm.c:614:alg_oakley_dhdef(): hmac(modp1024) Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:1213:get_proppair(): pair 1: Mar 28 22:57:11 protos racoon: DEBUG: proposal.c:895:print_proppair0(): 0x80a8dc0: next=0x0 tnext=0x0 Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:1248:get_proppair(): proposal #1: 1 transform Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:322:get_ph1approvalx(): prop#=1, prot-id=ISAKMP, spi-size=0, #trns=1 Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:327:get_ph1approvalx(): trns#=1, trns-id=IKE Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:491:t2isakmpsa(): type=Life Type, flag=0x8000, lorv=seconds Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:491:t2isakmpsa(): type=Life Duration, flag=0x8000, lorv=60 Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:491:t2isakmpsa(): type=Encryption Algorithm, flag=0x8000, lorv=3DES-CBC Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:491:t2isakmpsa(): type=Authentication Method, flag=0x8000, lorv=pre-shared key Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:491:t2isakmpsa(): type=Hash Algorithm, flag=0x8000, lorv=SHA Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:491:t2isakmpsa(): type=Group Description, flag=0x8000, lorv=1024-bit MODP group Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:338:get_ph1approvalx(): Compared: DB:Peer Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:339:get_ph1approvalx(): (lifetime = 60:60) Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:341:get_ph1approvalx(): (lifebyte = 0:0) Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:343:get_ph1approvalx(): enctype = 3DES-CBC:3DES-CBC Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:348:get_ph1approvalx(): (encklen = 0:0) Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:350:get_ph1approvalx(): hashtype = SHA:SHA Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:355:get_ph1approvalx(): authmethod = pre-shared key:pre-shared key Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:360:get_ph1approvalx(): dh_group = 1024-bit MODP group:1024-bit MODP group Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:248:get_ph1approval(): an acceptable proposal found. Mar 28 22:57:11 protos racoon: DEBUG: algorithm.c:614:alg_oakley_dhdef(): hmac(modp1024) Mar 28 22:57:11 protos racoon: DEBUG: isakmp.c:1994:isakmp_newcookie(): new cookie: 0ad0e291b31fe9c0 Mar 28 22:57:11 protos racoon: DEBUG: ipsec_doi.c:3238:ipsecdoi_setid1(): use ID type of User_FQDN Mar 28 22:57:11 protos racoon: DEBUG: oakley.c:300:oakley_dh_generate(): compute DH's private. Mar 28 22:57:11 protos racoon: DEBUG: plog.c:193:plogdump(): 6753fee8 60c3a0f2 ae75b8f8 b01a3ebb 077d1c3d 32079cb0 a85027bc ce546f9a ba3f7f1d 3621cdc7 846570e1 5f9ea ef5 ece52b65 8c704ae1 01ae7444 7490a9bd 72d9c58c 0366a656 38261e4e fa4b56ce 10d8544a 8e86344d 32b78168 909a5847 c118c017 a17cd78a cbb543b7 98e1cb8e 5e8faed4 f28ddb5b 1783717e 244b075f Mar 28 22:57:11 protos racoon: DEBUG: oakley.c:302:oakley_dh_generate(): compute DH's public. Mar 28 22:57:11 protos racoon: DEBUG: plog.c:193:plogdump(): 188b2e30 9cf45135 c1dc28fb 44f75b0b 0d6511c2 2d615c1c 032790c7 3a154392 582a65cf 3535dabc cd858f07 11b1d 229 e9a49744 aa3a1935 c9bff6cc 2a060706 6af1b688 0ca5f0e4 c8085d7d de7a24db 7e70369f c913691a b4de01fe b98f3218 35480394 ac9ec110 33431e8c a6098b94 0d29ad67 7be9cd11 059569db 7523ea0d Mar 28 22:57:11 protos racoon: DEBUG: oakley.c:250:oakley_dh_compute(): compute DH's shared. Mar 28 22:57:11 protos racoon: DEBUG: plog.c:193:plogdump(): 3a7b7282 97f70a35 423f1b4b cd893507 23188260 bb366f00 02bd5d60 1f85d97f ab60ce35 e4d1a4e8 975daf7a 34ba3 393 4282dba6 e30885e8 c8459602 f0d9f8dc 72048742 295d0035 5611342c e51c20c0 17d2a64b 7c985bd4 c5424535 e9cb8e05 900484a4 2838807a b2656122 be5e1bb6 5b0e1003 e1087aa2 ab448b19 fb5bdf3b Mar 28 22:57:21 protos racoon: DEBUG: isakmp.c:221:isakmp_handler(): === Mar 28 22:57:21 protos racoon: DEBUG: isakmp.c:222:isakmp_handler(): 277 bytes message received from 192.168.0.10[500] Mar 28 22:57:21 protos racoon: DEBUG: plog.c:193:plogdump(): a8d6f8dc 8b9041c1 00000000 00000000 01100400 00000000 00000115 04000034 00000001 00000001 00000028 01010 001 00000020 01010000 800b0001 800c003c 80010005 80030001 80020002 80040002 0a000084 f23e0504 edb10453 8212421a f817e04d 148782fb 81436b89 f73240d1 a69d3662 5cbb7e5a cb234c8a 764c6357 87b6c7ee 6606ad2b daf088dc 27dfbac8 5c8ca5f5 20b7c274 4e6f22d7 a85e4237 36291558 2cc68a6e fc9f449c 9d9463e3 ebb1536b 068063f7 ac6f290e 6160f975 b059 aa6c dcccf25d ee5361aa d18ba202 b567ff46 05000014 d2b5d6de f4860836 93be994d 10fb9d3a 0d000019 03000000 726f6f74 40727565 7474696d 61632e63 68000000 144df379 28e9fc4f d1b32621 70d515c6 62 Debug output (MacOS X) Mar 28 23:05:24 localhost racoon: INFO: isakmp.c:2038:isakmp_chkph1there(): delete phase 2 handler. Mar 28 23:05:53 localhost racoon: ERROR: isakmp.c:1694:isakmp_ph1resend(): phase1 negotiation failed due to time up. 4445e17f3009917d:0000000000000000 Mar 28 23:06:13 localhost racoon: INFO: isakmp.c:1941:isakmp_post_acquire(): IPsec-SA request for 192.168.0.1 queued due to no phase1 found. Mar 28 23:06:13 localhost racoon: INFO: isakmp.c:994:isakmp_ph1begin_i(): initiate new phase 1 negotiation: 192.168.0.10[500]<=>192.168.0.1[500] Mar 28 23:06:13 localhost racoon: INFO: isakmp.c:999:isakmp_ph1begin_i(): begin Aggressive mode. Mar 28 23:06:44 localhost racoon: ERROR: isakmp.c:2033:isakmp_chkph1there(): phase2 negotiation failed due to time up waiting for phase1. ESP 192.168.0.1->192.168.0.1 0 Mar 28 23:06:44 localhost racoon: INFO: isakmp.c:2038:isakmp_chkph1there(): delete phase 2 handler. Something wrong with the setup? Maybe incompatible versions of racoon (tip found in a FreeBSD Mailinglist)? racoon-20040116a <-----> racoon-20040114 (Big Endian) Thanks for any help! Cyrill
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?257C203C-8104-11D8-9902-00039303AB38>