Iptables (rc.firewall)
Configuração intermediária de Firewall
Categoria: Segurança
Software: Iptables
[ Hits: 11.153 ]
Por: Guilherme Maia
Parâmetros de conf:
Mude aqui pelo IP e máscara de sua rede:
ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up
Em eth1 você colocará qual placa de rede será sua rede interna:
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
Obs.: Este firewall serve apenas para compartilhamento da net, falta por exemplo redirecionamento de proxy.
Para permitir executá-lo (padrão Slackware):
# chmod +x /etc/rc.d/rc.firewall
Quando quiser colocar ele na inicialização automática:
kedit /etc/rc.d/rc.local
Adicionando a linha:
/etc/rc.d/rc.firewall start
#!/bin/bash
#Configuraçao do Iptables
echo by: Guilherme
firewall_start(){
echo [Definindo IP do servidor]
ifconfig eth0 192.168.0.1 netmask 255.255.255.0 up
#Compartilhamento
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE
echo Compartilhamento Ativado
# Liberar portas
# SSH:
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# DNS:
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
# HTTP e HTTPS:
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
#FTP
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
#WEBMIN
iptables -A INPUT -p tcp --dport 10000 -j ACCEPT
echo Liberando portas
#Bloqueia as portas UDP de 0 a 1024
iptables -A INPUT -p udp --dport 0:1024 -j DROP
# Bloqueia as Demais portas
iptables -A INPUT -p tcp --syn -j DROP
echo Bloqueando Portas
# Ignora pings
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
# Proteção contra IP spoofing
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
# Protege contra synflood
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
# Proteção contra ICMP Broadcasting
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
# Bloqueia traceroute
iptables -A INPUT -p udp --dport 33435:33525 -j DROP
# Proteções diversas contra portscanners, ping of death, ataques DoS, etc.
iptables -A INPUT -m state --state INVALID -j DROP
#Log`s de Acessos
#TELNET
iptables -A INPUT -p tcp --dport 23 -i eth1 -j LOG --log-level 6 --log-prefix "FIREWALL: telnet: "
#FTP
iptables -A INPUT -p tcp --dport 21 -i eth1 -j LOG --log-level 6 --log-prefix "FIREWALL: ftp: "
#SSH
iptables -A INPUT -p tcp --dport 80 -i eth1 -j LOG --log-level 6 --log-prefix "FIREWALL: http: "
echo Log´s Ativado
# Abre para a interface de loopback.
iptables -A INPUT -i lo -j ACCEPT
echo "O Firewall está sendo carregado..."
sleep 1
echo "Tudo pronto!"
sleep 1
}
firewall_stop(){
iptables -F
iptables -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
}
case "$1" in
"start")
firewall_start
;;
"stop")
firewall_stop
echo "O firewall está sendo desativado"
sleep 2
echo "ok."
;;
"restart")
echo "O firewall está sendo reiniciado"
sleep 1
echo "ok."
firewall_stop; firewall_start
;;
*)
iptables -L -n
esac
Nenhum comentário foi encontrado.
KDE Plasma - porque pode ser a melhor opção de interface gráfica
Gentoo: detectando impressoras de rede e como fixar uma impressora por IP
Como o GNOME conseguiu o feito de ser preterido por outras interfaces gráficas
Por que sua empresa precisa de uma PKI (e como automatizar EMISSÕES de certificados via Web API)
Instalando NoMachine no Gentoo com Systemd (acesso Remoto em LAN)
Gentoo: Trocando wpa_supplicant pelo iwd no NetworkManager (Systemd)
Instalar Linux em notebook Sony Vaio VPCEG13EB (10)
Vou destruir sua infância:) (6)
Quando vocês pararam de testar distros? (24)









