[Tutorial] Iptables para proteger tu servidor
#1

Las siguientes Iptables las he usado en mi vps (Ubuntu) y efectivamente funcionan , solo tienen que copiarlas y pegarlas en su consola y les podran ayudar a resolver algunos ataques (Ninguna de las siguientes Iptables es de mi autorнa , solo las he recopilado )


UDP Flood : (Multiples conexiones falsas)

iptables -A INPUT -p udp -m udp --sport 19 -j DROP

iptables -A INPUT -p udp -m limit --limit 5/s -j RETURN

iptables -A INPUT -p udp -m limit --limit 5/s -j LOG

Syn Flood y Query Fallidos ( Te aparece un mensaje en los logs como este : Warning: dropping a split packet from client)

iptables -A INPUT -p tcp --syn --dport 80 -m connlimit --connlimit-above 20 -j DROP

iptables -A INPUT -p tcp --syn --dport 443 -m connlimit --connlimit-above 20 -j DROP

iptables -A INPUT -p tcp --dport 80 -i eth0 -m state --state NEW -m recent --set

iptables -I INPUT -p tcp --dport 80 -m state --state NEW -m recent --update --seconds 10 --hitcount 20 -j DROP

iptables -A INPUT -p tcp --dport 443 -i eth0 -m state --state NEW -m recent --set

iptables -I INPUT -p tcp --dport 443 -m state --state NEW -m recent --update --seconds 10 --hitcount 20 -j DROP

iptables -A INPUT -p tcp --syn -m limit --limit 10/s --limit-burst 13 -j DROP***(en lo posible no usar esta)

Para tener los logs de las Ip's y rechazarlas segun sea el caso:

iptables -N flood

iptables -A flood -j LOG --log-prefix "FLOOD "

iptables -A flood -j DROP

Proteger tu ancho de banda (Sirve contra algunos ataques DDOS que ocupan este y lo sobrecargan ) :

(Lo siguiente solo tienen que copiarlo y pegar) :

sysctl -w net/ipv4/tcp_syncookies=1

sysctl -w net/ipv4/tcp_timestamps=1

sysctl -w net/netfilter/nf_conntrack_tcp_loose=0

echo 2500000 > /sys/module/nf_conntrack/parameters/hashsize
sysctl -w net/netfilter/nf_conntrack_max=2000000

iptables -t raw -I PREROUTING -p tcp -m tcp --syn -j CT --notrack

iptables -I INPUT -p tcp -m tcp -m conntrack --ctstate INVALID,UNTRACKED -j SYNPROXY --sack-perm --timestamp --wscale 7 --mss 1460

iptables -A INPUT -m conntrack --ctstate INVALID -j DROP

Si estan bajo un Ataque DDOS Esto les puede ser de utilidad:

iptables -t raw -I PREROUTING -p tcp -m tcp -d 192.168.0.50 --syn -j CT --notrack
iptables -I INPUT -p tcp -m tcp -d 192.168.0.50 -m conntrack --ctstate INVALID,UNTRACKED -j SYNPROXY --sack-perm --timestamp --wscale 7 --mss 1460
iptables -A INPUT -m conntrack --ctstate INVALID -j DROP

*Remplazen el 192.168.0.50 por la Ip que desean proteger.


Sumado a todas estas reglas se les recomienda instalar APF o CSF Para complementarlas y darle mayor seguridad a su servidor (Ninguna de las iptables garantiza detener el ataque completamente ya que la mayoria de las medidas son en parte para mitigarlos

*Si alguien mas quiere aportar iptables que comente y puedo ir editando para tener mas informaciуn y asi mejorar la seguridad de nuestros servidores.

EDITADO:

Mitigar algunos otros ataques comunes "Diferentes tipos de DDOS": (Recuerden que solo tienen que copiar y pegar)

iptables -A INPUT -p ICMP --icmp-type echo-request -m length --length 60:65535 -j ACCEPT

iptables -A INPUT -p UDP -f -j DROP

iptables -A INPUT -m pkttype --pkt-type broadcast -j DROP

iptables -A INPUT -p ICMP --icmp-type echo-request -m pkttype --pkttype broadcast -j DROP

iptables -A INPUT -p ICMP --icmp-type echo-request -m limit --limit 3/s -j ACCEPT

iptables -A INPUT -p UDP --dport 7 -j DROP

iptables -A INPUT -p UDP --dport 19 -j DROP

iptables -A INPUT -p UDP --dport 135:139 -j DROP

iptables -A INPUT -p TCP --dport 135:139 -j DROP

iptables -A INPUT -p TCP --syn -m iplimit --iplimit-above 3 -j DROP

iptables -A INPUT -p UDP -m pkttype --pkt-type broadcast -j DROP

iptables -A INPUT -p UDP -m limit --limit 3/s -j ACCEPT

iptables -A INPUT -p ICMP -f -j DROP

iptables -A INPUT -p tcp -d IP -m length –length 40:48 -j DROP

iptables -A INPUT -p tcp -s 0.0.0.0/0 -d IP -m ttl –ttl 111 -j DROP
Reply
#2

Gracias por compartir. +1
Reply
#3

Quote:
Originally Posted by jotajeda
Посмотреть сообщение
Gracias por compartir. +1
No hay problema , de todos modos seguire recopilando iptables y editando el "Thread" para complementarlo aъn mбs , igual si alguien mбs quiere aportar es bienvenido.
Reply
#4

Que buena men.. gracias por compartir aqui tambien estan todas las ip de todos los paises podria servir.. yo en este caso bloquie a USA es donde me venian los ataques, puedes agregarlo les puede servir a muchos.

http://www.ipdeny.com/ipblocks/
Reply
#5

Para ataques del estilo que se te revienta el log con "Packet was modified, sent by id"... sirve?
Reply
#6

Quote:
Originally Posted by Victor_Gutierrez
Посмотреть сообщение
Para ataques del estilo que se te revienta el log con "Packet was modified, sent by id"... sirve?
Deberнas probarlo.

En cuanto al aporte, genial.
Reply
#7

Agrega estas (acuerdate tambien de usar y configurar bien el firewall )

iptables -A INPUT -s 10.0.0.0/8 -j DROP
iptables -A INPUT -s 169.254.0.0/16 -j DROP
iptables -A INPUT -s 172.16.0.0/12 -j DROP
iptables -A INPUT -s 127.0.0.0/8 -j DROP

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

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
iptables -A INPUT -p icmp -m icmp -m limit --limit 1/second -j ACCEPT

iptables -A INPUT -m state --state INVALID -j DROP
iptables -A FORWARD -m state --state INVALID -j DROP
iptables -A OUTPUT -m state --state INVALID -j DROP

iptables -A INPUT -p tcp -m tcp --tcp-flags SYN,FIN SYN,FIN -j DROP
iptables -A INPUT -p tcp -m tcp --tcp-flags SYN,RST SYN,RST -j DROP
Reply
#8

+rep
Reply
#9

Jajajajajajajaja esta seccion es la mera libreta de chistes para programadores y de vez en cuando para ingenieros en redes verrrgaaa chamo.

El de arriba es peor que le da REP jajajajajaja.
Reply
#10

Quote:
Originally Posted by 0xB7CE50
Посмотреть сообщение
Jajajajajajajaja esta seccion es la mera libreta de chistes para programadores y de vez en cuando para ingenieros en redes verrrgaaa chamo.

El de arriba es peor que le da REP jajajajajaja.
No tomes a mal el comentario pero, en vez de burlarte puedes resaltar los puntos 'fallos' del tema, y no lo digo por que yo sea un profesional en el tema, pero sн, actъas mal.
Reply


Forum Jump:


Users browsing this thread: 2 Guest(s)