Jump to content
Do Zero Ao Um - ABRIREMOS INSCRIÇÕES AO VIVO! - LIVE Terça-feira 25/06 às 19h - mente.in/youtube ×

Iptables - Examples rules


billlcosta

Recommended Posts

Listando regras

 

  • Lista todas as regras da tabela Filter.: iptables -L .
  • Lista todas as regras da tabela NAT.: iptables -L -t nat .

 

Nota.: A oppção --line-numbers é utilizada junto com os exemplos acima para exibir o número/ordem de cada regra. 

 

Excluindo regras

 

  • Limpa todas as regras de Firewall de todas as chains da tabela Filter.: iptables -F .
  • Exclui todas as regras de Firewall de todas as chains da tabela NAT.: iptables -F -t nat
  • Excluí a regra de número 1 da chain INPUT da tabela Filter.: iptables -D INPUT 1

 

Alterando política default

 

  • Coloca como ACCEPT a chaind OUTPUT da tabela Filter.: iptables -P OUTPUT ACCEPT
  • Coloca como DROP a chaind INPUT da tabela Filter.: iptables -P INPUT DROP

 

Adicionar/remover uma CHAIN

 

  • Adiciona uma CHAIN na tabela Filter.: iptables -N nova_chain
  • Excluí todas as CHAINS criadas manualmente.: iptables -X

 

Regras básicas - Tabela Filter

 

  • Libera consulta HTTP no servidor/host.: iptables -A INPUT -d 200.200.34.34 -m state --state NEW,ESTABLISHED,RELATED -p tcp --dport 80 -j ACCEPT
  • Libera consulta HTTP e HTTPS no servidor/host.: iptables -A INPUT -d 200.200.34.34 -m state --state NEW,ESTABLISHED,RELATED -p tcp -m multiport --dports 80.443 -j ACCEPT
  • Libera o servidor/host para fazer consultas DNS.: iptables -A OUTPUT -s 200.200.34.34 -p udp --dport 53 -j ACCEPT
  • Faz o forward (encaminhamento) de requisições para outro host.: iptables -A FORWARD -d 200.200.34.35 -m state --state NEW,ESTABLISHED,RELATED -p tcp --dport 22 -j ACCEPT
  • Libera protocolo ICMP apenas para PING (request e reply).:

 

   iptables -A INPUT -m state --state NEW,ESTABLISHED,RELATED -i eth0 -p icmp --icmp-type 0 -j ACCEPT
   iptables -A INPUT -m state --state NEW,ESTABLISHED,RELATED -i eth0 -p icmp --icmp-type 8 -j ACCEPT
   iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -o eth -p icmp --icmp-type 0 -j ACCEPT
   iptables -A OUTPUT -m state --state NEW,ESTABLISHED,RELATED -o eth0 -p icmp --icmp-type 8 -j ACCEPT

 

Regras básicas - Tabela NAT

 

  • Habilita o MASQUERADE.: iptables -A POSTROUTING -s 192.168.1.0/24 -o eth0 -j MASQUERADE
  • Redireciona protocolo HTTP para um host Interno da rede privada.: -t nat -A PREROUTING -d 200.200.34.34 -m state --state NEW,ESTABLISHED,RELATED -p tcp --dport 80 -j DNAT --to-destination 192.168.1.200:80

 

Nota.: Para toda regra de NAT que for utilizada para redirecionar uma porta/serviço para um host da rede privada, é necessário criar uma regra na tabela Filter na chain FORWARD para a mesma. Lembrando que isso só se aplica se a política default da chain FORWARD estiver como DROP. 

 

Regras "Extras"

 

  • Regras baseada em horários.:

 

   iptables -A FORWARD -s 192.168.1.20 -m state --state NEW,ESTABLISHED,RELATED -i eth1 -o eth0 -m time --datestart 2016-10-05T08:00:00 --datestop 2016-10-05T19:00:00 -p tcp -m multiport --dports 80,443 -j ACCEPT
   
   A regra acima permite que o host da rede privada 192.168.1.20 acesse à rede WAN (protocolos HTTP e HTTPS) no período de 8 as 19 horas do dia 05/10/2016.
   
   iptables -A INPUT -d 200.200.34.34 -m state --state NEW,ESTABLISHED,RELATED -i eth0 -m time --datestart 2016-10-05T08:00:00 --datestop 2016-10-05T19:00:00 -p tcp -m multiport --dports 80,443 -j ACCEPT
   
   A regra acima permite conexões no servidor/host através dos protocolos HTTP/HTTPS no período de 8 as 19 horas do dia 05/10/2016.

 

  • Interface/IP de Loopback.:

 

   iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -i lo -j ACCEPT
   iptables -A OUTPUT -s 127.0.0.1 -d 127.0.0.1 -o lo -j ACCEP
   
   As duas regras acima permite a comunicação com a interface/IP de Loopback somente oriundas da mesma.

 

  • LOG de conexões.:

 

   iptables -A INPUT -d 200.200.34.34 -m state --state NEW,ESTABLISHED,RELATED -i eth0 -p tcp --dport 22 -j LOG --log-prefix "Firewall: SSH Access"
   
   Armazena LOG de todas as conexões (protocolo SSH/Porta 22 TCP) que chegarem no endereço 200.200.34.34.

 

  • Bloqueia pacotes com Anomalias IP.:

 

   iptables -A VALID_CHECK -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP
   iptables -A VALID_CHECK -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP
   iptables -A VALID_CHECK -p tcp --tcp-flags ALL ALL -j DROP
   iptables -A VALID_CHECK -p tcp --tcp-flags ALL FIN -j DROP
   iptables -A VALID_CHECK -p tcp --tcp-flags SYN,RST SYN,RST -j DROP
   iptables -A VALID_CHECK -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
   iptables -A VALID_CHECK -p tcp --tcp-flags ALL NONE -j DROP
   iptables -A INPUT -m state --state INVALID -j DROP

 

  • Limita o número de conexões.:

 

   iptables -A INPUT -d 200.200.34.34 -p tcp --syn -m --state NEW -i $IFWAN -m multiport --dports 80,443 -m connlimit --connlimit-above 30 --connlimit-mask 32 -j REJECT --reject-with tcp-reset
   
   A regra acima limita em 30 conexões por endereço IP na porta 80/443. Acima deste limite, a conexão é rejeitada. Este tipo de regra ajuda a proteger de ataques do tipo DDOS.
Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...