Instalé CentOS 7 con una configuración mínima (herramientas os + dev). Estoy tratando de abrir el puerto 80 para el httpd
servicio, pero algo está mal con mi servicio de iptables ... ¿qué tiene de malo? ¿Qué estoy haciendo mal?
# ifconfig/sbin/service iptables save
bash: ifconfig/sbin/service: No such file or directory
# /sbin/service iptables save
The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.
# sudo service iptables status
Redirecting to /bin/systemctl status iptables.service
iptables.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
# /sbin/service iptables save
The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.
# sudo service iptables start
Redirecting to /bin/systemctl start iptables.service
Failed to issue method call: Unit iptables.service failed to load: No such file or directory.
networking
centos
iptables
systemd
Meiblorn
fuente
fuente
Respuestas:
Con RHEL 7 / CentOS 7, se introdujo firewalld para administrar iptables. En mi humilde opinión, firewalld es más adecuado para estaciones de trabajo que para entornos de servidor.
Es posible volver a una configuración de iptables más clásica. Primero, deténgase y enmascare el servicio firewalld:
Luego, instale el paquete iptables-services:
Habilite el servicio en el momento del arranque:
Administrar el servicio
Puede guardar las reglas de su firewall de la siguiente manera:
o
fuente
RHEL y CentOS 7 usan firewall-cmd en lugar de iptables . Deberías usar ese tipo de comando:
Luego, puede volver a cargar las reglas para asegurarse de que todo esté bien
Esto es mejor que usar iptable-save, espacialmente si planea usar contenedores lxc o docker. Al iniciar los servicios de Docker se agregarán algunas reglas que el comando iptable-save le solicitará. Si guarda el resultado, tendrá muchas reglas que NO deben guardarse. Debido a que los contenedores Docker pueden cambiarlos de direcciones IP en el próximo reinicio.
Firewall-cmd con opción permanente es mejor para eso.
Verifique "man firewall-cmd" o consulte los documentos oficiales de firewalld para ver las opciones. Hay muchas opciones para verificar zonas, configuración, cómo funciona ... la página del manual está realmente completa.
Recomiendo no usar iptables-service desde Centos 7
fuente
Tuve el problema de que el reinicio no iniciaría iptables.
Esto lo solucionó:
fuente
# systemctl start iptables
daFailed to start iptables.service: Unit not found.
y# systemctl start ip6tables
daFailed to start ip6tables.service: Unit not found.
Prueba el siguiente comando
iptables-save
.fuente
iptables-save > /etc/sysconfig/iptables
Modifiqué el
/etc/sysconfig/ip6tables-config
archivo cambiando:A:
Y esto:
A:
Esto pareció guardar los cambios que hice usando los comandos de iptables a través de un reinicio.
fuente
Coloque la configuración de IPtables en el archivo tradicional y se cargará después del arranque:
/ etc / sysconfig / iptables
fuente
El mes pasado intenté configurar iptables en un contenedor LXC VM, pero cada vez que se reiniciaba, la configuración de iptables no se cargaba automáticamente.
La única forma de que funcionara fue ejecutando el siguiente comando:
fuente
Y para agregar, también debe poder hacer lo mismo para ip6tables después de ejecutar el
systemctl mask firewalld
comando:fuente
Si lo hace, y está utilizando fail2ban, deberá habilitar los filtros / acciones adecuados:
Pon las siguientes líneas en
/etc/fail2ban/jail.d/sshd.local
Habilitar e iniciar fail2ban:
Referencia: http://blog.iopsl.com/fail2ban-on-centos-7-to-protect-ssh-part-ii/
fuente