Mes impressions sur le web, les standards et autres…


Apt-Proxy et limitation d’accès

Je m’occupe d’une dizaine de serveurs, tous sur debian etch. J’ai décidé d’installer apt-proxy sur l’un d’eux pour rendre plus rapide les mises à jours (les serveurs sont dans la même baie). Ne serait-ce que par principe, ça m’évite également de surcharger inutilement les serveurs debian.

J’ai souhaité limiter l’accès au serveur proxy aux serveurs concernés, tous possédant une IP dans un sous-réseau logique. Je me suis donc tourné vers Netfilter. J’ai créé deux scripts, if-pre-up.sh et if-post-down.sh, que j’ai placés dans /etc/apt-proxy/. Voilà d’abord le script if-pre-up.sh :

#!/bin/sh -e
# Written by bobe

if [ ! "$IFACE" = "eth0" ]; then
        exit 0
fi

iptables -N aptProxy
iptables -A INPUT -i eth0 -p tcp --dport 9999 -j aptProxy
iptables -A aptProxy -s xxx.xxx.xxx.xxx/28 -j ACCEPT
iptables -A aptProxy -j DROP
exit 0

Et le script if-post-down.sh :

#!/bin/sh -e
# Written by bobe

if [ ! "$IFACE" = "eth0" ]; then
        exit 0
fi

iptables -D INPUT -i eth0 -p tcp --dport 9999 -j aptProxy
iptables -F aptProxy
iptables -X aptProxy
exit 0

Il suffit ensuite de donner les droits d’exécution et de créer les liens nécessaires dans /etc/network/ :

# chmod a+x if-pre-up.sh if-post-down.sh
# ln -s /etc/apt-proxy/if-pre-up.sh /etc/network/if-pre-up.d/apt-proxy
# ln -s /etc/apt-proxy/if-post-down.sh /etc/network/if-post-down.d/apt-proxy

Ce billet est aussi l’occasion de ranimer un peu ce blog mourant. Je vais essayer de m’en occuper plus souvent désormais ;-)