Sugestão no Firewall

1. Sugestão no Firewall

Lucas Peregrino
Lucas Peregrino

(usa Debian)

Enviado em 27/06/2015 - 20:46h

Boa noite estou procurando sujestão para meu firewall n e mais perfeito n mais gostaria de dar uma melhorada nele.


#!/bin/bash

### BEGIN INIT INFO
# Provides: firewall
# Required-Start: $network
# Required-Stop: $network
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
### END INIT INFO

#digite
net=eth1
rede=eth0
ip_rede=192.168.4.0/24
servidor=(192.168.4.254 192.168.4.253 192.168.4.252)
lista="/etc/squid3/lists/ip"

PATH=/bin:/usr/bin:/sbin:/usr/sbin

. /lib/lsb/init-functions

case "$1" in
start)
log_daemon_msg "Starting Firewall execution" "IPTABLES"
log_end_msg $?

## Ativa Modulos
# -------------------------------------------------------
modprobe iptable_filter
modprobe iptable_nat
modprobe iptable_mangle
modprobe ipt_LOG
modprobe ipt_REDIRECT
modprobe ipt_MASQUERADE

# Configurando a Protecao anti-spoofing
for spoofing in /proc/sys/net/ipv4/conf/*/rp_filter; do
echo "1" > $spoofing
done

# Impedimos que um atacante possa maliciosamente alterar alguma rota
echo 0 > /proc/sys/net/ipv4/conf/all/accept_redirects

# Utilizado em diversos ataques, isso possibilita que o atacante determine o "caminho" que seu
# pacote vai percorrer (roteadores) ate seu destino. Junto com spoof, isso se torna muito perigoso.
echo 0 > /proc/sys/net/ipv4/conf/all/accept_source_route

# Protecao contra responses bogus
echo 1 > /proc/sys/net/ipv4/icmp_ignore_bogus_error_responses

# Protecao contra ataques de syn flood (inicio da conexao TCP). Tenta conter ataques de DoS.
echo 1 > /proc/sys/net/ipv4/tcp_syncookies

# Finalmente: Habilitando o trafego IP, entre as Interfaces de rede
echo "1" > /proc/sys/net/ipv4/ip_forward

# Definindo o DROP
# -------------------------------------------------------
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

## ACCEPT (libera) pacotes de retorno da internet
# -------------------------------------------------------
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

## Abre para a interface de loopback.
# -------------------------------------------------------
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --syn -s 127.0.0.1/24 -j ACCEPT

## Mascaramento de rede para acesso externo
# -------------------------------------------------------
iptables -t nat -A POSTROUTING -s $ip_rede -j MASQUERADE

## Redirecionamento porta 80 para 3128
# -------------------------------------------------------
iptables -t nat -A PREROUTING -s ${servidor[0]} -p tcp --dport 80 -j ACCEPT
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to-destination ${servidor[0]}:3128
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128

## Libera as portas do samba para Rede.
# -------------------------------------------------------
#TCP
#iptables -A FORWARD -s $ip_rede -p tcp --dport 137 -j ACCEPT
#iptables -A FORWARD -s $ip_rede -p tcp --dport 138 -j ACCEPT
#iptables -A FORWARD -s $ip_rede -p tcp --dport 139 -j ACCEPT
#iptables -A FORWARD -s $ip_rede -p tcp --dport 445 -j ACCEPT
#UDP
#iptables -A FORWARD -s $ip_rede -p udp --dport 137 -j ACCEPT
#iptables -A FORWARD -s $ip_rede -p udp --dport 138 -j ACCEPT
#iptables -A FORWARD -s $ip_rede -p udp --dport 139 -j ACCEPT
#iptables -A FORWARD -s $ip_rede -p udp --dport 445 -j ACCEPT

# Libera DHCP
# -------------------------------------------------------
iptables -A INPUT -s $ip_rede -p udp --sport 68 --dport 67 -j ACCEPT

# Libera DNS
# -------------------------------------------------------
iptables -A INPUT -s $ip_rede -p udp --dport 53 -j ACCEPT

# Libera HTTP e HTTPS
# -------------------------------------------------------
iptables -A INPUT -s $ip_rede -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -s $ip_rede -p tcp --dport 443 -j ACCEPT

# Libera SQUID
# -------------------------------------------------------
iptables -A INPUT -s $ip_rede -p tcp --dport 3128 -j ACCEPT

# Libera Apache 2
# -------------------------------------------------------
iptables -A FORWARD -s $ip_rede -p tcp --dport 8089 -j ACCEPT
iptables -A INPUT -i $net -p tcp --dport 8089 -j ACCEPT

# Libera PROFTPD
# -------------------------------------------------------
#iptables -A INPUT -s ${servidor[0]} -p tcp --dport 2189 -j ACCEPT
#iptables -A INPUT -s ${servidor[0]} -p tcp -m multiport --dports 21899:21900 -j ACCEPT

# Libera Spark
# -------------------------------------------------------
#iptables -A FORWARD -s $ip_rede -p tcp --dport 5222 -j ACCEPT
#iptables -A FORWARD -s $ip_rede -p tcp --dport 9090 -j ACCEPT

#iptables -A INPUT -i $net -p tcp --dport 5222 -j ACCEPT
#iptables -A INPUT -i $net -p tcp --dport 9090 -j ACCEPT

# Libera POP e SMTP
# -------------------------------------------------------
#25-110
iptables -A INPUT -s $ip_rede -p tcp --dport 25 -j ACCEPT
iptables -A INPUT -s $ip_rede -p tcp --dport 110 -j ACCEPT

#465-587-995
iptables -A INPUT -s $ip_rede -p tcp --dport 465 -j ACCEPT
iptables -A INPUT -s $ip_rede -p tcp --dport 587 -j ACCEPT
iptables -A INPUT -s $ip_rede -p tcp --dport 995 -j ACCEPT

# Libera IMAP
# -------------------------------------------------------
#143-993
iptables -A INPUT -s $ip_rede -p tcp --dport 143 -j ACCEPT
iptables -A INPUT -s $ip_rede -p tcp --dport 993 -j ACCEPT

## Liberando SSH Servinet (porta 22)
# -------------------------------------------------------
iptables -A INPUT -i $net -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -s $ip_rede -p tcp --dport 22 -j ACCEPT

## Liberando NXSERVER (porta 4000)
# -------------------------------------------------------
iptables -A INPUT -i $net -p tcp --dport 4000 -j ACCEPT
iptables -A INPUT -s $ip_rede -p tcp --dport 4000 -j ACCEPT
# iptables -t nat -A PREROUTING -p tcp --dport 4000 -i $net -j DNAT --to ${servidor[1]}:4000

## Libera Terminal Server
# -------------------------------------------------------
# iptables -A INPUT -i $net -p tcp --dport 3389 -j ACCEPT
# iptables -A INPUT -s $ip_rede -p tcp --dport 3389 -j ACCEPT
# iptables -t nat -A PREROUTING -p tcp --dport 3389 -i $net -j DNAT --to ${servidor[2]}:3389

## Libera Camera
# -------------------------------------------------------
#iptables -A INPUT -i $net -p tcp --dport 3180 -j ACCEPT
#iptables -A INPUT -s $ip_rede -p tcp --dport 3180 -j ACCEPT
#iptables -t nat -A PREROUTING -p tcp --dport 3180 -i $net -j DNAT --to 192.168.2.45:3180

# Libera VPN
# -------------------------------------------------------
#iptables -A INPUT -i tun+ -j ACCEPT
#iptables -A FORWARD -i tun+ -j ACCEPT

## Libera Ares
# -------------------------------------------------------
#iptables -A INPUT -s $ip_rede -p tcp --dport 39093 -j ACCEPT
#iptables -A FORWARD -s $ip_rede -p tcp --dport 5800 -j ACCEPT

## Libera Azureus
# -------------------------------------------------------
#iptables -A INPUT -s $ip_rede -p tcp --dport 25390 -j ACCEPT

## libera VNC
# -------------------------------------------------------
#iptables -A INPUT -s $ip_rede -p tcp --dport 5900 -j ACCEPT
#iptables -A INPUT -s $ip_rede -p tcp --dport 5800 -j ACCEPT

## Libera Webmin
# -------------------------------------------------------
#iptables -A INPUT -s $ip_rede -p tcp --dport 332 -j ACCEPT
#iptables -A INPUT -i $net -p tcp --dport 332 -j ACCEPT

# Libera ntpdate (NTP)
# -------------------------------------------------------
iptables -A INPUT -s $ip_rede -p udp --sport 123 -j ACCEPT

# Libera Firebird
# -------------------------------------------------------
#iptables -A INPUT -s $ip_rede -p tcp --dport 3054 -j ACCEPT
#iptables -A INPUT -s $ip_rede -p tcp --dport 5787 -j ACCEPT

# Libera MySQL
# -------------------------------------------------------
#iptables -A INPUT -s $ip_rede -p tcp --dport 3306 -j ACCEPT
#iptables -A INPUT -s $ip_rede -p tcp --dport 3310 -j ACCEPT

## Sintegra
# -------------------------------------------------------
iptables -A INPUT -s $ip_rede -p tcp --dport 8017 -j ACCEPT

## ReceitaNET
# -------------------------------------------------------
iptables -A INPUT -s $ip_rede -p tcp --dport 3456 -j ACCEPT

## Dapi-sef
# -------------------------------------------------------
iptables -A INPUT -s $ip_rede -p tcp --dport 3050 -j ACCEPT

## Liberando acesso a NFE (Nota fiscal Eletronica)
# -------------------------------------------------------
iptables -A INPUT -s $ip_rede -p tcp --dport 4199 -j ACCEPT # NFe
iptables -A INPUT -s $ip_rede -p tcp --dport 5959 -j ACCEPT # NFe

## Caixa Economica
# -------------------------------------------------------
iptables -A INPUT -s $ip_rede -p tcp --dport 2006 -j ACCEPT # COBCaixa
iptables -A INPUT -s $ip_rede -p tcp --dport 2631 -j ACCEPT # CSocial
iptables -A INPUT -s $ip_rede -p tcp --dport 1024 -j ACCEPT
iptables -A INPUT -s $ip_rede -p tcp --dport 65535 -j ACCEPT

## Liberar ping (ICMP)
#--------------------------------------------------------
iptables -A INPUT -p icmp --icmp-type 0 -m limit --limit 2/s -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 3 -m limit --limit 2/s -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 5 -m limit --limit 2/s -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 8 -m limit --limit 2/s -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 11 -m limit --limit 2/s -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 12 -m limit --limit 2/s -j ACCEPT

## Fechando as portas do samba caso fique de cara para a internet.
# -------------------------------------------------------
#TCP
iptables -A INPUT -i $net -p tcp --dport 137 -j DROP
iptables -A INPUT -i $net -p tcp --dport 138 -j DROP
iptables -A INPUT -i $net -p tcp --dport 139 -j DROP
iptables -A INPUT -i $net -p tcp --dport 445 -j DROP
#UDP
iptables -A INPUT -i $net -p udp --dport 137 -j DROP
iptables -A INPUT -i $net -p udp --dport 138 -j DROP
iptables -A INPUT -i $net -p udp --dport 139 -j DROP
iptables -A INPUT -i $net -p udp --dport 445 -j DROP

## Bloqueando U89 - software burlador de proxy
# -------------------------------------------------------
iptables -A FORWARD -p tcp --dport 9666 -j DROP
iptables -A INPUT -p tcp --dport 9666 -j DROP
iptables -A OUTPUT -p tcp --dport 9666 -j DROP

# BLoqueio de UltraSurf
# -------------------------------------------------------
iptables -A INPUT -d 65.49.14.0/24 -j LOG --log-prefix "=UltraSurf= "
iptables -A FORWARD -d 65.49.14.0/24 -j LOG --log-prefix "=UltraSurf= "

## Bloqueio de Multicast
# -------------------------------------------------------
iptables -A INPUT -s 224.0.0.0/4 -j DROP
iptables -A INPUT -d 224.0.0.0/4 -j DROP
iptables -A INPUT -s 240.0.0.0/5 -j DROP
iptables -A INPUT -d 240.0.0.0/5 -j DROP
iptables -A INPUT -s 0.0.0.0/8 -j DROP
iptables -A INPUT -d 0.0.0.0/8 -j DROP
iptables -A INPUT -d 239.255.255.0/24 -j DROP
iptables -A INPUT -d 255.255.255.255 -j DROP

## Bloqueio de Black Orifice
# -------------------------------------------------------
iptables -A INPUT -p tcp --dport 12345:12345 -j DROP
iptables -A INPUT -p udp --dport 12345:12345 -j DROP

## Bloqueio acesso X server
# -------------------------------------------------------
iptables -A INPUT -p tcp --dport 5999:6003 -j DROP
iptables -A INPUT -p udp --dport 5999:6003 -j DROP
iptables -A INPUT -p tcp --dport 7100 -j DROP

## Bloqueio de NetBus
# -------------------------------------------------------
iptables -A INPUT -p tcp --dport 31337 -j DROP
iptables -A INPUT -p udp --dport 31337 -j DROP

## Protecao Contra IP Spoofing
# -------------------------------------------------------
iptables -A INPUT -i $net -s 10.0.0.0/8 -j DROP
iptables -A INPUT -i $net -s 127.0.0.0/8 -j DROP
iptables -A INPUT -i $net -s 169.254.0.0/16 -j DROP
iptables -A INPUT -i $net -s 172.16.0.0/12 -j DROP
iptables -A INPUT -i $net -s 192.168.0.0/24 -j DROP

# Impedindo ataque Ping of Death na rede
# -------------------------------------------------------
iptables -A INPUT -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT

# Impedindo ataque de Denial Of Service Dos na rede e servidor
# -------------------------------------------------------
iptables -A FORWARD -p tcp -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -p tcp -m limit --limit 1/s -j ACCEPT

# Protecao contra worms
# -------------------------------------------------------
iptables -I FORWARD -p tcp --dport 135 -j LOG --log-level info --log-prefix 'WORMS REDE>'
iptables -A FORWARD -p tcp --dport 135 -j DROP
iptables -I INPUT -p tcp --dport 135 -j LOG --log-level info --log-prefix 'WORMS >'
iptables -A INPUT -p tcp --dport 135 -j DROP

# Bloquear ataque do tipo SYN-FLOOD
# -------------------------------------------------------
iptables -A INPUT -i $net -p tcp ! --syn -m conntrack --ctstate NEW -m limit --limit 5/m --limit-burst 7 -j LOG --log-level 4 --log-prefix "Drop Syn"
iptables -A INPUT -i $net -p tcp ! --syn -m conntrack --ctstate NEW -j DROP

# Fragmentos
# -------------------------------------------------------
iptables -A INPUT -i $net -f -m limit --limit 5/m --limit-burst 7 -j LOG --log-level 4 --log-prefix "Fragments Packets"
iptables -A INPUT -i $net -f -j DROP
iptables -A INPUT -i $net -p tcp --tcp-flags ALL FIN,URG,PSH -j DROP
iptables -A INPUT -i $net -p tcp --tcp-flags ALL ALL -j DROP

# Bloquear pacotes NULL
# -------------------------------------------------------
iptables -A INPUT -i $net -p tcp --tcp-flags ALL NONE -m limit --limit 5/m --limit-burst 7 -j LOG --log-level 4 --log-prefix "NULL Packets"
iptables -A INPUT -i $net -p tcp --tcp-flags ALL NONE -j DROP # NULL packets
iptables -A INPUT -i $net -p tcp --tcp-flags SYN,RST SYN,RST -j DROP

# Drop xmas
# -------------------------------------------------------
iptables -A INPUT -i $net -p tcp --tcp-flags SYN,FIN SYN,FIN -m limit --limit 5/m --limit-burst 7 -j LOG --log-level 4 --log-prefix "XMAS Packets"
iptables -A INPUT -i $net -p tcp --tcp-flags SYN,FIN SYN,FIN -j DROP #XMAS

# Drop FIN scans
# -------------------------------------------------------
iptables -A INPUT -i $net -p tcp --tcp-flags FIN,ACK FIN -m limit --limit 5/m --limit-burst 7 -j LOG --log-level 4 --log-prefix "Fin Packets Scan"
iptables -A INPUT -i $net -p tcp --tcp-flags FIN,ACK FIN -j DROP # FIN packet scans
iptables -A INPUT -i $net -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j DROP

# Log and get rid of broadcast / multicast and invalid
# -------------------------------------------------------
iptables -A INPUT -i $net -m pkttype --pkt-type broadcast -j LOG --log-prefix " Broadcast "
iptables -A INPUT -i $net -m pkttype --pkt-type broadcast -j DROP

iptables -A INPUT -i $net -m pkttype --pkt-type multicast -j LOG --log-prefix " Multicast "
iptables -A INPUT -i $net -m pkttype --pkt-type multicast -j DROP

iptables -A INPUT -i $net -m conntrack --ctstate INVALID -j LOG --log-prefix " Invalid "
iptables -A INPUT -i $net -m conntrack --ctstate INVALID -j DROP

# Liberar toda conexão de saída, sem entrada stuff
# -------------------------------------------------------
iptables -A INPUT -i $net -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -o $net -m conntrack --ctstate NEW,ESTABLISHED,RELATED -j ACCEPT

# Protecao contra nmap
# -------------------------------------------------------
iptables -A INPUT -p tcp -i $net -m conntrack --ctstate NEW -m recent --set
iptables -A INPUT -p tcp -i $net -m conntrack --ctstate NEW -m recent --update --seconds 30 --hitcount 10 -j LOG --log-prefix "TENTATIVA SCAN "
iptables -A INPUT -p tcp -i $net -m conntrack --ctstate NEW -m recent --update --seconds 30 --hitcount 10 -j DROP

# Mais protecao contra portscanner
# -------------------------------------------------------
iptables -A INPUT -p tcp --tcp-flags ALL FIN,SYN -i $net -j DROP

# Drop invalid packets
# -------------------------------------------------------
iptables -A INPUT -m conntrack --ctstate INVALID -j DROP
iptables -A FORWARD -m conntrack --ctstate INVALID -j DROP
iptables -A OUTPUT -m conntrack --ctstate INVALID -j DROP

# Stop smurf attacks
# -------------------------------------------------------
iptables -A INPUT -p icmp -m icmp --icmp-type address-mask-request -j DROP
iptables -A INPUT -p icmp -m icmp --icmp-type timestamp-request -j DROP

# Drop excessive RST packets to avoid smurf attacks
# -------------------------------------------------------
iptables -A INPUT -p tcp -m tcp --tcp-flags RST RST -m limit --limit 2/second --limit-burst 2 -j ACCEPT

# Don't allow pings through
# -------------------------------------------------------
iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j DROP

# fecha de hosts conhecidos como spam / bots
# -------------------------------------------------------
FILE=/etc/squid3/lists/drop.lasso
blocks=$(cat $FILE | egrep -v '^;' | awk '{ print $1}' )
for ipblock in $blocks ;do
iptables -A INPUT -s $ipblock -j DROP
done
echo "Bloqueio Hosts indevidos...........................[OK]"

#Bloqueio de scanners ocultos (Shealt Scan)
# -------------------------------------------------------
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
iptables -A FORWARD --protocol tcp --tcp-flags ALL SYN,ACK -j DROP

iptables -A INPUT -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -s 0.0.0.0/0 -p icmp -j DROP

## Protecao diversas contra portscanners, ping of death, ataques DoS, etc.
# -------------------------------------------------------
iptables -A INPUT -i $net -f -j LOG --log-prefix "Pacote INPUT fragmentado: "
iptables -A INPUT -i $net -f -j DROP

# Bloqueio de tracertroute
# -------------------------------------------------------
iptables -A INPUT -p udp -s 0/0 -i $net --dport 33435:33525 -j DROP

## Protecao contra port VALID_CHECK
# -------------------------------------------------------
iptables -N VALID_CHECK
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

## Protecao contra port scanners
# -------------------------------------------------------
iptables -N SCANNER
iptables -A SCANNER -m limit --limit 5/m -j LOG --log-level 6 --log-prefix "FIREWALL: port scanner: "
iptables -A SCANNER -j DROP
iptables -A INPUT -p tcp --tcp-flags ALL FIN,URG,PSH -j SCANNER
iptables -A INPUT -p tcp --tcp-flags ALL NONE -j SCANNER
iptables -A INPUT -p tcp --tcp-flags ALL ALL -j SCANNER
iptables -A INPUT -p tcp --tcp-flags ALL FIN,SYN -j SCANNER
iptables -A INPUT -p tcp --tcp-flags ALL SYN,RST,ACK,FIN,URG -j SCANNER
iptables -A INPUT -p tcp --tcp-flags SYN,RST SYN,RST -j SCANNER
iptables -A INPUT -p tcp --tcp-flags SYN,FIN SYN,FIN -j SCANNER

## Protecao contra tronjans
# -------------------------------------------------------
iptables -N TROJAN
iptables -A TROJAN -m limit --limit 5/m -j LOG --log-level 6 --log-prefix "FIREWALL: trojan: "
iptables -A TROJAN -j DROP
iptables -A INPUT -p tcp --dport 666 -j TROJAN
iptables -A INPUT -p tcp --dport 666 -j TROJAN
iptables -A INPUT -p tcp --dport 4000 -j TROJAN
iptables -A INPUT -p tcp --dport 6000 -j TROJAN
iptables -A INPUT -p tcp --dport 6006 -j TROJAN
iptables -A INPUT -p tcp --dport 16660 -j TROJAN


## Protecao contra trinoo
# -------------------------------------------------------
iptables -N TRINOO
iptables -A TRINOO -m limit --limit 5/m -j LOG --log-level 6 --log-prefix "FIREWALL: trinoo: "
iptables -A TRINOO -j DROP
iptables -A INPUT -p tcp --dport 1524 -j TRINOO
iptables -A INPUT -p tcp --dport 27444 -j TRINOO
iptables -A INPUT -p tcp --dport 27665 -j TRINOO
iptables -A INPUT -p tcp --dport 31335 -j TRINOO
iptables -A INPUT -p tcp --dport 34555 -j TRINOO
iptables -A INPUT -p tcp --dport 35555 -j TRINOO

# Fecha todas as portas
# -------------------------------------------------------
iptables -A INPUT -p tcp --dport 3128 -j REJECT --reject-with tcp-reset

## ReceitaNET
# -----------------------------------------------------
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 161.148.185.130 --dport 80 -j ACCEPT
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 161.148.185.130 --dport 443 -j ACCEPT

iptables -t nat -A PREROUTING -s $ip_rede -d 161.148.185.130 -p tcp --dport 80 -j REDIRECT --to-ports 3128

## Dapi-sef
# -------------------------------------------------------
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 200.166.92.41 --dport 80 -j ACCEPT
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 200.166.92.41 --dport 443 -j ACCEPT

iptables -t nat -A PREROUTING -s $ip_rede -d 200.166.92.41 -p tcp --dport 80 -j REDIRECT --to-ports 3128

# -------------------------------------------------------
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 201.16.234.41 --dport 80 -j ACCEPT
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 201.16.234.41 --dport 443 -j ACCEPT

iptables -t nat -A PREROUTING -s $ip_rede -d 201.16.234.41 -p tcp --dport 80 -j REDIRECT --to-ports 3128

## Liberando acesso a NFE (Nota fiscal Eletronica)
# -------------------------------------------------------
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 200.189.133.249 --dport 80 -j ACCEPT
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 200.189.133.249 --dport 443 -j ACCEPT

iptables -t nat -A PREROUTING -s $ip_rede -d 200.189.133.249 -p tcp --dport 80 -j REDIRECT --to-ports 3128


## Caixa Economica
# -------------------------------------------------------
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 200.201.174.207 --dport 80 -j ACCEPT
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 200.201.174.207 --dport 443 -j ACCEPT

iptables -t nat -A PREROUTING -s $ip_rede -d 200.201.174.207 -p tcp --dport 80 -j REDIRECT --to-port 3128

## Bradesco
# -------------------------------------------------------
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 200.155.86.35 --dport 80 -j ACCEPT
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 200.155.86.35 --dport 443 -j ACCEPT

iptables -t nat -A PREROUTING -s $ip_rede -d 200.155.86.35 -p tcp --dport 80 -j REDIRECT --to-port 3128

## Cedente
# -------------------------------------------------------
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 189.75.117.230 --dport 80 -j ACCEPT
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 189.75.117.230 --dport 443 -j ACCEPT

iptables -t nat -A PREROUTING -s $ip_rede -d 189.75.117.230 -p tcp --dport 80 -j REDIRECT --to-port 3128

iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 186.215.92.131 --dport 80 -j ACCEPT
iptables -t nat -I PREROUTING -s $ip_rede -p tcp -d 186.215.92.131 --dport 443 -j ACCEPT

iptables -t nat -A PREROUTING -s $ip_rede -d 186.215.92.131 -p tcp --dport 80 -j REDIRECT --to-port 3128


;;
stop)
log_daemon_msg "Stopping Firewall execution" "IPTABLES"
log_end_msg $?

## Zera regras
# -------------------------------------------------------
# Removendo regras
iptables -F
iptables -t nat -F
iptables -t mangle -F

# Apagando chains
iptables -X
iptables -t nat -X
iptables -t mangle -X

# Zerando contadores
iptables -Z
iptables -t nat -Z
iptables -t mangle -Z

## Determina a politica ACCEPT
# -------------------------------------------------------
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

echo "1" > /proc/sys/net/ipv4/ip_forward

## ACCEPT (libera) pacotes de retorno da internet
# -------------------------------------------------------
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

## Abre para a interface de loopback.
# -------------------------------------------------------
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --syn -s 127.0.0.1/24 -j ACCEPT

## Mascaramento de rede para acesso externo
# -------------------------------------------------------
iptables -t nat -A POSTROUTING -s $ip_rede -j MASQUERADE

# Libera HTTP e HTTPS
# -------------------------------------------------------
iptables -A INPUT -s $ip_rede -p tcp -j ACCEPT
iptables -A INPUT -s $ip_rede -p udp -j ACCEPT


;;
restart)
$0 stop
$0 start
;;
status)
;;
*)
echo "Use: ./firewall {start|stop|restart|status}"
exit 1
esac
exit 0




  


2. Re: Sugestão no Firewall

Pedro
PX

(usa Debian)

Enviado em 28/06/2015 - 07:03h

# Impedindo ataque de Denial Of Service Dos na rede e servidor
# -------------------------------------------------------
iptables -A FORWARD -p tcp -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -p tcp -m limit --limit 1/s -j ACCEPT


Isso aqui é uma faca de dois gumes irmão, evita DOS mas deixa você sem serviço, até por um telefone da pra te derrubar. Não é recomendável usar estas regras não até onde eu sei, vamos ver oq o pessoal vai dizer ai.

Tem bastante coisa no firewall, se desse uma enxugada nas regras ficaria melhor mas ai é questão de gosto e estética.


3. Re: Sugestão no Firewall

Lucas Peregrino
Lucas Peregrino

(usa Debian)

Enviado em 28/06/2015 - 10:02h

Em parte sei que ele tem muitas regras funciona bem só que estou com um problema nele e o motivo que eu vim busca ajuda tenho em minha rede um ps3 e xbox360 de vizinhos ele acessa a psn normal e conecta no live da Microsoft tb so que não deixa joga online já se eu der um stop no firewall ele roda os jogos sem problemas online. criei uma regra no inicio do firewall dando permissão para os devidos ips terem acesso a qualquer porta udp e tcp só que não funciona esse que meu problema na verdade. Em relação as regras de bloqueio eu já cheguei a parar todas elas para ver se era uma usando # na frente e mesmo assim não consegui o acesso que preciso.



4. Re: Sugestão no Firewall

Pedro
PX

(usa Debian)

Enviado em 28/06/2015 - 18:30h

Lucas Peregrino escreveu:

Em parte sei que ele tem muitas regras funciona bem só que estou com um problema nele e o motivo que eu vim busca ajuda tenho em minha rede um ps3 e xbox360 de vizinhos ele acessa a psn normal e conecta no live da Microsoft tb so que não deixa joga online já se eu der um stop no firewall ele roda os jogos sem problemas online. criei uma regra no inicio do firewall dando permissão para os devidos ips terem acesso a qualquer porta udp e tcp só que não funciona esse que meu problema na verdade. Em relação as regras de bloqueio eu já cheguei a parar todas elas para ver se era uma usando # na frente e mesmo assim não consegui o acesso que preciso.




Acho q no caso de jogos n se pode usar squid pq eles costumam bloquear coisas assim, não tenho certeza se é isto.

Acho que o ideal seria ir refazendo o firewall até descobrir o problema, sei que é chato mas ñ vejo outra saída, a menos que alguém saiba mais e apareça por aq, rs.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts