Léa-Linux & amis :   LinuxFR   GCU-Squad   GNU
Samba Wins & iptables
Envoyé par: pupa

Bonjour,
je suis tout nouveau sur le forum, je viens du monde Mac, je bosse dans l'informatique (maintenance) et je m'interresse de plus en plus à Linux (professionellement).
Voilà pour les présentations, passons à mon problème :


j'ai créé un controleur de domaine avec Samba-3 (sous une distrib CentOS 4.2) ainsi qu'un serveur Wins, tout ça sur le mm ordi.
Tout fonctionne impeccable, aussi bien pour le PDC que pour le serveur Wins.
Sauf que depuis mon mac, je ne peux pas monter mon partage en utilisant le nom NetBIOS du serveur. Par contre avec son IP tout va bien.
Les requètes, du Mac vers le Linux, avec la commande "nmblookup" fonctionne très bien aussi.

En fait le problème viens du firewall de mon Linux, dès que je le désactive, ça marche.
Je suis allé voir le HOWTO sur le site officiel de Samba, et en effet il y a les ports 1024/65535 à ouvrir en OUTPUT, en plus des ports NetBIOS habituelle.

"When configuring a firewall, the high order ports (1024-65535) are often used for outgoing connections and therefore should be permitted through the firewall. It is prudent to block incoming packets on the high order ports except for established connections."

Et c'est là que je calle je ne connais pas très bien les syntaxes "iptables"
J'ai bien ouvert tous les ports NetBIOS (135, 137, 138, 139, 445 en udp et en tcp), apparemment les requètes Wins se font sur le port "udp 138" (analysé avec "ethereal").
Mais pour le reste des ports (1024/65535) je galère !!
Si quelqu'un à une idée je suis preneur.

La commande mount_smbfs (commande BSD) :
mount_smbfs -W DOMAINE //login:pass@IP-server/Partage /Chemin/Fichier/Montage

Une partie de mon firewall :
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.10 -i eth0 -m state --state NEW -m tcp -p tcp --dport 135 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.10 -i eth0 -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.10 -i eth0 -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.10 -i eth0 -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.10 -i eth0 -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT

J'ai aussi testé avec un poste client sous Windows (XP SP1), même problème !!

Merci d'avance.
David

Poste le Sunday 5 February 2006 16:08:33
Répondre     Citer    
Re: Samba Wins & iptables
Envoyé par: Patrick HARMEL

les ports 1024-65535 sont les ports dits "non privilégiés", et sont utilisés comme ports sources par les programmes clients.
Cela ne remets pas en cause ta config, qui vérifie les ports destinations.

As-tu une ligne du genre:
A RH-Firewall-1-OUTPUT -d 192.168.0.0/24 -s 192.168.0.10 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

Poste le Sunday 5 February 2006 19:28:30
Répondre     Citer    
Re: Samba Wins & iptables
Envoyé par: chromosome

C'est normal, en fait SMB fait un broadcast pour voir qui repond au doux de xxxx. Et donc sur ton lan tu devrais avoir des paquets en UDP vers l'adresse broadcast de ton LAN et sur le port 137.
Donc si ton LAN est en 192.168.0./24, tu devrais recevoir avoir dans ta regle en INPUT des DROP du genre

192.168.0.x > 192.168.0.255:137 UDP

Donc essaye d'ouvrir comme adresse de destination 192.168.0.255 (quoique je ne sais pas comment va reagir iptables avec ce genre d'adresse)

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.255 -i eth0 -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT

Ou alors si iptables refuse

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.0/24 -i eth0 -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT

Poste le Sunday 5 February 2006 23:39:23
Répondre     Citer    
Re: Samba Wins & iptables
Envoyé par: lolotux

Les ports à ouvrir pour ton LAN en udp sont : 135,137 à 139 et 445
Les ports à ouvrir pour ton LAN en tcp sont : 135,139 et 445

-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.0/24 -i eth0 -m state --state NEW -m udp -p udp --dport 135,137:139,445 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.0/24 -i eth0 -m state --state NEW -m tcp -p tcp --dport 135,139,445 -j ACCEPT

ouala

Software is like sex !
It's better when it's Free !

Poste le Monday 6 February 2006 07:54:14
Répondre     Citer    
Re: Samba Wins & iptables
Envoyé par: pupa

Citation
chromosome
C'est normal, en fait SMB fait un broadcast pour
voir qui repond au doux de xxxx.
Mon serveur Samba fait office de serveur Wins donc dans mon cas il n'y a pas de broadcast, les postes clients s'inscrivent sur le serveur et ils y sont bien répertoriés (correspondance nom netbios/adresse IP), j'ai vérifié.


Citation
lolotux
Les ports à ouvrir pour ton LAN en udp sont : 135,137 à 139 et 445
Les ports à ouvrir pour ton LAN en tcp sont : 135,139 et 445

Les ports à ouvrir sont :
If you are setting up a firewall, you need to know what TCP and UDP ports to allow and block. Samba uses the following:
Port 135/TCP - used by smbd
Port 137/UDP - used by nmbd
Port 138/UDP - used by nmbd
Port 139/TCP - used by smbd
Port 445/TCP - used by smbd

source "Samba Official HOWTO" sur le site Samba.org
De plus le fait de sparer les ports par une virgule ne fonctionne pas sur ma version d'IPTABLES


Citation
Patrick HARMEL
Les ports 1024-65535 sont les ports dits "non privilégiés", et sont utilisés comme ports sources par les programmes clients.
Cela ne remets pas en cause ta config, qui vérifie les ports destinations.

As-tu une ligne du genre:
A RH-Firewall-1-OUTPUT -d 192.168.0.0/24 -s 192.168.0.10 -o eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT

c'est ce que je pense aussi et j'ai déjà essayé avec pleins de syntaxes de ce genre, mais ça ne marche pas.
Je pense que ça viens du fait que je ne n'organise pas mes règles comme il le faudrait.
C'est là que je pêche avec "iptables" (J'ai surtout l'habitude de ipfw, firewall BSD, installé par défaut sur les Macs)
Voici l'intégralité de mon firewall (c'est la version installé par CentOS, complèté pour Samba) :

# Firewall configuration written by system-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type 8 -j REJECT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# OpenVPN
#-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 1194 -j ACCEPT
# Samba PDC et Samba Wins
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.10 -i eth0 -m state --state NEW -m tcp -p tcp --dport 135 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.10 -i eth0 -m state --state NEW -m udp -p udp --dport 137 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.10 -i eth0 -m state --state NEW -m udp -p udp --dport 138 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.10 -i eth0 -m state --state NEW -m tcp -p tcp --dport 139 -j ACCEPT
-A RH-Firewall-1-INPUT -s 192.168.0.0/24 -d 192.168.0.10 -i eth0 -m state --state NEW -m tcp -p tcp --dport 445 -j ACCEPT
# sshd
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT

Ou metterai tu la règle pour les ports 1024/65535 ?
thx

Poste le Monday 6 February 2006 22:22:46
Répondre     Citer    
Re: Samba Wins & iptables
Envoyé par: chromosome

Avant de tout ouvrir pourquoi ne pas mettre un simple LOG et voir ce que ton systeme DROP ?
De plus tu n'as aucune regle sur l'OUTPUT.

Place simplement un LOG (sur INPUT et OUTPUT) avant le REJECT, et regarde la cause de l'erreur.

-A RH-Firewall-1-INPUT --log-prefix "INPUT DROP:" -j LOG

Poste le Monday 6 February 2006 23:12:22
Répondre     Citer    
Re: Samba Wins & iptables
Envoyé par: lolotux

Citation
auteur
Advanced Configuration:
In order to prevent unnecessary trafic generated by attempts to break in or simple configuration-errors from other users of the Internet, some requests should be dropped by editing the file common.
# cd /etc/shorewall
# cp common.def common
edit 'common' and replace the REJECT to DROP for all Netbios-chatter
# shorewall restart

The NETBIOS chatter-part of the file /etc/shorewall/common should then look like this
...
#######################################################################
# NETBIOS chatter
#
run_iptables -A common -p udp --dport 135 -j reject
run_iptables -A common -p udp --dport 137:139 -j reject
run_iptables -A common -p udp --dport 445 -j reject
run_iptables -A common -p tcp --dport 139 -j reject
run_iptables -A common -p tcp --dport 445 -j reject
run_iptables -A common -p tcp --dport 135 -j reject
#######################################################################

Donc ma configuration de shorewall :
# Partage Linux-Windows
ACCEPT	loc	fw	udp	135,137:139,445	-
ACCEPT	loc	fw	tcp	135,139,445	-

où loc=local=eth0=192.168.1.0/24 et fw=firewall={192.168.1.1;82.67.59.XXX}
Et cela fonctionne !

Software is like sex !
It's better when it's Free !

Poste le Tuesday 7 February 2006 07:15:14
Répondre     Citer    

Veuillez vous authentifier auparavant pour commenter.

 

Ce forum !
Samba Wins & iptables
Un problème avec une commande du shell ? Comment utiliser la crontab ? Vous avez des soucis pour la gestion réseau sous Linux ? Pour vous la gestion des utilisateurs/groupes est du chinois ? Etc... Posez donc vos questions ici.

Sauf mention contraire, les documentations publiées sont sous licence Creative-Commons