Commit Graph

1878 Commits

Author SHA1 Message Date
Andreas Steffen 26b45beda9 Version bump to 5.6.3dr2 2018-05-22 21:58:32 +02:00
Tobias Brunner 9746c308ff testing: Add ikev2/multi-level-ca-skipped scenario 2018-05-22 09:50:47 +02:00
Tobias Brunner 7b660944b6 dhcp: Only send client identifier if identity_lease is enabled
The client identifier serves as unique identifier just like a unique MAC
address would, so even with identity_leases disabled some DHCP servers
might assign unique leases per identity.
2018-05-18 18:04:01 +02:00
Tobias Brunner becf027cd9 dhcp: Bind server port when a specific server address is specified
DHCP servers will respond to port 67 if giaddr is non-zero, which we set
if we are not broadcasting.  While such messages are received fine via
RAW socket the kernel will respond with an ICMP port unreachable if no
socket is bound to that port.  Instead of opening a dummy socket on port
67 just to avoid the ICMPs we can also just operate with a single
socket, bind it to port 67 and send our requests from that port.

Since SO_REUSEADDR behaves on Linux like SO_REUSEPORT does on other
systems we can bind that port even if a DHCP server is running on the
same host as the daemon (this might have to be adapted to make this work
on other systems, but due to the raw socket the plugin is not that portable
anyway).
2018-05-18 18:04:01 +02:00
Andreas Steffen 69ee158e2a Version bump to 5.6.3dr1 2018-04-19 16:34:06 +02:00
Andreas Steffen 51d5b35f51 testing: Fixed ikev2/alg-chacha20poly1305 scenario 2018-04-19 16:33:04 +02:00
Matt Selsky c8f45e4573 testing: Fix typo in sysctl.conf file
Closes strongswan/strongswan#97.
2018-04-03 09:55:05 +02:00
Tobias Brunner dc2dfedda9 testing: Use HA patch compatible with 4.15.6+ 2018-03-08 10:07:33 +01:00
Tobias Brunner 39e860ea34 testing: Use a HA patch that's actually compatible with 4.15 kernels 2018-03-07 17:16:54 +01:00
Tobias Brunner 0f785f6be8 testing: Revert typo fix in FreeRADIUS patch
Fixes: 2db6d5b8b3 ("Fixed some typos, courtesy of codespell")
Fixes #2582.
2018-03-07 16:39:37 +01:00
Andreas Steffen 68c00bc839 Version bump to 5.6.2 2018-02-19 12:59:37 +01:00
Andreas Steffen 0bb4d2179d Version bump to 5.6.2rc1 2018-02-16 13:37:00 +01:00
Andreas Steffen 22157b8163 testing: Enable counters and save-keys plugins 2018-02-16 13:36:44 +01:00
Tobias Brunner 2db6d5b8b3 Fixed some typos, courtesy of codespell 2018-02-13 12:19:54 +01:00
Tobias Brunner ad14f2084e testing: Add ikev2/mobike-virtual-ip-nat scenario
This tests moving from a public IP behind a NAT and back (with proper
changes of the UDP encapsulation).
2018-02-09 11:21:02 +01:00
Adrian-Ken Rueegsegger fcff3808b4 charon-tkm: Update to latest Anet version 2018-02-08 17:01:38 +01:00
Andreas Steffen 476200ecc6 Version bump to 5.6.2dr4 2018-02-03 11:05:21 +01:00
Tobias Brunner 4492c9c670 testing: Ignore IP-in-IP SAs created with IPComp SAs that remain in the kernel
The kernel creates such SAs to handle uncompressed small packets.  They
are implicitly created and deleted with IPComp SAs.  The problem is that
when we delete an IPComp SA only that state is deleted and removed from
the SA lists immediately, the IP-in-IP state is not removed until the IPComp
state is eventually destroyed.  This could take a while if there are still
references to it around.  So the IP-in-IP states will keep getting reported
by ip xfrm state until that happens (we also can't flush or explicitly delete
such kernel-created states).

In kernels before 4.14 this wasn't really a problem but since
ec30d78c14a8 ("xfrm: add xdst pcpu cache") the kernel seems to keep the
references to the last used SAs around a lot longer.

Also, usually a test scenario following an IPComp scenario will create
and use new SAs and thus the cached SAs will disappear before the kernel
state is checked again.  However, if a following scenario uses different
hosts the states might remain, which caused some unrelated scenarios to
fail before adding this fix.
2018-02-01 17:10:19 +01:00
Andreas Steffen 3c5b010f5b testing: Added Linux 4.14 and 4.15 config files 2018-01-31 21:32:45 +01:00
Tobias Brunner 351a08e1ff testing: Fix swanctl --list-sas checks in some scenarios
::YES was missing (or written as ::YES]) rendering those checks void.
Turns out some of them actually were wrong.
2017-12-22 10:22:47 +01:00
Tobias Brunner b3a793541d testing: Add route-based/net2net-gre scenario 2017-12-22 10:22:47 +01:00
Tobias Brunner f007bc9ff4 testing: Enable GRE support in 4.13 config
Also enables IPv6 support for VTI devices.
2017-12-22 10:22:47 +01:00
Robin McCorkell e71593d91c testing: Add route-based/net2net-vti scenario 2017-12-22 10:22:47 +01:00
Robin McCorkell ff7129ee6a testing: Added route-based/rw-shared-vti-ip6-in-ip4 scenario 2017-12-22 10:22:47 +01:00
Robin McCorkell a35416af1c testing: Added route-based/rw-shared-vti scenario 2017-12-22 10:22:47 +01:00
Robin McCorkell 95deada184 testing: Enable VTI module in kernel config 2017-12-22 10:22:47 +01:00
Robin McCorkell 82b91e113a testing: Override user environment PATH in chroot
chroot will capture the user environment's PATH variable, which may be
wrong (e.g. not include /bin:/sbin, as it is on Arch). We should set a
known-working PATH variable in the chroot.
2017-12-22 10:22:47 +01:00
Andreas Steffen 344e1b6060 Version bump to 5.6.2dr3 2017-12-13 08:54:54 +01:00
Andreas Steffen 5d3eb57cfd Version bump to 5.6.2dr2 2017-12-10 21:42:02 +01:00
Andreas Steffen 4f60b72a81 Version bump to 5.6.2dr1 2017-12-05 22:23:43 +01:00
Tobias Brunner 8517a0edb4 testing: Explicitly deliver all test results as text/plain 2017-11-28 16:17:50 +01:00
Andreas Steffen 203a86ecb8 Version bump to 5.6.1 2017-11-17 22:42:28 +01:00
Andreas Steffen f60b08ba0d testing: Added swanctl/rw-cert-pss scenario 2017-11-17 22:42:07 +01:00
Tobias Brunner ce4aebe00a testing: Configure logging via syslog in strongswan.conf
Globally configure logging in strongswan.conf.testing and replace all
charondebug statements with strongswan.conf settings.
2017-11-15 17:24:04 +01:00
Tobias Brunner d24d26c4bc testing: Disable logging via journal in charon-systemd
This avoids duplicate log messages as we already log via syslog to get
daemon.log.
2017-11-15 17:12:09 +01:00
Tobias Brunner be214cb17e testing: Globally define logging via syslog for charon-systemd
We could make the same change for charon (actually setting it for charon
in strongswan.conf.testing would work for charon-systemd too), however,
there are dozens of test cases that currently set charondebug in
ipsec.conf.
2017-11-15 17:09:55 +01:00
Andreas Steffen 859cb93d28 testing: Do not remove all swanctl subdirectories 2017-11-11 19:23:01 +01:00
Andreas Steffen b20bf062e8 Version bump to 5.6.1rc1 2017-11-11 18:25:17 +01:00
Andreas Steffen 13a3f20f2e testing: Converterd tnc to systemd 2017-11-11 16:41:16 +01:00
Andreas Steffen 323f0b05d7 testing: Converted sql to systemd 2017-11-11 16:41:15 +01:00
Andreas Steffen 70dc5bb8ad testing: Converted swanctl to systemd 2017-11-11 16:41:15 +01:00
Andreas Steffen 65f74cd13d testing: Added legacy ipv6-stroke scenarios 2017-11-11 16:41:15 +01:00
Andreas Steffen 4402013f05 testing: Converted ipv6/rw-ip6-in-ip4-ikev2 to swanctl 2017-11-10 13:54:51 +01:00
Andreas Steffen b3ccfcd05e testing: Converted ipv6/rw-ip6-in-ip4-ikev1 to swanctl 2017-11-10 13:54:50 +01:00
Andreas Steffen da5aa6ae6a testing: Converted ipv6/net2net-ip6-in-ip4-ikev2 to swanctl 2017-11-10 13:54:50 +01:00
Andreas Steffen 12dbca721e testing: Converted ipv6/net2net-ip6-in-ip4-ikev1 to swanctl 2017-11-10 13:54:50 +01:00
Andreas Steffen f0476c4a82 testing: Converted ipv6/rw-rfc3779-ikev2 to swanctl 2017-11-10 13:54:50 +01:00
Andreas Steffen 96d7d9392f testing: Converted ipv6/rw-compress-ikev2 to swanctl 2017-11-10 13:54:50 +01:00
Andreas Steffen 34acd584e5 testing: Converted ipv6/rw-psk-ikev2 to swanctl 2017-11-10 11:49:49 +01:00
Andreas Steffen 0770b37f8f testing: Converted ipv6/rw-psk-ikev1 to swanctl 2017-11-10 11:49:41 +01:00
Andreas Steffen ffe0d82c03 testing: Converted ipv6/rw-ikev2 to swanctl 2017-11-10 11:49:41 +01:00
Andreas Steffen a96238a0d0 testing: Converted ipv6/rw-ikev1 to swanctl 2017-11-10 11:49:41 +01:00
Andreas Steffen 8215681a4a testing: Converted ipv6/net2net-rfc3779-ikev2 to swanctl 2017-11-10 11:49:41 +01:00
Andreas Steffen 04b79bc98c testing: Converted ipv6/net2net-ip4-in-ip6-ikev2 to swanctl 2017-11-10 11:49:40 +01:00
Andreas Steffen fd3f6871c9 testing: Converted ipv6/net2net-ip4-in-ip6-ikev1 to swanctl 2017-11-10 11:49:40 +01:00
Andreas Steffen f57ca13e28 testing: Converted ipv6/transport-ikev2 to swanctl 2017-11-10 11:49:40 +01:00
Andreas Steffen 4ae1f7c0e3 testing: Converted ipv6/transport-ikev1 to swanctl 2017-11-10 11:49:40 +01:00
Andreas Steffen 7812b6e6cf testing: Converted ipv6/net2net-ikev2 to swanctl 2017-11-10 11:49:40 +01:00
Andreas Steffen e94db2b4ad testing: Converted ipv6/net2net-ikev1 to swanctl 2017-11-10 11:49:40 +01:00
Andreas Steffen 47ec3326e7 testing: Converted ipv6/host2host-ikev2 to swanctl 2017-11-10 11:49:40 +01:00
Andreas Steffen 087b027f88 testing: Converted ipv6/host2host-ikev1 to swanctl 2017-11-10 11:49:39 +01:00
Andreas Steffen 0a6f8644ef testing: Removed libipsec/rw-suite-b 2017-11-10 11:49:39 +01:00
Andreas Steffen 9375c9c9db testing: Converted libipsec/net2net-null to swanctl 2017-11-10 11:49:39 +01:00
Andreas Steffen 86d1b7a14d testing: Converted libipsec/net2net-cert-ipv6 to swanctl 2017-11-10 11:49:39 +01:00
Andreas Steffen c3b8778fc9 testing: Converted libipsec/net2net-cert to swanctl 2017-11-10 11:49:39 +01:00
Andreas Steffen de42a67b79 testing: Converted libipsec/net2net-3des to swanctl 2017-11-10 11:49:39 +01:00
Andreas Steffen 6922d5e56a testing: Converted libipsec/host2host-cert to swanctl 2017-11-10 11:49:39 +01:00
Andreas Steffen 3659fda1a5 testing: Converted gcrypt-ikev2 to swanctl 2017-11-10 11:49:39 +01:00
Andreas Steffen b46deb8107 testing: Converted gcrypt-ikev1 to systemd 2017-11-10 11:49:38 +01:00
Andreas Steffen 88a950d915 testing: Converted af-alg to systemd 2017-11-10 11:49:38 +01:00
Andreas Steffen 67a97c18ae testing: Enable systemd 2017-11-10 11:49:38 +01:00
Andreas Steffen 804784cc1c testing: Updated some descriptions 2017-11-10 11:49:38 +01:00
Tobias Brunner 7fdad3bb97 testing: Fix output matching of lease time in ipsec pool utility 2017-11-02 11:32:52 +01:00
Andreas Steffen a9fb529b84 Version bump to 5.6.1dr3 2017-09-26 22:43:38 +02:00
Tobias Brunner 98e7285394 testing: Add libipsec/net2net-cert-ipv6 scenario 2017-09-18 10:28:54 +02:00
Andreas Steffen c80cec2d5e Version bump to 5.6.1dr2 2017-09-13 16:56:45 +02:00
Tobias Brunner 82088028d8 testing: Reduce log level of SSH client
This should suppress the "Permanently added ... to the list of known
hosts" warnings that occasionally come up for no apparent reason.
2017-09-04 11:16:00 +02:00
Andreas Steffen d43b84dcb4 Version bump to 5.6.1dr1 2017-09-01 13:49:09 +02:00
Andreas Steffen fc373b64a6 imv-os: Updated security update evaluation 2017-09-01 12:42:24 +02:00
Andreas Steffen 076aac7069 imv-attestation: Fixed file hash measurements
The introduction of file versions broke file hash measurements.
This has been fixed by using a generic product versions having an
empty package name.
2017-09-01 10:51:15 +02:00
Tobias Brunner 936db031c7 testing: Make removal of SWID tags work with different releases
The regid.2004-03.org.strongswan directory might not exist in new images.
2017-08-16 10:51:15 +02:00
Andreas Steffen 9cc37212c6 Version bump to 5.6.0 2017-08-14 10:07:47 +02:00
Andreas Steffen d35183e33e Version bump to 5.6.0rc2 2017-08-09 14:23:28 +02:00
Andreas Steffen 285c077d2c Version bump to 5.6.0rc1 2017-08-07 18:25:52 +02:00
Tobias Brunner c11d13c4b9 testing: Add -v option to do-tests to prefix commands with timestamps 2017-08-07 16:55:45 +02:00
Tobias Brunner f058804df8 testing: Move collector.db in tnc/tnccs-20-ev-pt-tls scenario to /etc/db.d
Also move initialization to the pretest script (it's way faster in the
in-memory database).
2017-08-07 16:55:45 +02:00
Tobias Brunner 772957778c charon-tkm: Call esa_reset() when the inbound SA is deleted
After a rekeying the outbound SA and policy is deleted immediately, however,
the inbound SA is not removed until a few seconds later, so delayed packets
can still be processed.

This adds a flag to get_esa_id() that specifies the location of the
given SPI.
2017-08-07 10:46:00 +02:00
Tobias Brunner f0d051f192 testing: Also capture stderr during test cases
The output was not correct otherwise due to the reordering of commands.
2017-08-07 10:44:05 +02:00
Tobias Brunner 87c6247e0d testing: Clearly mark the tests that failed 2017-08-07 10:44:05 +02:00
Tobias Brunner 5163bd4b86 testing: Add tkm/xfrmproxy-rekey scenario
Similar to the xfrmproxy-expire scenario but here the TKM host is the
responder to a rekeying.
2017-08-07 10:44:05 +02:00
Tobias Brunner a721b9c53d testing: Add pfkey/net2net-rekey scenario 2017-08-07 10:44:05 +02:00
Tobias Brunner 37a91758c9 testing: Add ikev2/net2net-rekey scenario 2017-08-07 10:44:05 +02:00
Tobias Brunner 99cf64e960 testing: Add support for counting matching lines in tests
Specifying an integer instead of YES in evaltest.dat causes the number to get
compared against the actual number of lines matching the pattern.

This may be used to count matching packets or log lines.
2017-08-07 10:44:05 +02:00
Andreas Steffen f0ae8c1761 Version bump to 5.6.0dr4 2017-08-04 21:15:45 +02:00
Andreas Steffen 808be1d57f testing: Added tnc/tnccs-20-ev-pt-tls scenario 2017-08-04 19:15:51 +02:00
Andreas Steffen 05f8e64d79 Version bump to 5.6.0dr3 2017-07-18 20:53:35 +02:00
Andreas Steffen a3b3538630 testing: Fixed the path of pt-tls-client 2017-07-18 20:43:03 +02:00
Andreas Steffen 693705c74e Version bump to 5.6.0dr2 2017-07-13 14:24:32 +02:00
Andreas Steffen 991703007a Version bump to 5.6.0dr1
This major version includes the new SWIMA IMC/IMV pair which
implements the "draft-ietf-sacm-nea-swima-patnc" Internet Draft.
Full compliance to the ISO 19770-2:2015 SWID tag standard has
been achieved.
2017-07-08 23:21:56 +02:00
Andreas Steffen 23e0d6dca3 testing: Added tnc/tnccs-20-nea-pt-tls scenario 2017-07-08 23:19:51 +02:00
Andreas Steffen facf1c76ea testing: Adaptation to ISO 19770-2:2015 SWID standard 2017-07-08 23:19:51 +02:00
Andreas Steffen 88b941939f testing: Fixed typo in openssl-ikev2/rw-suite-b-192 scenario 2017-07-08 23:19:18 +02:00
Tobias Brunner 49917f0028 testing: Support running multiple tests with * as wildcard (e.g. ikev2/ocsp-*) 2017-07-07 09:23:14 +02:00
Andreas Steffen 65ce7ec0c4 Version bump to 5.5.3 2017-05-29 12:02:48 +02:00
Tobias Brunner 71d59af58a testing: Add wrapper around service command
When charon is started via service command LEAK_DETECTIVE_LOG is not set
because the command strips the environment.  Since we only want the
variable to be set during the automated test runs we can't just set it
in /etc/default/charon.  Instead, we do so in this wrapper when charon is
started and remove the variable again when it is stopped.
2017-05-26 16:28:16 +02:00
Tobias Brunner b2473e94a2 Fixed some typos, courtesy of codespell 2017-05-26 14:44:06 +02:00
Andreas Steffen 2d5a79bf59 testing: Added swanctl/rw-eap-md5-id-rsa scenario 2017-05-26 14:36:25 +02:00
Tobias Brunner 0da10b73ad testing: Fix ikev2/two-certs scenario
Since 6a8a44be88 the certificate received by the client is verified
first, before checking the cached certificates for any with matching
identities.  So we usually don't have to attempt to verify the signature
with wrong certificates first and can avoid this message.
2017-05-26 13:55:32 +02:00
Tobias Brunner 4d0795bcef testing: Avoid expiration of allocated SPIs due to low retransmission settings 2017-05-23 18:05:58 +02:00
Andreas Steffen a5f7a4c790 Version bump to 5.3.3dr2 2017-05-08 22:38:12 +02:00
Andreas Steffen d38d1fcd68 Version bump to 5.5.3dr1 2017-04-26 21:29:42 +02:00
Andreas Steffen 25217488d2 testing: Created swanctl/rw-eap-aka-sql-rsa scenario 2017-04-26 20:38:23 +02:00
Andreas Steffen 64f9fa9e9f testing: Created ikev2/rw-eap-aka-sql-rsa scenario
This test scenario tests the eap-simaka-sql plugin.
2017-04-26 20:38:23 +02:00
Andreas Steffen bb2ba9f15d Version bump to 5.5.2 2017-03-27 16:57:03 +02:00
Andreas Steffen c5ccf933ec testing: List BLIS certs in swanctl/rw-newhope-bliss scenario 2017-03-27 16:56:50 +02:00
Andreas Steffen 7c672e6118 Version bump to 5.2.2rc1 2017-03-21 09:09:43 +01:00
Andreas Steffen 1732ca7b5b testing: Updated OCSP certificate for carol 2017-03-21 09:09:06 +01:00
Andreas Steffen efc1b98461 Allow x25519 as an alias of the curve25519 KE algorithm 2017-03-20 21:18:00 +01:00
Tobias Brunner ac9063dae2 testing: Fix URL for kernel sources 2017-03-20 10:13:33 +01:00
Andreas Steffen 25bfb338a2 Version bump to 5.5.2dr7 2017-03-06 20:21:40 +01:00
Andreas Steffen 6885375e66 Version bump to 5.5.2dr6 2017-03-03 09:34:50 +01:00
Tobias Brunner 3fb68ac211 testing: load-testconfig script loads config from source dir
It now does replace the IPs too. This way it's easier to play around
with a config (otherwise a do-tests run was required to build the
config files in the build dir).
2017-03-02 11:54:39 +01:00
Andreas Steffen f43850b3b9 Version bump to 5.5.2dr5 2017-02-23 17:31:11 +01:00
Tobias Brunner 0c549169c4 testing: Fix ALLOWED_HOSTS in strongTNC settings.ini 2017-02-16 18:24:25 +01:00
Tobias Brunner 150a902b83 testing: Fix swanctl/ocsp-disabled scenario after changing the log messages 2017-02-16 17:51:16 +01:00
Andreas Steffen 9ad147ac63 Version bump to 5.5.2dr4 2017-01-02 15:46:27 +01:00
Andreas Steffen 91a4a4aa83 testing: Added swanctl/ocsp-disabled scenario 2017-01-02 14:34:39 +01:00
Andreas Steffen db0953d41f testing: Added swanctl/ocsp-signer-cert scenario 2017-01-02 14:34:18 +01:00
Andreas Steffen 08253bbba3 testing: Convert swanctl scenarios to curve-25519 2016-12-30 16:22:12 +01:00
Andreas Steffen 65797c9faf Version bump to 5.5.2dr3 and Linux kernel 4.9 2016-12-17 18:10:13 +01:00
Andreas Steffen 470e61ae77 testing: strongTNC does not come with django.db any more 2016-12-17 18:09:20 +01:00
Andreas Steffen 3c1e5ad6ce testing: Added ikev2/net2net-ed25519 scenario 2016-12-17 18:07:29 +01:00
Andreas Steffen 94ae1ac18e Added swanctl/net2net-ed2559 scenario and needed Ed25519 certificates 2016-12-14 11:15:48 +01:00
Andreas Steffen 011195f1a9 Version bump to 5.5.2dr2 2016-11-14 16:20:51 +01:00
Andreas Steffen 99c03e9a11 testing: make curve25519 the default DH group 2016-11-14 16:20:51 +01:00
Andreas Steffen 4a97999466 Version bump to 5.5.2dr1 2016-10-30 17:34:05 +01:00
Andreas Steffen e6a4bd83ff Version bump to 5.5.1 2016-10-20 12:57:00 +02:00
Andreas Steffen 4d77fcbec9 Version bump to 5.5.1rc2 2016-10-18 18:14:57 +02:00
Andreas Steffen ba6c7a52c0 testing: Renewed expired certificates 2016-10-18 18:13:58 +02:00
Andreas Steffen d167776ff9 testing: enable MACsec in guest kernel 2016-10-18 16:25:19 +02:00
Andreas Steffen a617223ed5 Version bump to 5.5.1rc1 2016-10-11 19:21:36 +02:00
Andreas Steffen 85b5a6ace2 Save both base and delta CRLs to disk 2016-10-11 17:18:22 +02:00
Andreas Steffen 2a2669ee3e vici: strongswan.conf cache_crls = yes saves fetched CRLs to disk 2016-10-11 17:18:22 +02:00
Tobias Brunner 597e057b9e testing: Remove ikev2/default-keys scenario
No default keys are generated anymore.
2016-10-05 12:25:29 +02:00
Tobias Brunner 62636da4f3 testing: Enable outbound FWD policies in swanctl/manual-prio scenario 2016-09-28 17:56:43 +02:00
Andreas Steffen a9562a3f58 testing: Added swanctl/net2net-multicast scenario 2016-09-27 18:36:28 +02:00
Andreas Steffen d7e0ce2878 testing: Added ikev2/net2net-multicast scenario 2016-09-27 18:36:28 +02:00
Andreas Steffen 6b3e408ba5 Version bump to 5.5.1dr5 2016-09-22 17:36:37 +02:00
Andreas Steffen d505658038 testing: Added swanctl/net2net-sha3-rsa-cert and swanctl/rw-eap-tls-sha3-rsa scenarios 2016-09-22 17:34:31 +02:00
Andreas Steffen 40f2589abf gmp: Support of SHA-3 RSA signatures 2016-09-22 17:34:31 +02:00
Andreas Steffen e31ed9ab98 Version bump to 5.5.1dr4 2016-09-21 14:14:42 +02:00
Andreas Steffen 188b190a70 mgf1: Refactored MGF1 as an XOF 2016-09-21 06:40:52 +02:00
Tobias Brunner b69cbacdfb testing: Use curl instead of soup plugin in libipsec/rw-suite-b scenario
The soup plugin is already used in the openssl-ikev2/rw-suite-b*
scenarios.
2016-09-20 15:36:15 +02:00
Tobias Brunner 6307a18fe1 testing: Fix totals if post test checks fail 2016-09-20 15:36:14 +02:00
Tobias Brunner d8b2980aa5 testing: Log leaks and fail tests if any are detected 2016-09-20 15:36:14 +02:00
Tobias Brunner ac67aeb100 testing: Add output of iptables-save
This might be helpful to get the complete picture of the installed
rules.  `-c` is currently not used as the counters that are added in
front of every rule make the output quite hard to read and the counters
are already provided in the accompanying `iptables -v -L` output.

Fixes #2111.
2016-09-12 16:15:45 +02:00
Tobias Brunner fa36699bfa testing: List `nat` and `mangle` tables in addition to the `filter` table
This is useful in scenarios that e.g. use NAT and/or marks.

References #2111.
2016-09-12 16:15:14 +02:00
Tobias Brunner 92ccc0b412 testing: Ignore comments (lines starting with #) in pre-/eval-/posttest.dat 2016-09-09 12:19:14 +02:00
Tobias Brunner 379d94eb70 testing: Try to properly abort a test run after CTRL-C
The run is aborted after the current scenario.  Depending on which
command was interrupted it might be necessary to press CTRL-C multiple
times (e.g. if a later command depends on the interrupted one).

This should fix HTML files and get us some proper console output after
the run.
2016-08-30 16:16:42 +02:00
Tobias Brunner bdd7c42fc0 testing: Report number of tests per subdirectory in main index 2016-08-30 15:03:40 +02:00
Tobias Brunner dda06b0439 testing: Mount and serve testresults from the host
This avoids having to copy testresults, makes results of cancelled runs
browsable (runs may actually be followed live) and preserves old results
when rebuilding guest images (e.g. when using the build-strongswan script).
The number of consecutive test runs without any intermittent rebuild of the
guest images is also not limited by the image size anymore.
2016-08-29 18:11:42 +02:00
Tobias Brunner 7a8985b575 testing: Create a symlink to the testresults under a known path when starting the environment 2016-08-29 18:11:42 +02:00
Tobias Brunner cf6042453f testing: Serve images in testresults via mod_rewrite and not a symlink 2016-08-29 18:11:42 +02:00
Andreas Steffen d2577aa3c5 Version bump to 5.5.1dr2 2016-08-26 22:55:41 +02:00
Andreas Steffen ce20979ce2 testing: Virtual IPs went missing 2016-08-16 17:18:17 +02:00
Andreas Steffen 5afaf0dba2 Version bump to 5.5.1dr1 2016-08-10 18:11:53 +02:00
Andreas Steffen c1a1f9f548 testing: Added swanctl/rw-newhope-bliss scenario 2016-08-10 15:14:26 +02:00
Andreas Steffen 1e0dc2c329 testing: Add chapoly, ntru and newhope plugins to crypto and integrity tests 2016-08-10 14:34:27 +02:00
Andreas Steffen 277ef8c2fa testing: Added ikev2/rw-newhope-bliss scenario 2016-08-10 14:22:00 +02:00
Andreas Steffen 74de8c3727 Version bump to 5.5.0 2016-07-13 13:26:16 +02:00
Tobias Brunner 5e5dee36b6 testing: Remove obsolete openssl-fips recipe
This was only required when we initially started and OpenSSL was built
from sources, which was changed with b97dd59ba8 ("install FIPS-aware
OpenSSL Debian packages").
2016-07-04 12:18:51 +02:00
Tobias Brunner 7b879874d7 Revert "testing: Only load selected plugins in swanctl"
This reverts commit dee01d019b.

Thanks to 505c318701 ("leak-detective: Try to properly free
allocations after deinitialization") this is not required anymore.
2016-07-01 17:35:52 +02:00
Andreas Steffen ee2644dd3f testing: Version bump to 4.6.3 kernel and strongSwan 5.5.0 2016-06-30 16:20:10 +02:00
Tobias Brunner c3e5109c37 testing: Add ikev1/net2net-esn scenario 2016-06-29 11:16:48 +02:00
Tobias Brunner c01df20ebf testing: Ignore tests/local directory
This could be used for experimental test scenarios that should not get
tracked in the repository.
2016-06-29 10:36:10 +02:00
Tobias Brunner 5a09734c2c testing: Start charon before Apache in tnc/tnccs-20-pdp-pt-tls
The change in c423d0e8a1 ("testing: Fix race in tnc/tnccs-20-pdp-pt-tls
scenario") is not really ideal as now the vici plugin might not yet be
ready when `swanctl --load-creds` is called.  Perhaps starting charon
before Apache causes enough delay.

Once we switch to charon-systemd this isn't a problem anymore as starting the
unit will block until everything is up and ready.  Also, the individual
swanctl calls will be redundant as the default service unit calls --load-all.
But start scripts do run before charon-systemd signals that the daemon is
ready, so using these would work too then.
2016-06-21 17:24:43 +02:00
Tobias Brunner dee01d019b testing: Only load selected plugins in swanctl
The main issue is that the ldap and curl plugins, or rather the libraries
they use, initialize GnuTLS (curl, strangely, even when it is, by its own
account, linked against OpenSSL).  Some of these allocations are only freed
once the libraries are unloaded.  This means that the leak detective causes
invalid frees when swanctl is terminated and libraries are unloaded after the
leak detective is already deinitialized.
2016-06-20 18:23:45 +02:00
Tobias Brunner c423d0e8a1 testing: Fix race in tnc/tnccs-20-pdp-pt-tls scenario
aacf84d837 ("testing: Add expect-connection calls for all tests and
hosts") removed the expect-connection call for the non-existing aaa
connection.  However, because the credentials were loaded asynchronously
via start-script the clients might have been connecting when the secrets
were not yet loaded.  As `swanctl --load-creds` is a synchronous call
this change avoids that issue without having to add a sleep or failing
expect-connection call.
2016-06-17 18:43:36 +02:00
Tobias Brunner 44e83f76f3 testing: Use TLS 1.2 in RADIUS test cases
This took a while as in the OpenSSL package shipped with Debian and on which
our FIPS-enabled package is based, the function SSL_export_keying_material(),
which is used by FreeRADIUS to derive the MSK, did not use the correct digest
to calculate the result when TLS 1.2 was used.  This caused IKE to fail with
"verification of AUTH payload with EAP MSK failed".  The fix was only
backported to jessie recently.
2016-06-17 15:53:12 +02:00
Tobias Brunner 545e529190 testing: Update FreeRADIUS to 2.2.8
While this is not the latest 2.x release it is the latest in /old.

Upgrading to 3.0 might be possible, not sure if the TNC-FHH patches could
be easily updated, though.  Upgrading to 3.1 will definitely not be possible
directly as that version removes the EAP-TNC module.  So we'd first have to
get rid of the TNC-FHH stuff.
2016-06-17 15:53:12 +02:00
Tobias Brunner 67b9e151fa testing: Fix firewall rule on alice in tnc/tnccs-20-pdp-pt-tls scenario 2016-06-17 10:22:03 +02:00
Tobias Brunner 1f98c38283 testing: Build hostapd from sources
There is a bug (fix at [1]) in hostapd 2.1-2.3 that let it crash when used
with the wired driver.  The package in jessie (and sid) is affected, so we
build it from sources (same, older, version as wpa_supplicant).

[1] http://w1.fi/cgit/hostap/commit/?id=e9b783d58c23a7bb50b2f25bce7157f1f3
2016-06-16 14:36:15 +02:00
Tobias Brunner 63d9370249 testing: Update download URL for wpa_supplicant 2016-06-16 14:36:15 +02:00
Tobias Brunner 63acd803f0 testing: Wait for packets to be processed by tcpdump
Sometimes tcpdump fails to process all packets during the short running
time of a scenario:

0 packets captured
18 packets received by filter
0 packets dropped by kernel

So 18 packets were captured by libpcap but tcpdump did not yet process
and print them.

This tries to use --immediate-mode if supported by tcpdump (the one
currently in jessie or wheezy does not, but the one in jessie-backports
does), which disables the buffering in libpcap.

However, even with immediate mode there are cases where it takes a while
longer for all packets to get processed.  And without it we also need a
workaround (even though the version in wheezy actually works fine).
That's why there now is a loop checking for differences in captured vs.
received packets.  There are actually cases where these numbers are not
equal but we still captured all packets we're interested in, so we abort
after 1s of retrying.  But sometimes it could still happen that packets
we expected got lost somewhere ("packets dropped by kernel" is not
always 0 either).
2016-06-16 14:36:15 +02:00
Tobias Brunner eb25b1a73d testing: Fix expect-connection for tkm tests
We don't use swanctl there but there is no load statement either.
2016-06-16 14:35:26 +02:00
Tobias Brunner aacf84d837 testing: Add expect-connection calls for all tests and hosts
There are some exceptions (e.g. those that use auto=start or p2pnat).
2016-06-16 14:35:18 +02:00
Tobias Brunner 8f56bbc82b testing: Update test scenarios for Debian jessie
The main difference is that ping now reports icmp_seq instead of
icmp_req, so we match for icmp_.eq, which works with both releases.

tcpdump now also reports port 4500 as ipsec-nat-t.
2016-06-16 14:04:11 +02:00
Tobias Brunner b71104a3df testing: Fix posttest.dat for ikev2/rw-dnssec scenario 2016-06-16 14:01:47 +02:00
Tobias Brunner 71424a2f85 testing: Make sure tcpdump is actually terminated before analyzing/collecting logs 2016-06-16 14:01:47 +02:00
Tobias Brunner 654343d942 testing: Correctly dis-/enable services with systemd 2016-06-16 14:01:47 +02:00
Tobias Brunner f565f954a7 testing: Install packages like the FIPS-enabled OpenSSL from a custom apt repo 2016-06-16 14:01:47 +02:00
Tobias Brunner 257e5db0d0 testing: Update base image to Debian jessie
Several packages got renamed/updated, libgcrypt was apparently installed
by default previously.

Since most libraries changed we have to completely rebuild all the tools
installed in the root image.  We currently don't provide a clean target in
the recipes, and even if we did we'd have to track which base image we
last built for.  It's easier to just use a different build directory for
each base image, at the cost of some additional disk space (if not manually
cleaned).  However, that's also the case when updating kernel or
software versions.
2016-06-15 17:58:24 +02:00
Tobias Brunner 0889628957 testing: Update 4.x kernel configs to be compatible with Debian 8/systemd 2016-06-15 16:24:44 +02:00
Tobias Brunner 5c71cbfa94 testing: Add root to fstab
This seems to be required for systemd to remount it.
2016-06-15 16:24:44 +02:00
Tobias Brunner 1c616eccae testing: Update Apache config for newer Debian releases
It is still compatible with the current release as the config in
sites-available will be ignored, while conf-enabled does not exist and
is not included in the main config.
2016-06-15 16:24:44 +02:00
Tobias Brunner 2b0a6811ab testing: Explicitly enable RC4 in SSH server config
Newer OpenSSH versions disable this by default because it's unsafe.
Since this is not relevant for our use case we enable it due to its
speed.
2016-06-15 16:24:44 +02:00
Tobias Brunner 6466546f81 testing: Add script to chroot into an image
If changes are made to the base or root image the images depending on
these have to be rebuilt.
2016-06-15 16:24:43 +02:00
Tobias Brunner cac9051eed testing: Add a patch to tnc-fhh that avoids building the tncsim package
This sub-package does not build on Debian jessie.
2016-06-15 16:24:43 +02:00
Tobias Brunner c857621e70 testing: Don't attempt to stop services when building base image
Unlike `apt-get install` in a chroot debootstrap does not seem to start
the services but stopping them might cause problems if they were running
outside the chroot.
2016-06-15 16:24:43 +02:00
Tobias Brunner 796c36ade1 testing: Fix scenarios that check /etc/resolv.conf 2016-06-13 16:18:38 +02:00
Andreas Steffen 78adb5a7b1 testing: Changed gcrypt-ikev1 scenarios to swanctl 2016-05-15 19:02:57 +02:00
Andreas Steffen 141ac4df8f testing: wait until connections are loaded 2016-05-15 19:02:57 +02:00
Andreas Steffen b9522f9d64 swanctl: Do not display rekey times for shunts 2016-05-05 14:53:22 +02:00
Andreas Steffen ff4e01dab5 testing: Use reauthentication and set CHILD_SA rekey time, bytes and packets limits 2016-05-04 18:13:52 +02:00
Andreas Steffen 87381a55a9 testing: uses xauth_id in swanctl/xauth-rsa scenario 2016-05-04 18:13:52 +02:00
Andreas Steffen 278497f2ba testing: Use absolute path of imv_policy_manager 2016-04-26 17:15:37 +02:00
Andreas Steffen b85422b90c testing: -D and -u options in sfdisk are not supported any more 2016-04-26 17:15:37 +02:00
Andreas Steffen 029d3a0ce6 testing: updated testing.conf 2016-04-24 13:36:31 +02:00
Andreas Steffen 0ff486f507 testing: Added swanctl/rw-multi-ciphers-ikev1 scenario 2016-04-12 18:50:58 +02:00
Andreas Steffen d3edc8aa0f testing: Added swanctl/manual_prio scenario 2016-04-09 16:51:02 +02:00
Tobias Brunner 638b4638e3 testing: Add swanctl/net2net-gw scenario 2016-04-09 16:51:00 +02:00
Tobias Brunner ea3a4d3f72 testing: List conntrack table on sun in ikev2/host2host-transport-connmark scenario 2016-04-06 14:01:18 +02:00
Tobias Brunner aa65b8c147 testing: Version bump to 5.4.0
References #1382.
2016-04-06 11:17:40 +02:00
Tobias Brunner 76397efa21 testing: Disable leak detective when generating CRLs
GnuTLS, which can get loaded by the curl plugin, does not properly cleanup
some allocated memory when deinitializing.  This causes invalid frees if
leak detective is active.  Other invalid frees are related to time
conversions (tzset).

References #1382.
2016-04-06 11:16:59 +02:00
Tobias Brunner a9f9598ed0 testing: Updated updown scripts in libipsec scenarios to latest version 2016-03-23 14:13:07 +01:00
Andreas Steffen 90ef7e8af6 Updated swanctl/rw-psk-ikev1 scenario 2016-03-10 13:59:37 +01:00
Tobias Brunner dc57c1b817 testing: Add ikev2/reauth-mbb-revoked scenario 2016-03-10 11:07:15 +01:00
Tobias Brunner d163aa5eaf testing: Generate a CRL that has moon's actual certificate revoked 2016-03-10 11:07:15 +01:00
Andreas Steffen c2523355a4 testing: Added swanctl/mult-auth-rsa-eap-sim-id scenario 2016-03-06 19:09:03 +01:00
Andreas Steffen 70ff382e41 testing: Added swanctl/xauth-rsa scenario 2016-03-06 12:28:55 +01:00
Andreas Steffen 07b0eac4b1 testing: attr-sql is a charon plugin 2016-03-05 15:53:22 +01:00
Andreas Steffen 26d2011b14 testing: Added swanctl/rw-psk-ikev1 scenario 2016-03-05 13:50:41 +01:00
Andreas Steffen 1989c7a381 testing: Include IKE port information in evaltests 2016-03-05 13:44:06 +01:00
Tobias Brunner f80e910cce testing: Add ikev2/redirect-active scenario 2016-03-04 16:03:00 +01:00
Andreas Steffen ba919f393d testing: Added swanctl/protoport-range scenario 2016-03-04 09:52:34 +01:00
Tobias Brunner 28649f6d91 libhydra: Remove empty unused library 2016-03-03 17:36:11 +01:00
Andreas Steffen efefa0c6a1 testing: Added swanctl/shunt-policies-nat-rw 2016-02-28 22:25:50 +01:00
Andreas Steffen 13891e2a4f testing: Some minor fixes in test scenarios 2016-02-28 22:25:21 +01:00
Andreas Steffen 68c9f0bb80 testing: Added swanctl/protoport-dual scenario 2016-02-28 14:33:48 +01:00
Andreas Steffen ddf1fc7692 testing: converted af-alg scenarios to swanctl 2016-02-26 13:31:36 +01:00
Tobias Brunner 4625113b1a testing: Use absolute path to the _updown script in SQL scenarios
/usr/local/sbin is not included in PATH set by the charon init script and
since the ipsec script is obsolete when using swanctl it makes sense to
change this anyway.
2016-02-17 12:00:20 +01:00
Andreas Steffen 963b080810 testing: Increased ping interval in ikev2/trap-any scenario 2016-02-16 18:21:19 +01:00
Andreas Steffen 726a45b2f2 Corrected the description of the swanctl/dhcp-dynamic scenario 2016-02-16 18:17:17 +01:00
Andreas Steffen 4d83c5b4a6 Fix of the mutual TNC measurement use case
If the IKEv2 initiator acting as a TNC server receives invalid TNC measurements
from the IKEv2 responder acting as a TNC clienti, the exchange of PB-TNC batches
is continued until the IKEv2 responder acting as a TNC server has also finished
its TNC measurements.

In the past if these measurements in the other direction were correct
the IKEv2 responder acting as EAP server declared the IKEv2 EAP authentication
successful and the IPsec connection was established even though the TNC
measurement verification on the EAP peer side failed.

The fix adds an "allow" group membership on each endpoint if the corresponding
TNC measurements of the peer are successful. By requiring a "allow" group
membership in the IKEv2 connection definition the IPsec connection succeeds
only if the TNC measurements on both sides are valid.
2016-02-16 18:00:27 +01:00
Andreas Steffen ac134b470a testing: Added swanctl/dhcp-dynamic scenario 2016-02-03 12:10:59 +01:00
Thomas Egerer beb4a07ea8 ikev1: Log successful authentication with signature scheme
Output is now identical to that of the IKEv2 pubkey authenticator.

Signed-off-by: Thomas Egerer <thomas.egerer@secunet.com>
2016-02-01 15:58:53 +01:00
Tobias Brunner 4cfcbe97a4 testing: Don't attempt to start the daemon twice in ha/active-passive scenario 2016-02-01 10:51:12 +01:00
Andreas Steffen 67a38ac6f1 testing: Added swanctl/config-payload scenario 2016-01-14 06:31:28 +01:00
Andreas Steffen e7b5171e43 testing: Use include statement in swanctl/rw-pubkey-keyid scenario 2016-01-14 01:44:17 +01:00
Andreas Steffen 2aa2b17d41 testing: swanctl/rw-pubkey-anon uses anonymous public keys in remote access scenario 2016-01-09 07:23:30 +01:00
Andreas Steffen b83cef2412 testing: added swanctl scenarios net2net-pubkey, rw-pubkey-keyid and rw-dnssec 2016-01-09 07:23:30 +01:00
Andreas Steffen bffbf2f5fd testing: Fixed description of swanctl/frags-iv4 scenario 2016-01-09 00:17:31 +01:00
Andreas Steffen 9db530493f testing: Change sql scenarios to swanctl 2016-01-03 06:28:48 +01:00
Tobias Brunner 1a79525559 testing: Fix some IKEv1 scenarios after listing DH groups for CHILD_SAs 2015-12-21 12:14:12 +01:00
Andreas Steffen 490ba67682 testing: Fixed description in swanctl/rw-ntru-bliss scenario 2015-12-18 15:24:59 +01:00
Andreas Steffen 9463350943 testing: swanctl is enabled by default 2015-12-18 15:22:29 +01:00
Andreas Steffen 76cbf1df34 testing: Added swanctl/rw-ntru-bliss scenario 2015-12-17 17:49:48 +01:00
Andreas Steffen 5e2b740a00 128 bit default security strength requires 3072 bit prime DH group 2015-12-14 10:39:40 +01:00
Andreas Steffen 36b6d400d2 testing: swanctl/rw-cert scenario tests password-protected RSA key 2015-12-12 17:12:44 +01:00
Andreas Steffen 4f7f2538c4 Upgraded IKE and ESP proposals in swanctl scenarios to consistent 128 bit security 2015-12-12 15:54:48 +01:00