Iptables / samba

bonsoir à toutes et tous !

Alors voilà mon probleme j’ai crée un serveur NAS avec 1*2 To en raid 0, puis j’ai appliqué des règles à iptables pour que personne ne puisse avoir accés aux serveurs nas sauf moi avec l’ip " 192.168.1.20".

Voici les règles que j’ai appliqué à iptables :

[code]#!/bin/sh

Infos

#chmod +x /etc/init.d/firewall
#update-rc.d firewall defaults

Vider les tabbles actuelles

iptables -F
iptables -X
echo - Vidage des tables [OK]

Interdire toute connexion entrante sortante

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP	
echo - Interdire toute connexion entrante sortante [OK]

Autoriser Loopback

iptables -t filter -A OUTPUT -o lo -s 127.0.0.1/0 -d 127.0.0.1/0 -j ACCEPT
iptables -t filter -A INPUT  -i lo -s 127.0.0.1/0 -d 127.0.0.1/0 -j ACCEPT
echo - Connexion local autoriser [OK]

Arthur Portable

iptables -t filter -A INPUT -p tcp --dport 135 -s 192.168.1.20 -j ACCEPT	
iptables -t filter -A INPUT -p udp --dport 137 -s 192.168.1.20 -j ACCEPT
iptables -t filter -A INPUT -p udp --dport 138 -s 192.168.1.20 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 139 -s 192.168.1.20 -j ACCEPT
iptables -t filter -A INPUT -p tcp --dport 445 -s 192.168.1.20 -j ACCEPT

echo - Régles portable arthur charger [OK]

Message de maj du firewall

echo - Firewall Mise à jour ![/code]

Comme vous pouvez le voir j’ai fermé tous les ports, puis j’ai ouvert ceux de samba pour le tranfert des fichers …

jusque la tout va bien, mais des que j’ai appliqué les règles suivantes je n’ai plus accés au serveur nas :

iptables -t filter -A OUTPUT -p tcp --dport 135 -s 192.168.1.21 -j ACCEPT iptables -t filter -A OUTPUT -p udp --dport 137 -s 192.168.1.21 -j ACCEPT iptables -t filter -A OUTPUT -p udp --dport 138 -s 192.168.1.21 -j ACCEPT iptables -t filter -A OUTPUT -p tcp --dport 139 -s 192.168.1.21 -j ACCEPT iptables -t filter -A OUTPUT -p tcp --dport 445 -s 192.168.1.21 -j ACCEPT
Je voudrais donc savoir ou je me suis trompé dans le parametrage des règles de sortie de samba svp .

Ps One: voici mon ip et l’ip du seveur nas .

Me ip : 192.168.1.20
Nas : 192.168.1.21

Ps Two: si vous vous demander pouqu’oi je filtre autant c’est parceque je suis hyper parano de là secu ^^, et surtout pas perdre 1To de taff --’

Merci par avance arthur :smiley:

iptables -t filter -A OUTPUT -p tcp --dport 135 -s 192.168.1.21 -j ACCEPT iptables -t filter -A OUTPUT -p udp --dport 137 -s 192.168.1.21 -j ACCEPT iptables -t filter -A OUTPUT -p udp --dport 138 -s 192.168.1.21 -j ACCEPT iptables -t filter -A OUTPUT -p tcp --dport 139 -s 192.168.1.21 -j ACCEPT iptables -t filter -A OUTPUT -p tcp --dport 445 -s 192.168.1.21 -j ACCEPT

Me ip : 192.168.1.20
Nas : 192.168.1.21
[/code]

Je remplacerais --dport par --sport et -s 192.168.1.21 par -d 192.168.1.20

Ps Two: si vous vous demander pouquoi je filtre autant c'est parceque je suis hyper parano de là secu ^_^, et surtout pas perdre 1To de taff -_-'

Je trouve pas ça parano personnellement tout le monde devrait filtrer en entré comme en sortie et pas seulement en entrée.

Une sécurité de plus si ce n’est pas fait : retire la passerelle dans ta config comme ça ton nas ne sera plus routable (comme j’imagine que tu ne vas pas sur le net avec, et que ton pc client et sur le même réseau local)…

:smt006 Lu, Merci de m’avoir répondu !

Alors j’ai tester ceci:

	iptables -t filter -A OUTPUT -p tcp --sport 135 -d 192.168.1.20 -j ACCEPT	
	iptables -t filter -A OUTPUT -p udp --sport 137 -d 192.168.1.20 -j ACCEPT
	iptables -t filter -A OUTPUT -p udp --sport 138 -d 192.168.1.20 -j ACCEPT
	iptables -t filter -A OUTPUT -p tcp --sport 139 -d 192.168.1.20 -j ACCEPT
	iptables -t filter -A OUTPUT -p tcp --sport 445 -d 192.168.1.20 -j ACCEPT

Sa n’a pas marcher le serveur communiquer plus. Puis j’ai tester ceci:

	iptables -t filter -A OUTPUT -p tcp --sport 135 -s 192.168.1.21 -d 192.168.1.20 -j ACCEPT	
	iptables -t filter -A OUTPUT -p udp --sport 137 -s 192.168.1.21 -d 192.168.1.20 -j ACCEPT
	iptables -t filter -A OUTPUT -p udp --sport 138 -s 192.168.1.21 -d 192.168.1.20 -j ACCEPT
	iptables -t filter -A OUTPUT -p tcp --sport 139 -s 192.168.1.21 -d 192.168.1.20 -j ACCEPT
	iptables -t filter -A OUTPUT -p tcp --sport 445 -s 192.168.1.21 -d 192.168.1.20 -j ACCEPT

Sa n’a pas marche non plus le serveur communiquer plus aussi. Puis j’ai fait sa qui à marcher mais je filtre pas les ip des machine ce qui et pas top :frowning:

	iptables -t filter -A OUTPUT -p tcp --sport 135 -j ACCEPT	
	iptables -t filter -A OUTPUT -p udp --sport 137 -j ACCEPT
	iptables -t filter -A OUTPUT -p udp --sport 138 -j ACCEPT
	iptables -t filter -A OUTPUT -p tcp --sport 139 -j ACCEPT
	iptables -t filter -A OUTPUT -p tcp --sport 445 -j ACCEPT

au cas où tu n’aurais pas trouvé la solution à ton problème avec les régles iptables, tu peux toujours mettre les restrictions que tu veux en ajoutant les directives qui vont bien dans le fichier de configuration de samba (smb.conf) en attendant :

hosts allow = 192.168.1.20
#pour autoriser ta machine cliente

hosts deny = ALL

pour interdire l’accès à tout le monde sauf à ta machine autorisée par la directive hosts allow

ps : pense à relancer ton serveur samba pour qu’il prenne en compte les modifications

bon alors j’ai fait comme sa , marre de prendre la tête :

	iptables -t filter -A INPUT -i eth1 -p tcp --dport 135 -s 192.168.1.0/24 -j ACCEPT	
	iptables -t filter -A INPUT -i eth1 -p udp --dport 137 -s 192.168.1.0/24 -j ACCEPT
	iptables -t filter -A INPUT -i eth1 -p udp --dport 138 -s 192.168.1.0/24 -j ACCEPT
	iptables -t filter -A INPUT -i eth1 -p tcp --dport 139 -s 192.168.1.0/24 -j ACCEPT
	iptables -t filter -A INPUT -i eth1 -p tcp --dport 445 -s 192.168.1.0/24 -j ACCEPT

	iptables -t filter -A OUTPUT -o eth1 -p tcp --sport 135 -d 192.168.1.0/24 -j ACCEPT	
	iptables -t filter -A OUTPUT -o eth1 -p udp --sport 137 -d 192.168.1.0/24 -j ACCEPT
	iptables -t filter -A OUTPUT -o eth1 -p udp --sport 138 -d 192.168.1.0/24 -j ACCEPT
	iptables -t filter -A OUTPUT -o eth1 -p tcp --sport 139 -d 192.168.1.0/24 -j ACCEPT
	iptables -t filter -A OUTPUT -o eth1 -p tcp --sport 445 -d 192.168.1.0/24 -j ACCEPT

Comme sa toutes les machines qui sont sur mon réseau local (192.168.1.X) sont relie au serveur et peut ce loger, puis je filtre les ip que je veux avec samba :slightly_smiling:. Ex : 192.168.1.20 …

Qu’an pense tu?

avec ces régles et l’affinement des autorisations/restrictions dans la configuration du serveur samba ça me parait bien, si tu veux une sécurité très simple et efficace en plus tu peux commenter la ligne gateway dans ton /etc/network/interfaces comme je t’avais dis : ça ne changera absolument rien pour les clients sur ton réseau local, ça rendra juste non joignable ton serveur sur les autres réseaux (dont internet)

re,

Bon alors suis aller voir dans /etv/network/interfaces et j’ai pas de gateway :/.

Sinon j’ai une question qui à rien avoir , en fait le serveur c’est éteint hier mais je c’est pas pk °_° ya t’il un moyen de le savoir ou pas stp?

Suis aller voir dans auth.log pour voir si je suis pas fait hack :confused: et depuis un petit moment tout les jours @ 6 heures 25 minutes et 03 secondes un truc ceux log en root .

Mais rien marker pour me dire quelle truc ceux log en root :frowning: