testing: Reorganizing IKEv1 and IKEv2 examples
For documentation purposes the new folders ikev1-algs, ikev2-algs, ikev1-multi-ca and ikev2-multi-ca have been created. Most of the test cases have now been converted to the vici interface. The remaining legacy stroke scenarios yet to be converted have been put into the ikev2-stroke-bye folder. For documentation purposes some legacy stroke scenarios will be kept in the ikev1-stroke, ikev2-stroke and ipv6-stroke folders.
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
The roadwarriors <b>carol</b> and <b>dave</b> set up a connection each to gateway <b>moon</b>.
|
||||
The strong mutual authentication is based on <b>EAP-TTLS</b> only (without a separate IKEv2
|
||||
authentication) with the gateway being authenticated by a server certificate during the
|
||||
EAP-TLS tunnel setup (phase1 of EAP-TTLS). This tunnel protects the ensuing weak client
|
||||
authentication based on <b>EAP-MD5</b> (phase2 of EAP-TTLS).
|
||||
<p/>
|
||||
With the default setting <b>charon.plugins.eap-ttls.phase2_piggyback = no</b> the server
|
||||
<b>moon</b> passively waits for the clients to initiate phase2 of the EAP-TTLS protocol by
|
||||
sending a tunneled orphan EAP Identity response upon the reception of the server's TLS
|
||||
Finished message. Client <b>carol</b> presents the correct MD5 password and succeeds
|
||||
whereas client <b>dave</b> chooses the wrong password and fails.
|
||||
@@ -0,0 +1,19 @@
|
||||
carol::cat /var/log/daemon.log::server requested EAP_TTLS authentication::YES
|
||||
carol::cat /var/log/daemon.log::allow mutual EAP-only authentication::YES
|
||||
carol::cat /var/log/daemon.log::server requested EAP_MD5 authentication::YES
|
||||
carol::cat /var/log/daemon.log::EAP method EAP_TTLS succeeded, MSK established::YES
|
||||
carol::cat /var/log/daemon.log::authentication of 'C=CH, O=strongSwan Project, CN=moon.strongswan.org' with EAP successful::YES
|
||||
dave:: cat /var/log/daemon.log::server requested EAP_TTLS authentication::YES
|
||||
dave:: cat /var/log/daemon.log::allow mutual EAP-only authentication::YES
|
||||
dave:: cat /var/log/daemon.log::server requested EAP_MD5 authentication::YES
|
||||
dave:: cat /var/log/daemon.log::received EAP_FAILURE, EAP authentication failed::YES
|
||||
moon:: cat /var/log/daemon.log::EAP_TTLS phase2 authentication of '[email protected]' with EAP_MD5 successful::YES
|
||||
moon:: cat /var/log/daemon.log::authentication of '[email protected]' with EAP successful::YES
|
||||
moon:: cat /var/log/daemon.log::EAP method EAP_TTLS failed for peer [email protected]::YES
|
||||
moon:: ipsec status 2> /dev/null::rw-eap.*ESTABLISHED.*[email protected]::YES
|
||||
moon:: ipsec status 2> /dev/null::rw-eap.*ESTABLISHED.*[email protected]::NO
|
||||
carol::ipsec status 2> /dev/null::home.*ESTABLISHED::YES
|
||||
dave:: ipsec status 2> /dev/null::home.*ESTABLISHED::NO
|
||||
carol::ping -c 1 PH_IP_ALICE::64 bytes from PH_IP_ALICE: icmp_.eq=1::YES
|
||||
moon::tcpdump::IP carol.strongswan.org > moon.strongswan.org: ESP::YES
|
||||
moon::tcpdump::IP moon.strongswan.org > carol.strongswan.org: ESP::YES
|
||||
@@ -0,0 +1,20 @@
|
||||
# /etc/ipsec.conf - strongSwan IPsec configuration file
|
||||
|
||||
conn %default
|
||||
ikelifetime=60m
|
||||
keylife=20m
|
||||
rekeymargin=3m
|
||||
keyingtries=1
|
||||
keyexchange=ikev2
|
||||
|
||||
conn home
|
||||
left=PH_IP_CAROL
|
||||
[email protected]
|
||||
leftauth=eap
|
||||
leftfirewall=yes
|
||||
right=PH_IP_MOON
|
||||
rightid="C=CH, O=strongSwan Project, CN=moon.strongswan.org"
|
||||
rightauth=any
|
||||
rightsubnet=10.1.0.0/16
|
||||
rightsendcert=never
|
||||
auto=add
|
||||
@@ -0,0 +1,3 @@
|
||||
# /etc/ipsec.secrets - strongSwan IPsec secrets file
|
||||
|
||||
[email protected] : EAP "Ar3etTnp"
|
||||
@@ -0,0 +1,11 @@
|
||||
# /etc/strongswan.conf - strongSwan configuration file
|
||||
|
||||
charon {
|
||||
load = random nonce aes sha1 sha2 md5 pem pkcs1 curve25519 mfg1 gmp x509 curl revocation hmac stroke kernel-netlink socket-default eap-identity eap-md5 eap-ttls updown
|
||||
multiple_authentication=no
|
||||
syslog {
|
||||
daemon {
|
||||
tls = 2
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
# /etc/ipsec.conf - strongSwan IPsec configuration file
|
||||
|
||||
conn %default
|
||||
ikelifetime=60m
|
||||
keylife=20m
|
||||
rekeymargin=3m
|
||||
keyingtries=1
|
||||
keyexchange=ikev2
|
||||
|
||||
conn home
|
||||
left=PH_IP_DAVE
|
||||
[email protected]
|
||||
leftauth=eap
|
||||
leftfirewall=yes
|
||||
right=PH_IP_MOON
|
||||
rightid="C=CH, O=strongSwan Project, CN=moon.strongswan.org"
|
||||
rightauth=any
|
||||
rightsubnet=10.1.0.0/16
|
||||
rightsendcert=never
|
||||
auto=add
|
||||
@@ -0,0 +1,3 @@
|
||||
# /etc/ipsec.secrets - strongSwan IPsec secrets file
|
||||
|
||||
[email protected] : EAP "UgaM65Va"
|
||||
@@ -0,0 +1,11 @@
|
||||
# /etc/strongswan.conf - strongSwan configuration file
|
||||
|
||||
charon {
|
||||
load = random nonce aes sha1 sha2 md5 pem pkcs1 curve25519 mfg1 gmp x509 curl revocation hmac stroke kernel-netlink socket-default eap-identity eap-md5 eap-ttls updown
|
||||
multiple_authentication=no
|
||||
syslog {
|
||||
daemon {
|
||||
tls = 2
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
# /etc/ipsec.conf - strongSwan IPsec configuration file
|
||||
|
||||
conn %default
|
||||
ikelifetime=60m
|
||||
keylife=20m
|
||||
rekeymargin=3m
|
||||
keyingtries=1
|
||||
keyexchange=ikev2
|
||||
|
||||
conn rw-eap
|
||||
left=PH_IP_MOON
|
||||
leftsubnet=10.1.0.0/16
|
||||
leftcert=moonCert.pem
|
||||
leftauth=eap-ttls
|
||||
leftfirewall=yes
|
||||
rightauth=eap-ttls
|
||||
rightsendcert=never
|
||||
right=%any
|
||||
auto=add
|
||||
@@ -0,0 +1,6 @@
|
||||
# /etc/ipsec.secrets - strongSwan IPsec secrets file
|
||||
|
||||
: RSA moonKey.pem
|
||||
|
||||
[email protected] : EAP "Ar3etTnp"
|
||||
[email protected] : EAP "W7R0g3do"
|
||||
@@ -0,0 +1,17 @@
|
||||
# /etc/strongswan.conf - strongSwan configuration file
|
||||
|
||||
charon {
|
||||
load = random nonce aes sha1 sha2 md5 pem pkcs1 curve25519 mfg1 gmp x509 curl revocation hmac stroke kernel-netlink socket-default eap-identity eap-md5 eap-ttls updown
|
||||
multiple_authentication=no
|
||||
|
||||
syslog {
|
||||
daemon {
|
||||
tls = 2
|
||||
}
|
||||
}
|
||||
plugins {
|
||||
eap-ttls {
|
||||
phase2_method = md5
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,6 @@
|
||||
moon::ipsec stop
|
||||
carol::ipsec stop
|
||||
dave::ipsec stop
|
||||
moon::iptables-restore < /etc/iptables.flush
|
||||
carol::iptables-restore < /etc/iptables.flush
|
||||
dave::iptables-restore < /etc/iptables.flush
|
||||
@@ -0,0 +1,11 @@
|
||||
moon::iptables-restore < /etc/iptables.rules
|
||||
carol::iptables-restore < /etc/iptables.rules
|
||||
dave::iptables-restore < /etc/iptables.rules
|
||||
moon::ipsec start
|
||||
carol::ipsec start
|
||||
dave::ipsec start
|
||||
moon::expect-connection rw-eap
|
||||
carol::expect-connection home
|
||||
carol::ipsec up home
|
||||
dave::expect-connection home
|
||||
dave::ipsec up home
|
||||
@@ -0,0 +1,21 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# This configuration file provides information on the
|
||||
# guest instances used for this test
|
||||
|
||||
# All guest instances that are required for this test
|
||||
#
|
||||
VIRTHOSTS="alice moon carol winnetou dave"
|
||||
|
||||
# Corresponding block diagram
|
||||
#
|
||||
DIAGRAM="a-m-c-w-d.png"
|
||||
|
||||
# Guest instances on which tcpdump is to be started
|
||||
#
|
||||
TCPDUMPHOSTS="moon"
|
||||
|
||||
# Guest instances on which IPsec is started
|
||||
# Used for IPsec logging purposes
|
||||
#
|
||||
IPSECHOSTS="moon carol dave"
|
||||
Reference in New Issue
Block a user