Migração de regras IPtables

1. Migração de regras IPtables

Renato Mello
xcription

(usa BackTrack)

Enviado em 28/04/2015 - 11:05h

Ola.

Migrei o firewall de maquina. Gostaria de saber como importo todas as regras do Iptables e Squid do firewall antigo para o novo.
No Squid dei um scp no firewall antigo e copiei todos os arquivos de configuração pro novo, mas no caso do iptables, não tem arquivos de configuração.







  


2. Re: Migração de regras IPtables

thinomar
thinomar

(usa Linux Mint)

Enviado em 28/04/2015 - 13:18h

Para salvar:
# iptables-save > regras.txt

Para restautar:
# iptables-restore < regras.txt

O recomendado mesmo é você criar um script com suas regras do iptables, como o abaixo, ou um mais simples, desde que contenha as regras que você aplica sempre ao seu firewall:
#!/bin/bash

#######################################
# Script de Firewall
# Criado por: Thiago Martins
# Data de criação: 28/04/15
#######################################

### Variáveis ###
#INT="eth0"
EXT="ppp0"
#SUBNET="192.168.100.0/24"

################
# Função Help
################
function help(){
echo -e "Para ativar o Firewall, adicione o parâmetro '--start'."
echo -e "Para desativar, adicione '--stop'."
echo -e "Para reiniciar, '--restart'."
echo -e "Para obter ajuda, novamente, adicione o parâmetro '--help'."
}

################
# Função Stop
################
function stop(){
### Exclui todas as regras ###
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -t filter -F

### Exclui cadeias customizadas ###
iptables -X

### Zera os contadores das cadeias ###
iptables -t nat -Z
iptables -t mangle -Z
iptables -t filter -Z

### Carrega os modulos ###
modprobe iptable_nat
modprobe iptable_filter
modprobe iptable_mangle

### Políticas em ACCEPT ###
# IPv4 #
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
# IPv6 #
ip6tables -P INPUT ACCEPT
ip6tables -P FORWARD ACCEPT
ip6tables -P OUTPUT ACCEPT

## Habilita roteamento ###
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o $EXT -j MASQUERADE
}

################
# Função Start
################
function start(){
### Exclui todas as regras ###
iptables -t nat -F
iptables -t mangle -F
iptables -t filter -F

### Exclui cadeias customizadas ###
iptables -X

### Zera os contadores das cadeias ###
iptables -t nat -Z
iptables -t mangle -Z
iptables -t filter -Z

### Carrega os modulos ###
modprobe iptable_nat
modprobe iptable_filter
modprobe iptable_mangle

### Define a política padrão do firewall ###
# IPv4 #
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -P FORWARD DROP
# IPv6 #
ip6tables -P INPUT DROP
ip6tables -P FORWARD DROP
ip6tables -P OUTPUT DROP


### Liberando DNS Server ###
iptables -A FORWARD -p udp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT

### Jogando tráfego da porta HTTP e HTTPS para o Squid ###
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-port 3130

### Regras INPUT ###
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -m state --state NEW -i !$EXT -j ACCEPT
# Loopback #
iptables -A INPUT -i lo -j ACCEPT
# ICMP 0 #
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
# ICMP 8 #
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
# SSH #
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# FTP #
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
# OpenVPN #
iptables -A INPUT -p tcp --dport 1194 -j ACCEPT
# HTTP #
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
# SAMBA #
iptables -A INPUT -p tcp --dport 139 -j ACCEPT
iptables -A INPUT -p udp --dport 139 -j ACCEPT

### Regras FORWARD ###
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state NEW -i !$EXT -j ACCEPT
# ICMP #
iptables -A FORWARD -p icmp -j ACCEPT
# SMTP #
iptables -A FORWARD -p tcp --dport 25 -j ACCEPT
iptables -A FORWARD -p tcp --dport 587 -j ACCEPT
iptables -A FORWARD -p tcp --dport 465 -j ACCEPT
# SSH #
iptables -A FORWARD -p tcp --dport 22 -j ACCEPT
# FTP #
iptables -A FORWARD -p tcp --dport 20 -j ACCEPT
iptables -A FORWARD -p tcp --dport 21 -j ACCEPT
# POP #
iptables -A FORWARD -p tcp --dport 110 -j ACCEPT
# MS Terminal Server #
iptables -A FORWARD -p tcp --dport 3389 -j ACCEPT
# HTTP #
iptables -A FORWARD -p tcp --dport 80 -j ACCEPT
# HTTPS #
iptables -A FORWARD -p tcp --dport 443 -j ACCEPT
# VNC #
iptables -A FORWARD -p tcp --dport 5900 -j ACCEPT
# SAMBA #
iptables -A FORWARD -p tcp --dport 139 -j ACCEPT
iptables -A FORWARD -p udp --dport 139 -j ACCEPT
# VOIP #
iptables -A FORWARD -p udp --sport 5060 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -p udp --dport 5060 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -p udp --sport 10000:20000 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -p udp --dport 10000:20000 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

### Regras OUTPUT ###
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state NEW -o !$EXT -j ACCEPT

### Regras POSTROUTING ###
route add default gw 192.168.100.1 2> /dev/null
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o $EXT -j MASQUERADE
}

case $1 in
"")
start
echo -e "Firewall ativado\nPara ajuda, adicione o parâmetro '--help'"
;;
--start)
start
echo -e "Firewall ativado\nPara ajuda, adicione o parâmetro '--help'"
;;
--stop)
stop
echo -e "Firewall desativado\nPara ajuda, adicione o parâmetro '--help'"
;;
--restart)
stop
start
echo -e "Firewall reiniciado\nPara ajuda, adicione o parâmetro '--help'"
;;
--help)
help
;;
*)
echo -e "Parâmetro inválido\nPara ajuda, adicione o parâmetro '--help'"
exit 0
;;
esac


:)






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts