Vous n'êtes pas identifié(e).
Normalement non, à ma connaissance. FIN annonce la fin de la connexion, et PSH et URG ne sont normalement utilisés que si le segment contient des données. Mais je ne suis pas sûr à 100% qu'un paquet FIN ne peut pas contenir de données. Ceci dit FIN implique PUSH, donc il ne devrait pas y avoir de PSH avec FIN.
Merci pour cette précision. Je savais que FIN voulait dire fin de connexion pour
le reste je ne connais pas les séquences autorisées pour tcp, je connais juste
le syn, syn-ack, ack pour le début de la connexion.
Hors ligne
On peut supprimer les logs en supprimant « limit rate 2/seconds burst 3 packets log prefix "* " »
des règles 3, 4 et 5 de la chaîne input.
On ne pourra pas pinger le serveur depuis l'extérieur.
Edit : J'ai rajouté quelques messages icmpv6 pour être cohérent.
En effet le fait d'avoir mis :
ne concerne que l'icmp de l'ivp4. Donc il fallait autoriser aussi ces messages
pour ipv6.
Dernière modification par enicar (12-08-2019 01:18:56)
Hors ligne
On peu mettre une règle ipv6 dans la table ?
Oui car on a utilisé inet comme famille dans le code :
Ça correspond à « ip + ip6 », c'est pratique ça permet de faire des règles pour
ipv4 et ipv6 d'un seul coup.
Mais pour certaines règles on peut dire si c'est pour de l'ipv4 (avec ip) ou de l'ipv6
(avec ip6).
Hors ligne
Bon pour résumer je propose les règles suivantes :
#! /usr/sbin/nft -f
flush ruleset
table inet filter {
chain input {
type filter hook input priority 0; policy drop;
iif lo accept
ct state invalid drop
ct state new,related tcp flags & (fin|syn|rst|psh|ack|urg) != syn limit rate 2/second burst 3 packets log prefix "TCP INPUT without SYN " drop
tcp flags & (fin|syn|rst|psh|ack|urg) eq 0 limit rate 2/seconds burst 3 packets log prefix "INPUT_NULL " drop
tcp flags & (fin|psh|urg) eq (fin|psh|urg) limit rate 2/seconds burst 3 packets log prefix "INPUT_XMASS " drop
ct state related,established accept
ct state new tcp dport {ssh, https, 22317} accept
icmp type { destination-unreachable, time-exceeded, parameter-problem } accept
icmpv6 type { destination-unreachable, time-exceeded, parameter-problem } accept
ip6 nexthdr icmpv6 icmpv6 type { nd-neighbor-solicit, nd-router-advert, nd-neighbor-advert } accept
}
chain forward {
type filter hook forward priority 0; policy drop;
}
chain output {
type filter hook output priority 0; policy accept;
}
}
j'ai désinstallé iptables comme recommandé et j'ai utilisé cette config. ça fonctionne
merci à tous pour votre aide !
Hors ligne
j'ai désinstallé iptables comme recommandé et j'ai utilisé cette config. ça fonctionne
Super, merci pour le retour.
Hors ligne