Firewall para um PC com iptables
Creto
Paulo Benedito
Olá,
Devido os últimos fatos envolvendo a privacidade na NET compartilho aqui a dica do usuário [b]fran[/b] do [url=http://www.pclinuxosbrasil.com.br/]PCLinuxOS Brasil[/url]
[quote]fran wrote:
Firewall com todas entradas Abertas e as saídas Fechadas ....
Nada sai do pc .[/quote]
[code] #!/bin/bash
# 09/02/2013
# Fonte http://www.netfilter.org/
# Firewall com todas entradas Abertas e as saidas Fechadas ....
# Crédito Fran
# Debian 7.0
# Desativar o firewall
iptables -F
iptables -X
iptables -Z
############
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
##### NomeS CHAINS
iptables -N Pc
##### CRIA ACESSO NAS CHAINS
iptables -A Pc -m state --state ESTABLISHED,RELATED -j ACCEPT
###########
# Debian faz isso por padrão sempre que possível. Se você tem roteamento
# assimétrico (ou seja, você espera pacotes vindos de estranhos), você vai querer
# desativar este tipo de filtragem nessas interfaces.
# Fonte http://www.netfilter.org/documentation/HOWTO/packet-filtering-HOWTO-11.html
echo "1" > /proc/sys/net/ipv4/conf/eth0/rp_filter
###########
# Proteção contra Syn-flood; OBS 2 pode ser 10 ou mais por segundo 2/s pode estar errado
# fontes: http://pt.wikipedia.org/wiki/SYN_Flood
# iptables -A FORWARD -p tcp --syn -m limit --limit 2/s -j ACCEPT
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
# Port scanner suspeito:
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
# Ping da morte:
# iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
# Não responda a pings
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
# Rede Pc
# Coloque o numero da sua rede,EX: iptables -A Pc -s X.X.X.X/X.X.X.X -j ACCEPT
# (samba) caso queira compartilhar arquivos na rede
# iptables -A Pc -s 10.0.0.0/255.255.255.0 -j ACCEPT
## LOOPBACK
# Allow unlimited traffic on the loopback interface.
iptables -A Pc -i lo -j ACCEPT
##### total de redes #####
# Fecha o resto/Pc
iptables -A Pc -j DROP
iptables -A INPUT -j Pc
iptables -A FORWARD -j Pc
# Fim
# iptables -nvL
# ifconfig
echo "$(tput bold ; tput setaf 2)--- Firewall Ligado Sucesso ---$(tput sgr0)[/code]
Testado......
Fontes: [url=http://www.pclinuxosbrasil.com.br/modules/xforum/viewtopic.php?post_id=5783#forumpost5783]Firewall para um PC com iptables | PCLinuxOS Brasil[/url]
Arquivo: [url=http://db.tt/17mxmiCv]Script para iptables[/url]
[u][b]Sugestão[/b][/u] aos admins/mods seria legal ter este tópico fixo para a posteridade.
T+
Devido os últimos fatos envolvendo a privacidade na NET compartilho aqui a dica do usuário [b]fran[/b] do [url=http://www.pclinuxosbrasil.com.br/]PCLinuxOS Brasil[/url]
[quote]fran wrote:
Firewall com todas entradas Abertas e as saídas Fechadas ....
Nada sai do pc .[/quote]
[code] #!/bin/bash
# 09/02/2013
# Fonte http://www.netfilter.org/
# Firewall com todas entradas Abertas e as saidas Fechadas ....
# Crédito Fran
# Debian 7.0
# Desativar o firewall
iptables -F
iptables -X
iptables -Z
############
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT
##### NomeS CHAINS
iptables -N Pc
##### CRIA ACESSO NAS CHAINS
iptables -A Pc -m state --state ESTABLISHED,RELATED -j ACCEPT
###########
# Debian faz isso por padrão sempre que possível. Se você tem roteamento
# assimétrico (ou seja, você espera pacotes vindos de estranhos), você vai querer
# desativar este tipo de filtragem nessas interfaces.
# Fonte http://www.netfilter.org/documentation/HOWTO/packet-filtering-HOWTO-11.html
echo "1" > /proc/sys/net/ipv4/conf/eth0/rp_filter
###########
# Proteção contra Syn-flood; OBS 2 pode ser 10 ou mais por segundo 2/s pode estar errado
# fontes: http://pt.wikipedia.org/wiki/SYN_Flood
# iptables -A FORWARD -p tcp --syn -m limit --limit 2/s -j ACCEPT
echo "1" > /proc/sys/net/ipv4/tcp_syncookies
# Port scanner suspeito:
iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT
# Ping da morte:
# iptables -A FORWARD -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT
# Não responda a pings
echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all
# Rede Pc
# Coloque o numero da sua rede,EX: iptables -A Pc -s X.X.X.X/X.X.X.X -j ACCEPT
# (samba) caso queira compartilhar arquivos na rede
# iptables -A Pc -s 10.0.0.0/255.255.255.0 -j ACCEPT
## LOOPBACK
# Allow unlimited traffic on the loopback interface.
iptables -A Pc -i lo -j ACCEPT
##### total de redes #####
# Fecha o resto/Pc
iptables -A Pc -j DROP
iptables -A INPUT -j Pc
iptables -A FORWARD -j Pc
# Fim
# iptables -nvL
# ifconfig
echo "$(tput bold ; tput setaf 2)--- Firewall Ligado Sucesso ---$(tput sgr0)[/code]
Testado......
Fontes: [url=http://www.pclinuxosbrasil.com.br/modules/xforum/viewtopic.php?post_id=5783#forumpost5783]Firewall para um PC com iptables | PCLinuxOS Brasil[/url]
Arquivo: [url=http://db.tt/17mxmiCv]Script para iptables[/url]
[u][b]Sugestão[/b][/u] aos admins/mods seria legal ter este tópico fixo para a posteridade.
T+
Entre ou Registre-se para fazer um comentário.
Comentários
Mas, parafraseando você (no passado): "(...) lá vem paulada hehehe onde colocar esse script"?
Uma curiosidade: Dentre outras coisas, esse [i]Ping da Morte[/i] foi obra sua?
Abração,
Tovarishch
linuxmint francis # gedit /
etc/init.d/Firewall
Não sei bem, mas deveria ficar:
linuxmint francis # gedit /
etc/init.d/Firewall.sh
Não?
T +