Sécurité : Linux : ajouter des commentaires aux règles iptables
Lorsqu'on visualise les règles iptables depuis un terminal, il n'est pas toujours facile de se souvenir de leur signification. Heureusement, un module permet de pouvoir y ajouter des commentaires.
Il s'agit du module comment.
Son intérêt est multiple : se rappeler à quoi correspond une IP ou un bloc d'IP que l'on a blacklisté il y a 6 mois, indiquer la date et/ou l'heure de l'ajout d'une règle ou, pour un débutant sous Linux, une simple explication de la règle en question.
Pour connaitre son fonctionnement, il suffit de taper :
# iptables -m comment --help
COMMENT match options:
--comment COMMENT Attach a comment to a rule
Difficile de faire plus simple. Un petit coup d'oeil tout de même dans le code source nous révèle que la chaîne de commentaire ne doit pas excéder 256 caractères (xt_comment.h) :
#define XT_MAX_COMMENT_LEN 256
Exemple d'utilisation :
# accepte loopback :
iptables A INPUT -i lo -j ACCEPT -m comment --comment "Accepte loopback"
# rejet des bots de whois.sc/domaintools.com :
iptables -A INPUT -s 64.246.160.0/19 -j DROP -m comment --comment "bot whois.sc"
iptables -A INPUT -s 66.249.16.0/23 -j DROP -m comment --comment "bot domaintools #1"
iptables -A INPUT -s 216.145.0.0/19 -j DROP -m comment --comment "bot domaintools #2"
# rejet des bots Nexen (PHP tracker) :
iptables -A INPUT -s 88.163.156.141 -j DROP -m comment --comment "bot nexen #1"
iptables -A INPUT -s 217.174.223.0/24 -j DROP -m comment --comment "bot nexen #2"
# rejet des bots Netcraft :
iptables -A INPUT -s 83.138.189.96/29 -j DROP -m comment --comment "bot netcraft #1"
iptables -A INPUT -s 194.72.238.0/24 -j DROP -m comment --comment "bot netcraft #2"
# spammer taïwanais cherchant des open-replay SMTP :
iptables -A INPUT -s 118.165.0.1/16 -p tcp --dport 25 -j DROP -m comment \
--comment "spam dynamic.hinet"
# rejet d'une IP (spam referer) + marquage de la date/heure :
iptables -A INPUT -s 66.34.204.26 -j DROP -m comment \
--comment "keywordspy.com - 15/05 @ 17:53"
Visualisation de l'ensemble depuis le terminal :
# iptables -L INPUT -nvx
Chain INPUT (policy ACCEPT 1 packets, 328 bytes)
target in out source destination
ACCEPT lo * 0.0.0.0/0 0.0.0.0/0 /* Accepte loopback */
DROP * * 64.246.160.0/19 0.0.0.0/0 /* bot whois.sc */
DROP * * 66.249.16.0/23 0.0.0.0/0 /* bot domaintools #1 */
DROP * * 216.145.0.0/19 0.0.0.0/0 /* bot domaintools #2 */
DROP * * 88.163.156.141 0.0.0.0/0 /* bot nexen #1 */
DROP * * 217.174.223.0/24 0.0.0.0/0 /* bot nexen #2 */
DROP * * 83.138.189.96/29 0.0.0.0/0 /* bot netcraft #1 */
DROP * * 194.72.238.0/24 0.0.0.0/0 /* bot netcraft #2 */
DROP * * 118.165.0.0/16 0.0.0.0/0 tcp dpt:25 /* spam dynamic.hinet */
DROP * * 66.34.204.26 0.0.0.0/0 /* keywordspy.com - 15/05 @ 17:53 */