PRE-TEST moon# iptables -I OUTPUT -d 192.168.0.150 -p tcp --dport 80 -j REJECT --reject-with tcp-reset moon# systemctl start strongswan carol# systemctl start strongswan moon# expect-connection rw carol# expect-connection home carol# swanctl --initiate --child home 2> /dev/null [IKE] initiating IKE_SA home[1] to 192.168.0.1 [ENC] generating IKE_SA_INIT request 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) N(FRAG_SUP) N(HASH_ALG) N(REDIR_SUP) ] [NET] sending packet: from 192.168.0.100[500] to 192.168.0.1[500] (240 bytes) [NET] received packet: from 192.168.0.1[500] to 192.168.0.100[500] (273 bytes) [ENC] parsed IKE_SA_INIT response 0 [ SA KE No N(NATD_S_IP) N(NATD_D_IP) CERTREQ N(FRAG_SUP) N(HASH_ALG) N(CHDLESS_SUP) N(MULT_AUTH) ] [CFG] selected proposal: IKE:AES_CBC_128/HMAC_SHA2_256_128/PRF_HMAC_SHA2_256/CURVE_25519 [IKE] received cert request for "C=CH, O=strongSwan Project, CN=strongSwan Root CA" [IKE] sending cert request for "C=CH, O=strongSwan Project, CN=strongSwan Root CA" [IKE] authentication of 'carol@strongswan.org' (myself) with RSA_EMSA_PKCS1_SHA2_256 successful [IKE] sending end entity cert "C=CH, O=strongSwan Project, OU=OCSP, CN=carol@strongswan.org" [IKE] establishing CHILD_SA home{1} [ENC] generating IKE_AUTH request 1 [ IDi CERT N(INIT_CONTACT) CERTREQ IDr AUTH SA TSi TSr N(MOBIKE_SUP) N(ADD_6_ADDR) N(MULT_AUTH) N(EAP_ONLY) N(MSG_ID_SYN_SUP) ] [ENC] splitting IKE message (1952 bytes) into 2 fragments [ENC] generating IKE_AUTH request 1 [ EF(1/2) ] [ENC] generating IKE_AUTH request 1 [ EF(2/2) ] [NET] sending packet: from 192.168.0.100[4500] to 192.168.0.1[4500] (1236 bytes) [NET] sending packet: from 192.168.0.100[4500] to 192.168.0.1[4500] (788 bytes) [NET] received packet: from 192.168.0.1[4500] to 192.168.0.100[4500] (1236 bytes) [ENC] parsed IKE_AUTH response 1 [ EF(1/2) ] [ENC] received fragment #1 of 2, waiting for complete IKE message [NET] received packet: from 192.168.0.1[4500] to 192.168.0.100[4500] (660 bytes) [ENC] parsed IKE_AUTH response 1 [ EF(2/2) ] [ENC] received fragment #2 of 2, reassembled fragmented IKE message (1824 bytes) [ENC] parsed IKE_AUTH response 1 [ IDr CERT AUTH SA TSi TSr N(MOBIKE_SUP) N(ADD_4_ADDR) N(ADD_6_ADDR) N(ADD_6_ADDR) ] [IKE] received end entity cert "C=CH, O=strongSwan Project, CN=moon.strongswan.org" [CFG] using certificate "C=CH, O=strongSwan Project, CN=moon.strongswan.org" [CFG] using trusted ca certificate "C=CH, O=strongSwan Project, CN=strongSwan Root CA" [CFG] reached self-signed root ca with a path length of 0 [CFG] checking certificate status of "C=CH, O=strongSwan Project, CN=moon.strongswan.org" [CFG] requesting ocsp status from 'http://ocsp.strongswan.org:8880' ... [CFG] ocsp response correctly signed by "C=CH, O=strongSwan Project, CN=strongSwan Root CA" [CFG] ocsp response is valid: until Mar 10 19:24:46 2025 [CFG] certificate status is good [IKE] authentication of 'moon.strongswan.org' with RSA_EMSA_PKCS1_SHA2_256 successful [IKE] peer supports MOBIKE [IKE] IKE_SA home[1] established between 192.168.0.100[carol@strongswan.org]...192.168.0.1[moon.strongswan.org] [IKE] scheduling rekeying in 14321s [IKE] maximum IKE_SA lifetime 15761s [CFG] selected proposal: ESP:AES_GCM_16_128/NO_EXT_SEQ [IKE] CHILD_SA home{1} established with SPIs c37414ee_i cf716ef6_o and TS 192.168.0.100/32 === 10.1.0.0/16 initiate completed successfully TEST moon# swanctl --list-sas --raw 2> /dev/null | grep 'rw.*version=2 state=ESTABLISHED local-host=192.168.0.1 local-port=4500 local-id=moon.strongswan.org remote-host=192.168.0.100 remote-port=4500 remote-id=carol@strongswan.org.*encr-alg=AES_CBC encr-keysize=128 integ-alg=HMAC_SHA2_256_128 prf-alg=PRF_HMAC_SHA2_256 dh-group=CURVE_25519.*child-sas.*net.*reqid=1 state=INSTALLED mode=TUNNEL protocol=ESP.*encr-alg=AES_GCM_16 encr-keysize=128.*local-ts=\[10.1.0.0/16] remote-ts=\[192.168.0.100/32]' [YES] list-sa event {rw {uniqueid=1 version=2 state=ESTABLISHED local-host=192.168.0.1 local-port=4500 local-id=moon.strongswan.org remote-host=192.168.0.100 remote-port=4500 remote-id=carol@strongswan.org initiator-spi=1b30f3dd7657597a responder-spi=02fa74ce018060b2 encr-alg=AES_CBC encr-keysize=128 integ-alg=HMAC_SHA2_256_128 prf-alg=PRF_HMAC_SHA2_256 dh-group=CURVE_25519 established=1 rekey-time=13450 child-sas {net-1 {name=net uniqueid=1 reqid=1 state=INSTALLED mode=TUNNEL protocol=ESP spi-in=cf716ef6 spi-out=c37414ee encr-alg=AES_GCM_16 encr-keysize=128 bytes-in=0 packets-in=0 bytes-out=0 packets-out=0 rekey-time=3350 life-time=3959 install-time=1 local-ts=[10.1.0.0/16] remote-ts=[192.168.0.100/32]}}}} carol# swanctl --list-sas --raw 2> /dev/null | grep 'home.*version=2 state=ESTABLISHED local-host=192.168.0.100 local-port=4500 local-id=carol@strongswan.org remote-host=192.168.0.1 remote-port=4500 remote-id=moon.strongswan.org initiator=yes.*encr-alg=AES_CBC encr-keysize=128 integ-alg=HMAC_SHA2_256_128 prf-alg=PRF_HMAC_SHA2_256 dh-group=CURVE_25519.*child-sas.*home.*reqid=1 state=INSTALLED mode=TUNNEL protocol=ESP.*encr-alg=AES_GCM_16 encr-keysize=128.*local-ts=\[192.168.0.100/32] remote-ts=\[10.1.0.0/16]' [YES] list-sa event {home {uniqueid=1 version=2 state=ESTABLISHED local-host=192.168.0.100 local-port=4500 local-id=carol@strongswan.org remote-host=192.168.0.1 remote-port=4500 remote-id=moon.strongswan.org initiator=yes initiator-spi=1b30f3dd7657597a responder-spi=02fa74ce018060b2 encr-alg=AES_CBC encr-keysize=128 integ-alg=HMAC_SHA2_256_128 prf-alg=PRF_HMAC_SHA2_256 dh-group=CURVE_25519 established=0 rekey-time=14321 child-sas {home-1 {name=home uniqueid=1 reqid=1 state=INSTALLED mode=TUNNEL protocol=ESP spi-in=c37414ee spi-out=cf716ef6 encr-alg=AES_GCM_16 encr-keysize=128 bytes-in=0 packets-in=0 bytes-out=0 packets-out=0 rekey-time=3398 life-time=3960 install-time=1 local-ts=[192.168.0.100/32] remote-ts=[10.1.0.0/16]}}}} moon# cat /var/log/daemon.log | grep 'requesting ocsp status' [YES] Mar 10 19:19:45 moon charon-systemd: 16[CFG] requesting ocsp status from 'http://ocsp.strongswan.org:8880' ... moon# cat /var/log/daemon.log | grep 'ocsp response correctly signed by' [YES] Mar 10 19:19:45 moon charon-systemd: 16[CFG] ocsp response correctly signed by "C=CH, O=strongSwan Project, CN=strongSwan Root CA" moon# cat /var/log/daemon.log | grep 'ocsp response is valid' [YES] Mar 10 19:19:45 moon charon-systemd: 16[CFG] ocsp response is valid: until Mar 10 19:24:46 2025 moon# cat /var/log/daemon.log | grep 'certificate status is good' [YES] Mar 10 19:19:45 moon charon-systemd: 16[CFG] certificate status is good carol# cat /var/log/daemon.log | grep 'requesting ocsp status' [YES] Mar 10 19:19:46 carol charon-systemd: 08[CFG] requesting ocsp status from 'http://ocsp.strongswan.org:8880' ... carol# cat /var/log/daemon.log | grep 'ocsp response correctly signed by' [YES] Mar 10 19:19:46 carol charon-systemd: 08[CFG] ocsp response correctly signed by "C=CH, O=strongSwan Project, CN=strongSwan Root CA" carol# cat /var/log/daemon.log | grep 'ocsp response is valid' [YES] Mar 10 19:19:46 carol charon-systemd: 08[CFG] ocsp response is valid: until Mar 10 19:24:46 2025 carol# cat /var/log/daemon.log | grep 'certificate status is good' [YES] Mar 10 19:19:46 carol charon-systemd: 08[CFG] certificate status is good POST-TEST carol# systemctl stop strongswan moon# systemctl stop strongswan moon# iptables -F