billlcosta Postado Agosto 13, 2017 em 21:18 Compartilhar Postado Agosto 13, 2017 em 21:18 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 para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados
Arquivado
Este tópico foi arquivado e está fechado para novas respostas.