Apuntes de Kirby
  • 👀whoami
  • 🦉Redes
    • Introducción Redes
      • Organizaciones
      • Historia
      • Puntos de conexión
      • Métodos de acceso a la red
    • Clasificación de las redes
    • Topología de las red
    • Direccionamiento IP
      • IPv4
        • Subredes IPv4
        • Superredes IPv4
        • VLSM
      • IPv6
      • MAC
      • NAT
    • Enrutamiento estático
    • Enrutamiento dinámico
      • RIPv1 & RIPv2
      • Tablas de enrutamiento
      • 🚧Redes conmutadas
    • CML
      • 🚧1er CML lab
    • CISCO
      • ¿Qué son las VLAN?
        • Ejemplo 1 de VLAN
        • Ejemplo 2 de VLAN
      • Acceso y password
      • NAT / PAT
    • Firewalls
      • Tipos de firewalls
      • ZPF
        • Funcionamiento
        • Configurando un ZPF
      • Sophos Firewall XG
        • Sophos home
        • Aprendiendo a usar Sophos
      • pfSense
        • Instalando pfSense
        • OpenVPN en pfSense
        • Port Forward
        • Alias
    • Proxy
      • Squid en pfSense
        • Squid Proxy Server
        • SquidGuard Proxy
      • Proxy reverse Nginx
    • 🚧Suricata
  • 🐝Servicios
    • Servidores Web
      • Nginx
        • NGINX, hosts virtuales
        • Hosts virtuales basados en dominio
        • PHP-FPM
        • Nginx: PHP y MySQL
          • MySQLi - PHP
        • En Alpine linux
        • 🚧Proxy
    • Servidores de correo
      • Seguridad en el correo
      • Postfix
      • hMailServer
      • Clientes de correo
        • Mailutils
        • Mutt
    • Servidores de FTP
      • FileZilla
      • VSFTPD
      • FTP vía IIS
    • Servidores DNS
      • DNS - Windows Server 2016
      • DNS - Ubuntu Server 22.04
      • Systemd
    • Servidores DHCP
      • DHCP-Windows Server 2016
      • DHCP-Ubuntu Server 22.04
    • Servidores MySQL
    • 🚧Mensajería instantánea
      • Ejabberd
    • 🚧Imágenes - Vídeos
      • FFMPEG + YT-DLP
      • Plex
      • Jellyfin
      • Plesk
      • RTMP
      • SRT
    • Webmin + Virtualmin
  • NextCloud
  • 🔑Seguridad
    • NAS
      • Instalación Synology NAS en VirtualBox
        • Creación de volúmenes y su uso
        • Actualización Synology NAS
        • Creación de usuarios y carpetas compartidas
        • Funciones del panel de control
          • Acceso por SSH
          • Configuración de los servicios de archivos
          • Configuración de red
          • Copias de seguridad (restauración)
          • Seguridad
          • Personalizar páginas de inicio
          • Servicio de notificaciones
        • Centro de paquetes Synology
          • Servidores multimedia
          • Paquetes de utilidades
          • Cloud Sync
          • Hyper Backup
          • Synology Office
      • Truenas
        • Rsync en Truenas
      • OpenmediaVault
    • Backups
      • Rsync
        • Ejemplo de rsync
    • ¿Qué son las ACL?
    • SOPS/AGE
    • RAID
      • mdadm
  • 🐳Virtualización
    • Proxmox
      • Instalar en VMWare
      • Instalar en VirtualBox
      • Entorno Proxmox
      • Almacenamiento local
      • Añadir discos
      • Clonar
      • Qemu agent
      • Linux container - LXC
      • Clúster
      • Red Interna
      • 🚧Proxmox Backup
      • 🚧Otras consideraciones
    • Alpine Linux
    • Contenedores
      • Docker
        • YAML
        • Instalando Docker
        • Portainer
          • Instalando Portainer
          • Dentro de Portainer
        • Docker volumen
        • Docker compose
          • Docker: PHP y MySQL
          • Importar sitio web en Docker
          • Instalando Wordpress
      • Pi-hole
        • Instalando Pi-hole en Docker
        • Instalando Pi-hole en Debian
        • RDP
          • RDP - Docker
  • 🐞Misceláneas
    • Datos - codificación
    • IPTables
    • Túnel con Cloudflare
    • Servidor de video
    • Comandos de Linux
    • Anaconda & Spyder
    • CGI - NGINX
    • Arduino
      • Capítulo 0 Blink
      • Capítulo 1 Led
      • Capítulo 2 Botton & LED
  • ⁉️Interesante
    • Curioso
    • Ideas
Powered by GitBook
On this page
  • Algunas de las opciones de iptables habituales
  • Links

Was this helpful?

Edit on GitHub
  1. Misceláneas

IPTables

Se trata de una herramienta de Linux que permite el filtrado de los paquetes de red, determinando qué paquetes de datos permitimos que lleguen hasta el servidor y cuáles no. Es una herramienta necesaria que facilita la administración de firewalls en sistemas Linux. Como otros firewall, funciona a través de reglas.

Las reglas permiten aceptar, rechazar, o descartar (drop) paquetes basados en criterios como la dirección IP de origen o destino, el puerto, el protocolo, etc.

Adicionalmente, iptables opera sobre diversas tablas diseñadas para diferentes propósitos:

  • filter: tabla predeterminada utilizada para el filtrado de paquetes.

  • nat: se utiliza para la traducción de direcciones de red (Network Address Translation).

  • mangle: Permite modificar campos específicos en los encabezados de los paquetes.

  • raw: Utilizada para configurar excepciones de seguimiento de conexiones.

  • security: Utilizada para políticas de seguridad basadas en SELinux.

Dentro de cada tabla, existen cadenas ya predefinidas que determinan en qué punto del procesamiento del paquete se aplican las reglas. Estas cadenas son: INPUT, OUTPUT, FORWARD, PREROUTING y POSTROUTING.

Cada cadena contiene una lista de reglas que se procesan secuencialmente. Una regla especifica:

  • los criterios de coincidencia para los paquetes: dirección IP, puerto, protocolo y

  • la acción a tomar: ACCEPT, DROP, REJECT, MASQUERADE, etc.

Las acciones que se pueden aplicar a los paquetes son:

  • ACCEPT: Permite que el paquete continúe su ruta.

  • DROP: Descarta el paquete silenciosamente.

  • REJECT: Descarta el paquete y envía una respuesta de error al remitente.

  • MASQUERADE: Reemplaza la dirección IP de origen del paquete con la dirección IP de la interfaz de salida.

  • SNAT: Source NAT, modifica la dirección IP de origen del paquete.

  • DNAT: Destination NAT, modifica la dirección IP de destino del paquete.

  • LOG: Registra los paquetes que coinciden con la regla.

Algunas de las opciones de iptables habituales

  • -A —append: Añade una regla a una cadena (al final).

  • -C —check : Busca una regla que coincida con los requerimientos de la cadena.

  • -D —delete: Borra las reglas especificadas de una cadena.

  • -F —flush: Elimina todas las reglas.

  • -I —insert: Añade una regla a una cadena en una posición dada.

  • -L —list : Muestra todas las reglas de una cadena.

  • -N -new-chain: Crea una nueva cadena.

  • -v —verbose: Muestra más información cuando se usa una opción de lista.

  • -X —delete-chain: Elimina la cadena proporcionada.

Ejemplos:

(1) Supongamos que queremos agregar una regla que permita todo el tráfico SSH entrante:

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

(2) Supongamos que queremos bloquear todo el tráfico HTTP saliente:

iptables -A OUTPUT -p tcp --dport 80 -j DROP

Mediante instrucciones se le indica al firewall el tipo de paquetes a los que se debe permitir entrar, así como los puertos por donde se pueden recibir dichos paquetes, el protocolo para el envío de datos y cualquier otra información relacionada con el intercambio de datos entre redes.

Cuando en el sistema se recibe o se envía un paquete, se recorren todas las reglas en orden hasta encontrar aquella regla que cumpla las condiciones. Una vez localizada la regla, ésta se activa y ejecuta la acción que tenga establecida sobre el paquete en cuestión.

Nota: Las reglas definidas con iptables no son persistentes por defecto y se pierden después de un reinicio. Para hacerlas persistentes, es necesario guardar las reglas en un archivo de configuración y restaurarlas al inicio del sistema.

(3) Supongamos que queremos autorizar el tráfico de localhost de modo que todo lo que venga de su sistema pase a través del firewall (iptables). O sea, configurar el firewall de modo que acepte el tráfico para la interfaz localhost (lo) (-i). Algo necesario si se quiere para que las aplicaciones puedan comunicarse con la interfaz localhost.

sudo iptables -A INPUT -i lo -j ACCEPT

(4) Para autorizar el tráfico web HTTP, introduzca el siguiente comando:

sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT

(5) Para autorizar el tráfico de internet HTTPS, introduzca el siguiente comando:

sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

(6) Un método para eliminar el número de línea de una regla.

sudo iptables -P INPUT DROP 

Enumeramos todas las reglas:

sudo iptables -L --line-numbers
sudo iptables -t nat -L --line-numbers

Buscamos la línea de la regla de iptables que necesitamos eliminar y ejecutamos el siguiente comando:

sudo iptables -D INPUT <Number>

En el siguiente pdf te dejo una ayuda escrita por Leo, Bea y Monti. Gracias chic@s!

Links

PreviousDatos - codificaciónNextTúnel con Cloudflare

Last updated 7 months ago

Was this helpful?

🐞
https://help.ovhcloud.com/csm/es-es-dedicated-servers-firewall-iptables?id=kb_article_view&sysparm_article=KB0043439
162KB
REENVIOS DE PUERTOS_TAS_M.MOUTOUTO_L.DUARTE_BSUAREZ.pdf
pdf
Una ayuda para todos de Leo, Bea y Monti
enumerando las reglas de iptables
Enumerando las reglas de iptables