|
|
|
@ -0,0 +1,63 @@ |
|
|
|
#!/bin/bash |
|
|
|
|
|
|
|
input="INPUT-CUSTOM" |
|
|
|
|
|
|
|
iptables -F $input |
|
|
|
iptables -F DOCKER-USER |
|
|
|
ip6tables -F $input |
|
|
|
|
|
|
|
|
|
|
|
#gootips (Trusted IPs) |
|
|
|
|
|
|
|
for i in $(cat ); do |
|
|
|
|
|
|
|
done |
|
|
|
|
|
|
|
iptables -A $input -i lo -j ACCEPT -m comment --comment "Accept loopback traffic" |
|
|
|
|
|
|
|
iptables -A $input -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT -m comment --comment "Accept established, related" |
|
|
|
|
|
|
|
iptables -A $input -p icmp -m icmp --icmp-type echo-request -j ACCEPT -m comment --comment "Accept pings" |
|
|
|
|
|
|
|
iptables -A $input -p tcp --dport 22 -j ACCEPT -m comment --comment "Accept SSH" |
|
|
|
|
|
|
|
ip6tables -A $input -i lo -j ACCEPT -m comment --comment "Accept loopback traffic" |
|
|
|
|
|
|
|
ip6tables -A $input -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT -m comment --comment "Accept established, related traffic" |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# start custom rules |
|
|
|
|
|
|
|
#Bloqueio ping da morte |
|
|
|
echo "0" > /proc/sys/net/ipv4/icmp_echo_ignore_all |
|
|
|
iptables -N PING-MORTE |
|
|
|
iptables -A $input -p icmp --icmp-type echo-request -j PING-MORTE |
|
|
|
iptables -A PING-MORTE -m limit --limit 1/s --limit-burst 4 -j RETURN |
|
|
|
iptables -A PING-MORTE -j DROP |
|
|
|
|
|
|
|
#bloquear ataque do tipo SYN-FLOOD (Precisa-se definir uma $WAN) |
|
|
|
if [ "X$WAN" != "X" ]; then |
|
|
|
echo "0" > /proc/sys/net/ipv4/tcp_syncookies |
|
|
|
iptables -N syn-flood |
|
|
|
iptables -A $input -i $WAN -p tcp --syn -j syn-flood |
|
|
|
iptables -A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN |
|
|
|
iptables -A syn-flood -j DROP |
|
|
|
if |
|
|
|
|
|
|
|
#Bloqueio de ataque ssh de força bruta(Precisa-se definir uma $WAN) |
|
|
|
if [ "X$WAN" != "X" ]; then |
|
|
|
iptables -N SSH-BRUT-FORCE |
|
|
|
iptables -A $input -i $WAN -p tcp --dport 22 -j SSH-BRUT-FORCE |
|
|
|
iptables -A SSH-BRUT-FORCE -m limit --limit 1/s --limit-burst 4 -j RETURN |
|
|
|
iptables -A SSH-BRUT-FORCE -j DROP |
|
|
|
fi |
|
|
|
|
|
|
|
#Bloqueio de scanners ocultos (Shealt Scan) |
|
|
|
#$IPTABLES -A FORWARD -p tcp --tcp-flags SYN,ACK, FIN, -m limit --limit 1/s -j ACCEPT |
|
|
|
|
|
|
|
# end custom rules |
|
|
|
|
|
|
|
iptables -A $input -j RETURN |
|
|
|
iptables -A DOCKER-USER -j RETURN |
|
|
|
ip6tables -A $input -j RETURN |