Commit graph

93 commits

Author SHA1 Message Date
Philip Prindeville
27caf23cc4 strongswan: bump to 5.9.2
Retire weak algorithms like MD5 and 3DES.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
(cherry picked from commit ae3d5aa73e)
2021-04-06 16:05:19 -07:00
Philip Prindeville
11e289b48b strongswan: force PIC on all builds
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
(cherry picked from commit a72780a9c2)
2021-04-06 16:05:19 -07:00
Philip Prindeville
57836bb7d0 strongswan: migrate to swanctl configs
Derived from the ipsec initd script, with the following changes:

(1) various code improvements, corrections (get rid of left/right
    updown scripts, since there's only one), etc;
(2) add reauth and fragmentation parameters;
(3) add x.509 certificate-based authentication;

and other minor changes.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
(cherry picked from commit f9d91f1f47)
2021-04-06 16:05:19 -07:00
Philip Prindeville
a6eaab4553 strongswan: remove synthesized ipsec conf files
If you shutdown ipsec service, and it doesn't clean up
/var/ipsec/ipsec.conf, then when you start swanctl service it
might see an incompatible file on startup.  Remedy is to
remove unneeded files when shutting down the service.  They
can always be regenerated when the service starts again.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
(cherry picked from commit baa38a1420)
2021-04-06 16:05:19 -07:00
Philip Prindeville
c5335e865d strongswan: move ipsec conf files to subpackage
These config files are only used by the ipsec interface to charon,
and shouldn't be part of the base package.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
(cherry picked from commit e626255b37)
2021-04-06 16:05:19 -07:00
Philip Prindeville
56feabdcdc strongswan: make the include's in the .conf files persistent
Having scripts diddle user written config files seems potentially
dangerous.  Plus there's really no downside to including some
empty files.  Best to just make the includes be permanent.

Additional feature suggested by Luiz: if a -opkg version of the
config file was created unnecessarily, remove it as part of the
upgrade process since changes won't be happening to that file
as an artifact of the service starting.  The include lines are
now permanent, which means that (1) additional configuration
synthesized by UCI won't be anywhere that opkg (or sysupgrade,
for that matter) cares about since it won't be persistent, and
(2) if changes are being made, then they're being done by a
person with an editor and they really should be distinguished.

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
(cherry picked from commit 643df01275)
2021-04-06 16:05:19 -07:00
Philip Prindeville
2983a7f9ef strongswan: change maintainers
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
(cherry picked from commit 0bd4410e30)
2021-04-06 16:05:19 -07:00
Philip Prindeville
cc8a4252b1 strongswan: fix local_gateway discovery
This has been observed by myself and @luizluca: ip route get is
appending uid0 to the output, as seen from:

root@OpenWrt2:~# ip route get 1.1.1.1
1.1.1.1 via 174.27.160.1 dev eth3 src 174.27.182.184 uid 0
    cache
root@OpenWrt2:~#

so the fix is an anchored match, discarding all else. Also, using
ip -o means never having to do multiline matches...

Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
(cherry picked from commit ec72d3a9e4)
2021-04-06 16:05:19 -07:00
Philip Prindeville
af866db607
Merge pull request #14668 from pprindeville/strongswan-create-swanctl.d-dir
strongswan: create /etc/swanctl/conf.d directory
2021-02-09 22:24:20 -07:00
Philip Prindeville
6753414f85 strongswan: include /etc/swanctl/conf.d/ directory
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2021-02-08 23:51:45 -07:00
Philip Prindeville
9ddc502872 strongswan: avoid duplicate logging
Signed-off-by: Philip Prindeville <philipp@redfish-solutions.com>
2021-02-05 22:10:29 -07:00
Stijn Tintel
5f0918281b strongswan: bump to 5.9.1
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2020-11-30 19:02:57 +02:00
Stijn Tintel
35ef427185 strongswan: bump to 5.9.0
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2020-09-02 23:20:33 +03:00
Michael C. Bazarewsky
51214e191f strongswan: add left and mark configuration to UCI
This commit allows for UCI configuration of the "left=" and the
"mark=" values in a StrongSwan IPSec connection.  This improves
VTI support and allows certain stricter connection scenarios.

Signed-off-by: Michael C. Bazarewsky <github@bazstuff.com>
2020-08-27 16:06:34 -04:00
Stijn Tintel
d1e31481ec strongswan: bump to 5.8.4
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2020-05-08 06:02:32 +03:00
Stijn Tintel
b5eb749a0d strongswan: move ipsec.* to strongswan-ipsec
When building with strongswan-ipsec disabled, strongswan fails to build
because the ipsec.conf file does not exist. Fix this by moving the
ipsec.* files and directories to the strongswan-ipsec package.

Closes #10879 while keeping ipsec.conf to avoid breaking existing
setups, as opposed to #11709.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2020-03-30 14:50:18 +03:00
Sven Roederer
49f298eb74
strongswan: add conffiles for swanctl util
Add a conffiles-section for the /etc/swanctl folder, which is used by the  swanctl util. This will keep the configfiles during an sysupgrade.

Signed-off-by: Sven Roederer <S.Roederer@colvistec.de>
2020-03-25 12:03:48 +01:00
Eneas U de Queiroz
404c113bc2
strongswan: quote 'comment' parameter in Config.in
Newer versions of the kconfig generator require quotes.  Prepare the
package for an eventual update.

Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
2020-03-18 09:40:54 -03:00
Stijn Tintel
f68f23f094 strongswan: bump to 5.8.2
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2020-01-17 00:53:36 +02:00
Paul Fertser
a8fa557cd5 strongswan: allow to specify per-connection reqid with UCI
This is useful to assign all traffic to a fw3 zone, e.g.:

/etc/config/ipsec:

config remote 'test'
	list tunnel		'dev'
...

config 'tunnel' 'dev'
	option reqid		'33'
...

/etc/config/firewall:

config zone
	option name		wan
	option extra_src	"-m policy --pol none --dir in"
	option extra_dest	"-m policy --pol none --dir out"
...

config zone
	option name		vpn
	# subnet needed for firewall3 before 22 Nov 2019, 8174814a
	list subnet		'0.0.0.0/0'
	option extra_src	"-m policy --pol ipsec --dir in --reqid 33"
	option extra_dest	"-m policy --pol ipsec --dir out --reqid 33"
...

Signed-off-by: Paul Fertser <fercerpav@gmail.com>
2019-11-26 15:27:54 +03:00
Jan Pavlinec
299e5b0a9b
treewide: add PKG_CPE_ID for better cvescanner coverage
Signed-off-by: Jan Pavlinec <jan.pavlinec@nic.cz>
2019-09-17 12:40:26 +02:00
Stijn Tintel
6bcfacca5e strongswan: bump to 5.8.1
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-09-16 02:28:20 +03:00
Sven Eckelmann
bbb1ea7345 treewide: Change .*GPL.*+ licenses to SPDX compatible identifier
The CONTRIBUTING.md requests an (or multiple) SPDX identifier for GPL
licenses. But a lot of packages did use a different, non-SPDX style with a
"+" at the end instead of "-or-later".

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2019-09-10 07:45:15 +02:00
Lucian Cristian
179175e27c strongswan: update to 5.8.0
Signed-off-by: Lucian Cristian <lucian.cristian@gmail.com>
2019-05-23 20:54:28 +03:00
Moritz Warning
21e989190e strongswan: collapse menu items
Signed-off-by: Moritz Warning <moritzwarning@web.de>
2019-03-27 18:21:54 +01:00
Stijn Tintel
ce1a54563f strongswan: bump to 5.7.2
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2019-01-02 14:00:32 +01:00
Stijn Tintel
c39f703bdd strongswan: bump to 5.7.1
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-10-19 19:23:54 +03:00
Stijn Tintel
172ae80bc1 strongswan: bump to 5.7.0
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-10-07 14:39:04 +03:00
Magnus Kroken
fe973d181b strongswan: backport upstream fixes for CVEs in gmp plugin
This fixes:
* CVE-2018-16151
* CVE-2018-16152
* CVE-2018-17540

Details:
https://strongswan.org/blog/2018/09/24/strongswan-vulnerability-(cve-2018-16151,-cve-2018-16152).html
https://strongswan.org/blog/2018/10/01/strongswan-vulnerability-(cve-2018-17540).html

Signed-off-by: Magnus Kroken <mkroken@gmail.com>
2018-10-06 01:31:10 +02:00
Hans Dedecker
3bc3949e28 strongswan: refresh patches
Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-09-13 14:38:51 +02:00
Hans Dedecker
d0ac611bf0 strongswan: fix OpenWrt hotplug script handling
Commit 6cd8fcabe added ipsec hotplug script support by calling "exec
/sbin/hotplug-call ipsec".
Using the exec call breaks the insertion of iptables rules by the _updown.in
script as hotplug-call just replaces the current shell meaning the commands
following exec do not run since the shell is replaced and as a result lead to
connectivity issues.
Fix this by removing the exec command in front of /sbin/hotplug-call.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2018-09-13 14:37:53 +02:00
Stijn Tintel
bdc6b8c5e2
Merge pull request #6423 from micmac1/strongswan-uclibc-iconv
strongswan: fix uclibc build issue
2018-08-02 19:42:31 +03:00
Florian Eckert
6cd8fcabe6 strongswan: add openwrt hotplug script handling
Ipsec user script (/etc/ipsec.user) now get called indirectly by openwrt
"/sbin/hotplug-call". So other packages could also install their scripts
in "/etc/hotplug.d/ipsec".

Signed-off-by: Florian Eckert <fe@dev.tdt.de>
2018-07-16 11:34:57 +02:00
Sebastian Kemper
7a0aebbff2 strongswan: include nls.mk for mysql plugin
ibmariadb 10.2 needs to be linked in together with iconv.

Signed-off-by: Sebastian Kemper <sebastian_ml@gmx.net>
2018-07-13 22:31:28 +02:00
Stijn Tintel
7bb68c74e2 strongswan: bump to 5.6.3
Fixes the following CVEs:
- CVE-2018-5388
- CVE-2018-10811

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-05-28 23:38:53 +03:00
Stijn Tintel
ec623f6b42 strongswan: bump to 5.6.2
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2018-02-27 00:35:47 +01:00
Hans Dedecker
74dbf6bcbe strongswan: add interface uci list
The interface config option allows users to configure logical OpenWRT
interface names in the ipsec section; it allows StrongSwan to listen
and send traffic on specified interface(s). It translates to interfaces_use
StrongSwan option which is a comma sepearted list of network devices
that should be used by charon.
Since StrongSwan can only be started when one of the specified logical
OpenWRT interface is up procd interface triggers are installed to
trigger the reload script.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-13 18:46:37 +01:00
Hans Dedecker
1d31d840d4 strongswan: fix reload service
Based on the ipsec running state reload_service is either reloading ipsec
or starting ipsec. However in the latter case it calls ipsec start which
bypasses the procd start_service function which means the running ipsec
instance is not managed by procd.
Fix this by calling start in case ipsec is not running; at the same time
add service_running function which is used by procd provided running
function.

Signed-off-by: Hans Dedecker <dedeckeh@gmail.com>
2017-12-13 10:49:55 +01:00
Stijn Tintel
e247b66790 strongswan: bump to 5.6.1
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-11-30 02:01:24 +01:00
Stijn Tintel
b5c75be32b strongswan: bump to 5.6.0
Fixes CVE-2017-11185.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-28 19:40:03 +03:00
Stijn Tintel
ba1ead54f0 strongswan: use -eq when testing booleans
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-07 20:19:18 +02:00
Stijn Tintel
6f00048eca strongswan: convert init script to procd
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-07 20:19:18 +02:00
Stijn Tintel
b93a53bd94 strongswan: check return value instead of output
When the strongswan service is running, `ipsec status` returns 0. Check
the return value instead of checking its output.

While at it, remove the [[ ]] bashism, use rereadall instead of
(reread)secrets, and move it inside the if statement.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-07 20:19:18 +02:00
Stijn Tintel
44ef6048e2 strongswan: remove checks for UCI config
In commit 36e073d820, some checks were
added to see if the UCI config file exists and if there are any peers
configured in it. Due to these checks, if /etc/config/ipsec exists, but
contains no enabled peers, strongswan will not be started. This is not
ideal, as a user might want to experiment with the UCI config while
keeping existing connections in /etc/ipsec.conf operational.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-07 20:19:18 +02:00
Stijn Tintel
3097a8919e strongswan: add charon-cmd utility
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-07 20:19:18 +02:00
Stijn Tintel
6cd24ed87c strongswan: add missing charon config files
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-07 20:19:18 +02:00
Stijn Tintel
4e94a3ddfd strongswan: add swanctl utility
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-07 20:19:18 +02:00
Stijn Tintel
4bb5d8d892 strongswan: add vici plugin
Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-07 20:19:18 +02:00
Stijn Tintel
0c30b50fe2 strongswan: rename -utils to -ipsec
Since the strongswan-utils package now only contains the aging ipsec
utility, rename it to strongswan-ipsec.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-07 20:19:18 +02:00
Stijn Tintel
1a621aaa35 strongswan: split scepclient into separate package
We currently include the SCEP client in strongswan-utils, which is a
dependency of the strongswan-default meta-package. As it's generally not
recommended to generate keys on embedded devices due to lack of entropy,
move the SCEP client to a separate package, and only depend on it in the
strongswan-full meta-package.

While at it, add scepclient.conf to the package.

Signed-off-by: Stijn Tintel <stijn@linux-ipv6.be>
2017-08-07 20:19:18 +02:00