Estoy tratando de configurar el kernel de mi servidor Linux para que no actúe como enrutador, para mayor seguridad. El punto no es reenviar paquetes.
He encontrado esto:
echo 0 > /proc/sys/net/ipv4/ip_forward
y esto:
sysctl -w net.ipv4.ip_forward=0
Obviamente, ambos hacen lo mismo, pero no estoy seguro de cuál es la verdadera diferencia entre ellos. También me gustaría hacer que los efectos sean permanentes si es posible.
linux
networking
security
kernel
John M.
fuente
fuente
Respuestas:
No hay diferencia. El
sysctl
comando en Linux escribe directamente en los archivos/proc/sys
. Este fragmento del código fuente losysctl
demuestra:Si desea algo permanente, debe editar
/etc/sysctl.conf
o agregar un archivo en/etc/sysctl.d
(p/etc/sysctl.d/99-disable-ip-forwarding.conf
. Ej. ) Que contenga:Por cierto, algunas distribuciones ya lo desactivan explícitamente por defecto. Por ejemplo, RHEL <= 6 o Fedora <= 15 tienen esto en
/etc/sysctl.conf
:Fedora 20 ya no lo deshabilita explícitamente. No hay configuración de reenvío en
/etc/sysctl.conf
,/etc/sysctl.d/
o/usr/lib/sysctl.d/
.fuente