pablopc

IPTABLESaaS

Jan 17th, 2022 (edited)
248
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 3.04 KB | None | 0 0
  1. ######## START /etc/network/if-pre-up.d/cargar_iptables #########
  2. #!/bin/bash
  3. /sbin/iptables-restore < /etc/iptables.up.rules
  4. ######## END /etc/network/if-pre-up.d/cargar_iptables #########
  5.  
  6. ######## START /bin/firewall-iptables #########
  7. #!/bin/bash
  8.  
  9. IPT=/sbin/iptables
  10.  
  11. if [ $# -eq 1 ]; then
  12.     case $1 in
  13.     start)
  14.         ${IPT}-restore < /etc/iptables.up.rules
  15.         exit $?
  16.     ;;
  17.     stop)
  18.         $IPT -F
  19.         $IPT -X
  20.         $IPT -t nat -F
  21.         $IPT -t nat -X
  22.         $IPT -t mangle -F
  23.         $IPT -t mangle -X
  24.         $IPT -P INPUT ACCEPT
  25.         $IPT -P FORWARD ACCEPT
  26.         $IPT -P OUTPUT ACCEPT
  27.         exit 0
  28.     ;;
  29.     restart)
  30.         echo "Deteniendo firewall-iptables..." ; $0 stop && echo -e "\e[1;32mOK\e[0m"
  31.         echo "Iniciando firewall-iptables..." ; $0 start
  32.         [[ $? -ne 0 ]] && echo -e "\e[1;31mKO\e[0m" && exit $?
  33.         echo -e "\e[1;32mOK\e[0m"
  34.     ;;
  35.     status)
  36.         $IPT -L -n -v
  37.     ;;
  38.     *) echo "Uso: `basename $0` [start|stop|restart|status]"
  39.     ;;
  40.     esac
  41. else
  42.     echo "Uso: `basename $0` [start|stop|restart|status]"
  43. fi
  44. ######## END /bin/firewall-iptables #########
  45.  
  46. ######## START /etc/iptables.up.rules #########
  47. # Interfaces
  48. # WAN enp0s3
  49. # LAN enp0s8
  50. # DMZ enp0s9
  51.  
  52. *nat
  53. # Politicas por defecto
  54. -P POSTROUTING ACCEPT
  55. -P PREROUTING ACCEPT
  56. # Indicamos la interfaz con la que hacemos NAT especificando las subredes
  57. -A POSTROUTING -s 192.168.128.0/24 -o enp0s3 -j MASQUERADE
  58. -A POSTROUTING -s 172.16.0.0/24 -o enp0s3 -j MASQUERADE
  59.  
  60. COMMIT
  61.  
  62. *filter
  63.  
  64. # Politicas por defecto
  65. -P INPUT DROP
  66. -P FORWARD DROP
  67. -P OUTPUT ACCEPT
  68.  
  69. # Aceptar todas las conexiones ya establecidas con otros equipos
  70. -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  71.  
  72. ### FORWARD START ###
  73. # Bloqueo reenvío explícito entre DMZ y LAN
  74. -A FORWARD -i enp0s9 -o enp0s8 -j DROP
  75. # Habilitar reenvío de interfaz LAN a WAN
  76. -A FORWARD -i enp0s8 -o enp0s3 -j ACCEPT
  77. -A FORWARD -i enp0s3 -o enp0s8 -m state --state ESTABLISHED,RELATED -j ACCEPT
  78. # Habilitar reenvío de interfaz DMZ a WAN
  79. -A FORWARD -i enp0s9 -o enp0s3 -j ACCEPT
  80. -A FORWARD -i enp0s3 -o enp0s9 -m state --state ESTABLISHED,RELATED -j ACCEPT
  81. ### FORWDARD END ###
  82.  
  83. # Permitir todo loopback (lo0) y rechazar todo el trafico de 127/8 que no use lo0
  84. -A INPUT -i lo -j ACCEPT
  85. -A INPUT ! -i lo -d 127.0.0.0/8 -j REJECT
  86.  
  87. # Permitir las conexiones a la interfaz LAN desde su subred
  88. #-A INPUT -i enp0s8 -j ACCEPT
  89. -A INPUT -i enp0s8 -s 192.168.128.0/24 -j ACCEPT
  90. # Permitir DHCP en LAN
  91. -A INPUT -p udp -i enp0s8 --dport 67:68 -j ACCEPT
  92. # Permitir las conexiones a la interfaz DMZ desde su subred
  93. #-A INPUT -i enp0s9 -j ACCEPT
  94. -A INPUT -i enp0s9 -s 172.16.0.0/24 -j ACCEPT
  95.  
  96. # Permitir SSH desde HOST Anfitrión WINDOWS a interfaz WAN
  97. -A INPUT -i enp0s3 -p tcp -m state --state NEW --dport 22 -j ACCEPT
  98. #-A INPUT -i enp0s3 -s 192.168.0.3 -p tcp -m state --state NEW --dport 22 -j ACCEPT
  99. #-A INPUT -i enp0s3 -s 192.168.0.3 -p tcp -m mac --mac-source 4C:CC:6A:FD:0F:F8 -m state --state NEW --dport 22 -j ACCEPT
  100.  
  101. ### BLOQUEAR RESTO ###
  102. -A INPUT -j DROP
  103. -A FORWARD -j REJECT
  104. -A OUTPUT -j ACCEPT
  105.  
  106. COMMIT
  107. ######## END /etc/iptables.up.rules #########
Add Comment
Please, Sign In to add comment