1 - Firewall
Redes de computadores UNIMEP :: GERAL ( LINUX E UNIX ) :: Redes, Internet e Segurança :: Firewall + Proxy + Relatórios + Controle de Banda ...
Página 1 de 1
1 - Firewall
Firewall
"Firewall" Básico
Somete para fazer roteamento e direcionamentos de portas
Configurar os ips eth0 - eth1 (centOS /etc/sysconfig/network-scripts)
# vi ifcfg-eth0
# vi ifcfg-eth1
crie o arquivo do firewall
# cd /etc/init.d/
# touch rc.firewall
# chmod +x rc.firewall
copie todo o conteúdo do código abaixo para o arquivo rc.firewall
*alterar no código abaixo o ip eth1 para o ip interno da sua rede
se você for usar sem Proxy comente a linha
# Direciona para o Proxy
# iptables -t nat -A PREROUTING -i $INT -p tcp --dport 80 -j REDIRECT --to-port 3128
# vi rc.firewall
- Código:
#! /bin/sh
# description: Inicializacao do Iptables
#
# chkconfig: 2345 80 30
# processname: iptables
# pidfile: /var/run/iptables.pid
# Origem das bibliotecas
#. /etc/rc.d/init.d/functions
# Checando se a rede esta ok
#. /etc/sysconfig/network
EXT="eth0"
INT="eth1"
#configure o ip da sua rede interna
IPINT="192.168.0.0/24"
#if [ ${NETWORKING} = "no" ]
#then
# exit 0
#fi
case "$1" in
start)
echo "Starting services:" "Firewall"
echo "1" > /proc/sys/net/ipv4/ip_forward
# Carregando os Módulos
/sbin/depmod -a
/sbin/modprobe ip_tables
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe iptable_nat
#lendo o modulo GRE
modprobe ip_gre
# Regras de INPUT
# Restringe o acesso INPUT
# iptables -t filter -P INPUT DROP
# Libera todo o acesso a interface loopback
iptables -t filter -A INPUT -j ACCEPT -i lo
# Mantem as conexoes estabelecidades e relatadas
iptables -t filter -A INPUT -j ACCEPT -m state --state ESTABLISHED,RELATED
###### Liberando portas
#exemplos neste script nao tem bloqueios de todas as portas
#todas ja estao liberadas
# Liberando TS
# iptables -A INPUT -p tcp --destination-port 3389 -j ACCEPT
# iptables -A INPUT -p udp --destination-port 3389 -j ACCEPT
# Liberando VNC
# iptables -A INPUT -p tcp --destination-port 59000:59255 -j ACCEPT
# iptables -A INPUT -p udp --destination-port 59000:59255 -j ACCEPT
# Libera o acesso a porta 20 de ftp-data para a rede interna
# iptables -t filter -A INPUT -j ACCEPT -i $INT -p tcp --dport 20
# iptables -t filter -A OUTPUT -j ACCEPT -s $IPINT -p tcp --dport 20
# Libera o acesso a porta 21 de ftp para a rede interna
# iptables -t filter -A INPUT -j ACCEPT -i $INT -p tcp --dport 21
# iptables -t filter -A OUTPUT -j ACCEPT -s $IPINT -p tcp --dport 21
# Libera o acesso ao SSH para uma conexao remota
# iptables -t filter -A INPUT -i $EXT -j ACCEPT -p tcp --dport 22
# iptables -t filter -A INPUT -i $INT -j ACCEPT -p tcp --dport 22
# Libera o acesso a porta 25 para a rede interna
# iptables -t filter -A INPUT -j ACCEPT -i $INT -p tcp --dport 25
# iptables -t filter -A OUTPUT -j ACCEPT -s $IPINT -p tcp --dport 25
# Libera o acesso a porta 80 no servidor WEB
# iptables -t filter -A INPUT -j ACCEPT -s $IPINT -p tcp --dport 80
# Libera o acesso a porta 110 para a rede interna
# iptables -t filter -A INPUT -j ACCEPT -i $INT -p tcp --dport 110
# iptables -t filter -A OUTPUT -j ACCEPT -s $IPINT -p tcp --dport 110
###########################################################################
############################## Direcionando a portas
# 3389 servidor TS
# iptables -A PREROUTING -t nat -p tcp -d 192.168.0.3 --dport 3389 -j DNAT --to-dest 192.168.0.3:3389
# direciona VNC
# iptables -A PREROUTING -t nat -p tcp -d 192.168.0.3 --dport 5900 -j DNAT --to-dest 192.168.0.3:5900
# ip nao passar pelo proxy
# iptables -t nat -A PREROUTING -i eth1 -s 192.168.0.3 -p tcp --dport 80 -j ACCEPT
########################################################
# Regras de OUTPUT
# iptables -P OUTPUT ACCEPT
# Libera o acesso para navegacao por proxy (descriminar todos os ips)
iptables -t filter -A INPUT -j ACCEPT -s $IPINT -p tcp --dport 3128
# Direciona para o Proxy
iptables -t nat -A PREROUTING -i $INT -p tcp --dport 80 -j REDIRECT --to-port 3128
# Mantem as conexoes estabelecidas e relatadas
iptables -t filter -A FORWARD -j ACCEPT -m state --state ESTABLISHED,RELATED
# Libera o acesso irrestrito para a rede interna
iptables -t filter -A FORWARD -j ACCEPT -s $IPINT
# NAT para rede interna
iptables -t nat -A POSTROUTING -o $EXT -j MASQUERADE
iptables -A FORWARD -i $INT -j ACCEPT
echo
;;
stop)
echo "Stopping services: " "Firewall"
iptables -F
iptables -F -t nat
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
echo
;;
status)
iptables -L
echo
;;
restart)
$0 stop
$0 start
echo
;;
*)
echo "Usage: %s (start|stop|status|restart)" firewall
exit 1
echo
;;
esac
exit 0
Executar o Script para teste
# service rc.firewall start
Vamos configurar para inicio no boot
# vi /etc/rc.local
Adicionar linha no final do script
- Código:
/etc/init.d/rc.firewall start
Pronto !!!
firewall configurado so com esse script a sua internet ja esta sendo compartilhada
so lembrando de comentar a linha do direcionamento para o proxy
Próxima config > Squid
bhsoares- Mensagens : 8
Data de inscrição : 21/04/2010
Idade : 35
Localização : Piracicaba
Redes de computadores UNIMEP :: GERAL ( LINUX E UNIX ) :: Redes, Internet e Segurança :: Firewall + Proxy + Relatórios + Controle de Banda ...
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|