add support route based ipsec vpn negotiation with sec(4) via isakmpd.
authordlg <dlg@openbsd.org>
Mon, 7 Aug 2023 04:10:08 +0000 (04:10 +0000)
committerdlg <dlg@openbsd.org>
Mon, 7 Aug 2023 04:10:08 +0000 (04:10 +0000)
commit8fd570bd951d6ecffe5c8ff12ca193326762d454
treee01e72c8f255e091166c00f0084c17e4135314ca
parent0c1280a3aad6116bc6d1ea0d3199a43676d9b4c8
add support route based ipsec vpn negotiation with sec(4) via isakmpd.

this adds "interface secX" to the grammar that you can use instead
of specifying tunnel/transport modes and traffic selectors.

if you have config like "ike interface sec0 local ... peer ...",
ipsecctl will generate the right config for isakmpd to negotiate
esp tunnels for all traffic between 0.0.0.0/0 and 0.0.0.0/0. however,
this also specifies that they should be set up as interface SAs in
the kernel for use with sec(4).

this supports route-based instead of policy based ipsec encapsulation,
and allows us to more easily operate with other vendors and products
that also offer route-based vpns with opinions about the negotiated
policy that doesnt fit with the SPD.

support from many including markus@ tobhe@ claudio@ sthen@ patrick@
now is a good time deraadt@
sbin/ipsecctl/ike.c
sbin/ipsecctl/ipsecctl.h
sbin/ipsecctl/parse.y
sbin/ipsecctl/pfkdump.c