N'utilisant que peu souvent Samba sur mon laptop je pense que les régles Iptables ne sont nécessaires que lorsque l'on active le service. J'ai donc fait un petit script qui créée les régles iptables et les enléve lorsque l'on stoppe le service samba.
Voici le script :

#!/bin/bash
case "$1" in
start)
echo `/etc/init.d/samba start` &&
iptables -t filter -A INPUT -p tcp --dport 135 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 135 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 137 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 137 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 138 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 139 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 445 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 445 -j ACCEPT
echo "Iptables rules OK"
;;
stop)
echo `/etc/init.d/samba stop` &&
nb=$(iptables -L --line-numbers|grep "tcp dpt:epmap"|cut -d" " -f1)
iptables -D INPUT $nb
nb=$(iptables -L --line-numbers|grep "udp dpt:epmap"|cut -d" " -f1)
iptables -D INPUT $nb
nb=$(iptables -L --line-numbers|grep "udp dpt:netbios-ns"|cut -d" " -f1)
iptables -D INPUT $nb
nb=$(iptables -L --line-numbers|grep "tcp dpt:netbios-ns"|cut -d" " -f1)
iptables -D INPUT $nb
nb=$(iptables -L --line-numbers|grep "udp dpt:netbios-dgm"|cut -d" " -f1)
iptables -D INPUT $nb
nb=$(iptables -L --line-numbers|grep "tcp dpt:netbios-ssn"|cut -d" " -f1)
iptables -D INPUT $nb
nb=$(iptables -L --line-numbers|grep "tcp dpt:microsoft-ds"|cut -d" " -f1)
iptables -D INPUT $nb
nb=$(iptables -L --line-numbers|grep "udp dpt:microsoft-ds"|cut -d" " -f1)
iptables -D INPUT $nb
echo "Iptables rules delete OK"
;;
*)
echo "Use: ./smb.sh start or ./smb.sh stop"
;;
esac
