diff options
author | Lennart Poettering <lennart@poettering.net> | 2019-07-26 09:25:09 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2019-07-26 09:25:09 +0200 |
commit | 0338934f4bcda6a96a5342449ae96b003de3378d (patch) | |
tree | ef17788fd435664d78e4692e27f2437f9749f4d4 | |
parent | e08be64937293e3aa8adb08048497520d58445c6 (diff) | |
download | systemd-0338934f4bcda6a96a5342449ae96b003de3378d.tar.gz |
Revert "Revert "sysctl: Enable ping(8) inside rootless Podman containers""
This reverts commit be74f51605b4c7cb74fec3a50cd13b67598a8ac1.
Let's add this again. With the new sysctl "-" thing we can make this
work.
-rw-r--r-- | NEWS | 9 | ||||
-rw-r--r-- | sysctl.d/50-default.conf | 8 |
2 files changed, 17 insertions, 0 deletions
@@ -2,6 +2,15 @@ systemd System and Service Manager CHANGES WITH 243 in spe: + * This release enables unprivileged programs (i.e. requiring neither + setuid nor file capabilities) to send ICMP Echo (i.e. ping) requests + by turning on the net.ipv4.ping_group_range sysctl of the Linux + kernel for the whole UNIX group range, i.e. all processes. This + change should be reasonably safe, as the kernel support for it was + specifically implemented to allow safe access to ICMP Echo for + processes lacking any privileges. If this is not desirable, it can be + disabled again by setting the parameter to "1 0". + * Previously, filters defined with SystemCallFilter= would have the effect that an calling an offending system call would terminate the calling thread. This behaviour never made much sense, since killing diff --git a/sysctl.d/50-default.conf b/sysctl.d/50-default.conf index 27084f6242..f0b4f610f8 100644 --- a/sysctl.d/50-default.conf +++ b/sysctl.d/50-default.conf @@ -30,6 +30,14 @@ net.ipv4.conf.all.accept_source_route = 0 # Promote secondary addresses when the primary address is removed net.ipv4.conf.all.promote_secondaries = 1 +# ping(8) without CAP_NET_ADMIN and CAP_NET_RAW +# The upper limit is set to 2^31-1. Values greater than that get rejected by +# the kernel because of this definition in linux/include/net/ping.h: +# #define GID_T_MAX (((gid_t)~0U) >> 1) +# That's not so bad because values between 2^31 and 2^32-1 are reserved on +# systemd-based systems anyway: https://systemd.io/UIDS-GIDS.html#summary +net.ipv4.ping_group_range = 0 2147483647 + # Fair Queue CoDel packet scheduler to fight bufferbloat net.core.default_qdisc = fq_codel |