GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo permitir o bloquear el puerto y la dirección IP usando Firewalld, tablas de IP y UFW en Linux?

En Linux, el firewall es esencial para controlar el tráfico de red entrante y saliente. Es muy fácil permitir o bloquear direcciones IP y puertos usando el firewall. Estos son los comandos para permitir o bloquear direcciones IP y puertos usando varios cortafuegos.

Cortafuegos

Firewalld es una herramienta de administración de firewall en el sistema operativo Linux. Se configura con archivos XML. Podemos usar la interfaz de línea de comandos de firewall-cmd para configurar y manipular las reglas del firewall.

  1. Permitir el tráfico entrante del puerto 80. El siguiente comando permitirá el tráfico del puerto 80.

    # sudo firewall-cmd --zone=public --add-port=80/tcp
  2. Permitir el puerto de entrada 80 en el cortafuegos permanente.

    # sudo firewall-cmd --zone=public --permanent --add-port=80/tcp
  3. Denegar el puerto saliente número 25. El siguiente comando bloqueará todas las conexiones salientes del puerto 25.

    # firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 0 -p tcp -m tcp -d 127.0.0.1 --dport=25 -j ACCEPT
    # firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -m tcp --dport=25 -j REJECT
    # firewall-cmd --reload
  4. Denegar el número de puerto entrante 80. El siguiente comando denegará todo el tráfico del puerto 80.

    # sudo firewall-cmd --remove-port=80/tcp --permanent
  5. Ejecute el siguiente comando para bloquear una dirección IP en Firewalld. Reemplace 173.248.192.11 con su dirección IP.

    # sudo firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='173.248.192.11' reject"
  6. Puerto abierto para la dirección IP específica en Firewalld. Agregue la dirección IP de origen y el puerto (3306) que desea abrir en su servidor local de Linux. Después de eso, vuelva a cargar la configuración de firewalld para aplicar los cambios.

    # firewall-cmd --zone=mariadb-access --add-source=173.248.192.11 --permanent
    # firewall-cmd --zone=mariadb-access --add-port=3306/tcp --permanent
    # firewall-cmd --reload

Iptables

Iptables utiliza un conjunto de tablas que tienen cadenas que contienen un conjunto de reglas integradas o definidas por el usuario. Usando estas reglas, podemos filtrar el tráfico de red en máquinas Linux.

  1. Ejecute el siguiente comando para permitir todas las conexiones HTTP entrantes (puerto 80).

    # sudo iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
    # sudo iptables -A OUTPUT -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED -j ACCEPT
    El segundo comando permite el tráfico saliente de conexiones HTTP establecidas, necesario si la política de salida no está establecida en ACEPTAR.

  2. Ejecute el siguiente comando para permitir múltiples puertos entrantes. El siguiente comando aceptará el tráfico de los puertos 22,53 y 80.

    # /sbin/iptables -A INPUT -p tcp --match multiport --dports 22,53,80 -j ACCEPT
  3. Denegar el puerto entrante 80 mediante IPtables. El siguiente comando denegará todas las conexiones entrantes para el puerto 80.

    # /sbin/iptables -A OUTPUT -p tcp --dport 80 -j DROP
    # /sbin/service iptables save
  4. Bloquear una dirección IP en IPtables. Reemplace 173.248.192.11 con su dirección IP.

    # sudo iptables -A INPUT -s 173.248.192.11 -j DROP
  5. Puerto abierto para dirección IP específica en IPtables. Permitir SSH entrante desde una dirección IP o subred específica.

    # sudo iptables -A INPUT -p tcp -s 173.248.192.11 --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
    # sudo iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT

UFW - Cortafuegos sin complicaciones

UFW también se conoce como cortafuegos sin complicaciones. Es adecuado para cortafuegos basados ​​en host. Admite tanto IPv4 como IPv6.

  1. Permitir el puerto entrante 80. El siguiente comando permitirá todo el tráfico desde el puerto 80.

    # sudo ufw allow 80
  2. Permitir múltiples puertos entrantes. El siguiente comando permitirá el tráfico entrante desde los puertos 53, 80 y 443.

    # sudo ufw allow 53,80,443
  3. Denegar el puerto entrante 80. El siguiente comando denegará todo el tráfico entrante para los puertos 80.

    # sudo ufw deny 22
  4. Denegar el puerto saliente 25. El siguiente comando denegará todo el tráfico saliente del puerto 25.

    # sudo ufw deny out 25
  5. Bloquear una dirección IP en UFW. Puede bloquear cualquier dirección IP para el tráfico entrante en su máquina.

    # sudo ufw deny from 173.248.192.11
  6. Puerto abierto para dirección IP específica en UFW. El siguiente comando abrirá el puerto 80 para la dirección IP mencionada. Puede reemplazarlo con su dirección IP.

    # sudo ufw allow from 173.248.192.11 to any port 80

Linux
  1. Cómo cambiar la dirección MAC usando macchanger en Kali Linux

  2. Cómo establecer una dirección IP estática y configurar la red en Linux

  3. Cómo verificar la versión del sistema operativo y Linux

  4. Cómo configurar la dirección IP desde C en Linux

  5. Cómo encontrar la dirección IP de la puerta de enlace en Linux

Cómo configurar la dirección IP estática en Linux y Unix

Cómo borrar de forma segura un disco y un archivo usando el comando shred de Linux

Cómo bloquear un puerto usando un firewall en Linux

Cómo cambiar el puerto SSH predeterminado en Linux [de forma adecuada y segura]

¿Cómo bloquear una dirección IP usando .htaccess?

Cómo configurar el cortafuegos UFW en Linux