icmp_echo_ignore_all=1が効かない


Debian 9.9の/etc/sysctl.confに下記の設定を加えて再起動しました。

net.ipv4.icmp_echo_ignore_all = 1

しかし、再起動してみると

# sysctl -a | fgrep net.ipv4.icmp_echo_ignore_all
net.ipv4.icmp_echo_ignore_all = 0

となってしまい、なぜか有効になりません。

ちなみにsysctl -pを実行するとちゃんと=1になるので、どこか別の設定が上書きしてるような感じも。という事でちょちょっとfind。

# find /etc -type f | xargs grep net.ipv4.icmp_echo_ignore_all
/etc/ufw/sysctl.conf:net/ipv4/icmp_echo_ignore_all=0

はい、ありました。

どうやらufwでこのパラメータを設定しているようです。

sysctl.confでの定義はやめて、ufw側で設定する事にしました。

# vi /etc/ufw/sysctl.conf
net/ipv4/icmp_echo_ignore_all=0 ← ここを1に変更

あと、またsysctl.confを編集しちゃわないように、コメントを加えておきます。

# vi /etc/sysctl.conf
## [WARN] Not enable, see /etc/ufw/sysctl.conf
## net.ipv4.icmp_echo_ignore_all=1