FIREWALLD (II) : Los Servicios

El siguiente paso es habilitar los servicios y puertos que necesitemos en nuestro equipo para permitir las conexiones.

Comprobamos en qué zona estamos trabajando:

# firewall-cmd --get-default-zone
public

Esto quiere decir que todos los cambios que hagamos serán sobre la zona public del firewall.
Para ver los servicios que hay actualmente abiertos en nuestro firewall ejecutamos:

# firewall-cmd --list-services
dhcpv6-client mdns mountd nfs rpc-bind ssh

Si queremos ver los servicios de otras zonas, podemos utilizar:

# firewall-cmd –zone=<nombre-de-la-zona> –list-services

Para ver todos los servicios disponibles en la configuración de firewalld:

# firewall-cmd --get-services 
amanda-client bacula bacula-client dhcp dhcpv6 dhcpv6-client dns ftp high-availability http https imaps ipp ipp-client ipsec kerberos kpasswd ldap ldaps libvirt libvirt-tls mdns mountd ms-wbt mysql nfs ntp openvpn pmcd pmproxy pmwebapi pmwebapis pop3s postgresql proxy-dhcp radius rpc-bind samba samba-client smtp ssh telnet tftp tftp-client transmission-client vnc-server wbem-https

Y para añadir un servicio a la zona en la que estamos trabajando:

# firewall-cmd --add-service=http
success

Comprobamos que se ha añadido correctamente:

# firewall-cmd --list-services
dhcpv6-client http mdns mountd nfs rpc-bind ssh

Ahora probamos a eliminarlo y comprobar que ya no está:

# firewall-cmd --remove-service=http
success
# firewall-cmd --list-services
dhcpv6-client mdns mountd nfs rpc-bind ssh

Una opción interesante es abrir un servicio durante un periodo de tiempo, para ello utilizamos la opción –timeout. En este caso, añadimos el servicio http durante 5 segundos, listamos los servicios activos, esperamos 10 segundos y volvemos a listar los servicios activos:

# firewall-cmd --add-service=http --timeout=5; firewall-cmd --list-services; sleep 10; firewall-cmd --list-services 
success
dhcpv6-client http mdns mountd nfs rpc-bind ssh
dhcpv6-client mdns mountd nfs rpc-bind ssh

Si no hay un servicio predefinido que se ajuste a la conexión que necesitamos, podemos abrir los puertos directamente, utilizando la opción  –add-port. Igual que antes, añadimos un puerto durante 5 segundos, listamos los puertos abiertos (–list-ports), esperamos 10 segundos y volvemos a hacer el listado:

# firewall-cmd --add-port=10000/udp --timeout=5; firewall-cmd --list-ports; sleep 10; firewall-cmd --list-ports 
success
10000/udp

Para ver tanto los puertos como servicios abiertos, se puede utilizar el siguiente commando:

# firewall-cmd --list-all
public (default, active)
 interfaces: wlp3s0
 sources:
 services: dhcpv6-client mdns mountd nfs rpc-bind ssh
 ports: 10000/udp
 masquerade: no
 forward-ports:
 icmp-blocks:
 rich rules:

Todos los cambios que hemos hecho hasta ahora son temporales y se perderán cuando el servicio firewalld o el equipo se reinicien.

Para evitarlo, se puede utilizar el parámetro –permanent, por ejemplo:

# firewall-cmd --permanent --add-service=http

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Current ye@r *