En versiones anteriores a CentOS 7 teníamos el servicio iptables que se refería al Firewall. Ahora en CentOS 7, este servicio es distinto y se llama firewalld. Si deseamos mantener la antigua forma de abrir un puerto, mediante iptables; podemos instalar el servicio iptables en CentOS 7 y deshabilitar el firewalld que lleva esta versión por defecto. No obstante si queremos mantener el nuevo comando de firewalld, tendremos que abrir el puerto ejecutando un comando distinto.
Abrir puertos en CentOS7
Aquí les dejamos unos sencillos pasos para abrir un puerto en CentOS 7 de forma permanente, utilizando el nuevo comando firewalld. Siempre puedes editar de forma estática el fichero /etc/firewalld/zones/zone.conf y reiniciar el servicio, pero la forma correcta de hacerlo es la siguiente:
1. Abrir el puerto especificando la zona adecuada, número de puerto y protocolo. Para que el puerto sobreviva frente a un reinicio del servidor, al final de la línea de comando debes añadir la regla “–permanent” :
# firewall-cmd --zone=<zone> --add-port=<port_number>/<protocol> --permanent
Por ejemplo, si deseamos abrir el puerto 80 de forma permanente el comando sería así :
# firewall-cmd --zone=public --add-port=80/tcp --permanent
2. Para que los cambios tengan efecto debes reiniciar el firewall con este comando:
# firewall-cmd --reload
Consultar los puertos abiertos con Nmap en CentOS7
3.- Una de las herramientas que nos permite consultar los puertos que tenemos abiertos es Nmap. Para ello, instalamos Nmap con el siguiente comando:
# yum install nmap
4.- Para ver los puertos que tenemos abiertos con nmap, podemos verlos de dos formas: «Ver los puertos abiertos en local», que aunque los tengamos abiertos no necesariamente salen a Internet o «ver los puertos abiertos en el servidor» que aquí si podemos ver los que salen a internet a través de la IP de nuestro servidor. Por tanto, aplicaremos un comando distinto para cada uno de ellos según lo que necesitemos conocer al comprobarlos:
Ver los puertos abiertos locales, ejecutar:
# nmap localhost
El resultado es el siguiente:
Ver lo puertos abiertos en Internet, ejecutar:
# nmap 108.61.155.194
ver puertos nmap centos7 2
Uso y ejemplos de Nmap
NMAP dispone de una multitud de combinaciones y parámetros pero vamos a mostrar solamente unos cuantos ejemplos:
Escanear todos los puertos de un host con información extendida (verbose):
# nmap -v 192.168.1.1
Escanear un único puerto en un host:
# nmap -p 80 192.168.1.1
Buscar puertos TCP abiertos en una máquina:
# nmap -sT 192.168.1.1
Buscar puertos UDP abiertos en una máquina:
# nmap -sU 192.168.1.1
Escaneo de protocolos de un host (además de TCP,UDP, muestra disponibilidad de ICMP, IGMP…):
# nmap -sO 192.168.1.1
Escanear un rango de puertos:
# nmap -p 80-200 192.168.1.1
Escanear un rango de puertos y unos puertos específicos, tanto TCP como UDP:
# nmap -p U:53,161,8888,T:1000-2000,80,25,8888,8080 192.168.1.100
Estos serían algunos ejemplos para un uso básico de Nmap. Esta herramienta es muy amplia y se necesitaría un libro entero para sacarle partido al 100%.