-
Ola
Segue abaixo meu rc.firewall
#!/bin/bash
# Flush
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
# Variaveis do firewall
nosso_ip=. XXX.XXX.XXX.XXX
ext_ip=`ifconfig eth1 | grep inet | awk '{ print $3 }'`
int_ip=`cat /root/tab_ip | grep VNC | awk '{ print $2 }'`
REDEMASQ=192.168.X.X/24
iptables -A INPUT -s $REDEMASQ -p tcp --dport 3128 -j ACCEPT
iptables -A INPUT -s $nosso_ip -p tcp --dport 5900 -j ACCEPT
# Politica de acesso
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT
# Habilitando a protecoes contra "TCP SYN Cookie"
echo 1 > /proc/sys/net/ipv4/tcp_syncookies
# Ocultando a rota de origem dos pacotes (evita spoof)
for f in /proc/sys/net/ipv4/conf/*/accept_source_route; do
echo 0 > $f
done
# Evita ataques de spoof (na rede interna)
# Em casos de roteamento esta linha devera ser desativada
for f in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo 1 > $f
done
# Permissoes de acesso ao firewall
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# Trocando o intervalo de portas locais
PORT_INI=61000
PORT_FIM=65095
echo $PORT_INI $PORT_FIM > /proc/sys/net/ipv4/ip_local_port_range
iptables -A FORWARD -s $nosso_ip -d $int_ip -j ACCEPT
# Criando perfil de acesso administrativo (apenas por ssh)
iptables -N ADMIN
iptables -A ADMIN -i eth1 -p tcp --dport 22 --syn -j LOG --log-level info --log-prefix "--->ACESSO SSH EXTERNO: "
iptables -A ADMIN -i eth1 -p tcp --dport 5900 --syn -j LOG --log-level info --log-prefix "--->ACESSO VNC: "
iptables -A ADMIN -i eth0 -p tcp --dport 22 --syn -j ACCEPT
iptables -A ADMIN -i eth1 -p tcp --dport 22 --syn -j ACCEPT
iptables -A ADMIN -i eth1 -p tcp --dport 5900 --syn -j ACCEPT
# Aplicando a permissao de acesso ssh a CONFIAVEL1 e CONFIAVEL2
iptables -A INPUT -i eth0 -s $REDEMASQ -j ADMIN
iptables -A INPUT -i eth1 -s $nosso_ip -j ADMIN
# Para tratar as quedas dos roteadores ADSL
GW=`ifconfig eth1 | grep inet | awk '{ print $3 }'`
iptables -A INPUT -i eth1 -s $GW -p tcp ! --syn -j ACCEPT
# Compartilhando o acesso a internet
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A PREROUTING -s $REDEMASQ -i eth0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.X.X:3128
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
iptables -t nat -A POSTROUTING -s $REDEMASQ -o eth1 -j MASQUERADE
iptables -t mangle -A PREROUTING -p tcp -m tcp --dport 22 -j TOS --set-tos 0x10
iptables -t mangle -A PREROUTING -s $REDEMASQ -p tcp -m tcp --sport 80 -j TOS --set-tos 0x08
iptables -t nat -A PREROUTING -p tcp -s $nosso_ip -d $ext_ip --dport 5900 -j DNAT --to $int_ip
iptables -t nat -A POSTROUTING -p tcp -d $nosso_ip -s $int_ip --sport 5900 -j SNAT --to $ext_ip
# Permitindo requisicoes de DNS
#iptables -A FORWARD -o eth1 -s $REDEMASQ -p tcp --dport 53 -j ACCEPT
iptables -A FORWARD -o eth1 -s $REDEMASQ -p udp --dport 53 -j ACCEPT
# Bloquear pacotes com estado "novo/invalido" que saiam pela eth1
# Permitir pacotes com estado "estabelecido/reincidente"
iptables -A FORWARD -o eth0 -m state --state NEW,INVALID -j DROP
iptables -A FORWARD -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
# Permitindo qualquer solicitacao de Internet que parta da rede 192.168.1.0/24
iptables -A FORWARD -i eth0 -s $REDEMASQ -j ACCEPT
# Bloqueia qualquer pacote (forward) que nao liberado por regras anteriores
iptables -A FORWARD -j DROP
# Bloqueando e logando sinais de ping ao firewall
#iptables -N LPI
#iptables -A LPI -m limit --limit 5/hour --limit-burst 3 -p icmp --icmp-type echo-request -j LOG --log-level info --log-prefix "--->TENTATIVA DE PING: "
#iptables -A LPI -j REJECT --reject-with icmp-port-unreachable
#iptables -A INPUT -p icmp --icmp-type echo-request -j LPI
iptables -A INPUT -p icmp -j DROP
# Bloqueia qualquer pacote (input) que nao liberado por regras anteriores
iptables -A INPUT -j DROP
-
rc.firewall
Estou usando o seguinte firewall.
#!/bin/bash
#************************************************************************************
# SCRIPT FIREWALL *
# *
# CRIADO POR FABIO LIMA DE OLIVIERA *
# *
# DATA: 28/06/2005 *
#************************************************************ #
iptables -F #
modprobe iptable_nat #
#Ativando o repasse dos pacotes
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE #
#Protecao contra Syn-Floods iptables -A INPUT -p tcp --syn -m limit --limit 1/s -j ACCEPT
#Protecao contra scanners ocultos
iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
#Ping da Morte iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT #
iptables -A FORWARD -p tcp --dport 110 -j ACCEPT
iptables -A FORWARD -p tcp --dport 25 -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A FORWARD -o eth0 -s 100.100.100.0/24 -d 0/0 -j ACCEPT
echo 1 > /proc/sys/net/ipv4/ip_forward
-
rc.firewall
O unico problema que estou tendo com ele é quanto ao envie ao recebimento de arquivos pelo messenger, mas ainda não tive tempo de testar isso, tente usar ele e ai vc pode incrementar regras, essas que estão postadas são um perfil que se encaixa nesta empresa!!!
-
rc.firewall
O unico problema que estou tendo com ele é quanto ao envie ao recebimento de arquivos pelo messenger, mas ainda não tive tempo de testar isso, tente usar ele e ai vc pode incrementar regras, essas que estão postadas são um perfil que se encaixa nesta empresa!!!
-
ola
mas no meu rc.firewall...
como é como se ele nao inicializasse...
qual a melhor forma de eu resolver isso...???
uso o Red Hat 9.0