firewalld


firewalld es el sustituto en Centos7 a iptables, adaptado a un nivel más fácil, es decir, en una sola línea de comando se podría abrir un puerto.

Haciendo un resumen de los comandos más utilizados, podemos encontrar:

iptables -nL | grep ACCEPT | grep NEW
Este comando muestra los puertos recientes que tiene abierto el servidor

firewall-cmd --zone=public --add-port=80/tcp
Este comando abre el puerto 80, también pudiendo sustituir el número "80" por su servicio, en este caso "http".

firewall-cmd --zone=public --add-service=http

El problema radica en que el puerto solo se mantendrá abierto hasta el próximo arranque del servidor, por lo que para hacerlo permanente deberá añadirle --permanent, quedando de la siguiente forma:
firewall-cmd --zone=public --add-port=80/tcp --permanent

De esta manera, en cierta parte el comando se simplifica ya que funciona por zonas (en este caso, en public, que es la zona pública) y no hay que decirle a cada puerto abierto el rango o la IP que acepta, sino que en la zona lo tiene delimitado.
El mismo comando en iptables, sería:

iptables -A INPUT -p tcp -m state --state NEW -m tcp -s 192.168.1.0/24 --dpor
Por tanto el firewalld con respecto a las iptables es menos completo.



Sustituir firewalld por iptables - NO RECOMENDADO!!!


En primer lugar hay que instalar el servicio iptables
yum install iptables-services
Desactivar firewalld y habilitar iptables
systemctl mask firewalld
 
systemctl enable iptables
 
Detener el demon firewall y habilitar el iptables
systemctl stop firewalld
systemctl start iptables

Manual firewalld integrado


$ man firewalld
$ man firewalld.conf
$ man firewalld.service
$ man firewalld.zone
$ man firewalld.zones
$ man firewall-cmd
$ man firewalld-config
 
Con estas lineas podrás acceder a los manuales que tiene integrado el propio paquete