Я пытаюсь настроить ядро моего сервера Linux так, чтобы оно не действовало как маршрутизатор, для большей безопасности. Дело не в том, чтобы пересылать пакеты.
Я нашел это:
echo 0 > /proc/sys/net/ipv4/ip_forward
и это:
sysctl -w net.ipv4.ip_forward=0
Очевидно, что оба делают одно и то же, но я не уверен, какова реальная разница между ними. Я также хотел бы сделать эффекты постоянными, если это возможно.
linux
networking
security
kernel
Джон М.
источник
источник
Ответы:
Нет никакой разницы. Команда
sysctl
в Linux записывает напрямую в файлы в/proc/sys
. Этот фрагмент из исходного кодаsysctl
доказывает это:Если вы хотите что-то постоянное, вам нужно отредактировать
/etc/sysctl.conf
или добавить файл в/etc/sysctl.d
(например/etc/sysctl.d/99-disable-ip-forwarding.conf
), содержащий:Кстати, некоторые дистрибутивы уже отключают это явно по умолчанию. Например, RHEL <= 6 или Fedora <= 15 имеют это в
/etc/sysctl.conf
:Fedora 20 больше не отключает его. Там нет настройки переадресации
/etc/sysctl.conf
,/etc/sysctl.d/
или/usr/lib/sysctl.d/
.источник