Partage de fichiers avec Samba


Samba est un logiciel libre permettant de partager entre autres des fichiers entre plusieurs postes. Il est donc possible depuis un client Unix d'accéder aux ressources d'un poste Windows, ou simplement d'un autre poste Unix.

Dans cet exemple, nous allons voir comment créer un serveur Samba sur Debian Lenny et y accéder depuis une autre Debian Lenny.

Installation des paquets :


Tout d'abord, nous allons installer les paquets nécessaires à la mise en place d'un serveur Samba :
# aptitude install samba samba-common
Lors de l'installation, il est nécessaire de choisir un groupe de travail. Vous pouvez laisser WORKGROUP, ainsi le serveur se trouvera dans le même groupe que les éventuelles machines Windows du réseau.


Configuration du serveur :


Toujours sur le serveur, nous allons réaliser un certain nombre d'opérations dans le but de configurer le plus simplement possible un serveur Samba. Toutes les manipulations concernant cette partie du guide sont à réaliser avec les droits root.

Création d'un compte utilisateur pour samba :
# useradd utilisateur1 (remplacez utilisateur1 par le nom de votre choix)
Attribution d'un mot de passe à cet utilisateur :
# smbpasswd -a utilisateur1
N'oubliez pas ces informations. Elles vous seront demandées à chaque connexion au serveur.

Ensuite, il faut éditer le fichier smb.conf situé dans le dossier /etc/samba/. Pour ce faire, n'importe quel éditeur de texte peut faire l'affaire (nano, kate, gedit, kwrite, ...).

Pour commencer, éditons deux lignes de la section [global] de cette manière :
[global]

workgroup = Domaine (par exemple WORKGROUP)
netbios name = Serveur007 (nom de l'ordinateur ou ce que vous voulez)

Et pour finir, à la fin de ce fichier, nous allons rajouter une section concernant les dossiers de partage :
[DOSSIER]

path=/chemin/dossier_partagé/
browseable=yes
writeable=yes
valid users = utilisateur1
admin users = utilisateur1

Il ne reste plus qu'à relancer les services Samba et le tour est joué :
# /etc/init.d/samba restart

Connexion à partir d'un client :


Le serveur étant configuré et prêt à l'emploi, il ne reste plus qu'à profiter du partage depuis un poste client :

Vérification de l'existence du serveur :
$ smbclient -L //serveur007 -U utilisateur1
Enter utilisateur1's password: (Indiquez le mot de passe attribué plus haut à l'utilisateur1)
Si tout va bien, vous obtenez ainsi diverses informations concernant le serveur. Tout est OK, nous pouvons donc nous connecter au serveur :
$ smbclient //serveur007/chemin/dossier_partagé/ -U utilisateur1
Enter utilisateur1's password:
Domain=[SERVEUR007] OS=[Unix] Server=[Samba 3.2.5]
smb: \>
Vous êtes désormais connecté au serveur !

Accéder aux ressources distantes en mode graphique avec par exemple Konqueror est également une solution :
Barre url konqueror samba


Ce guide est une approche très simple de Samba, cela dit une configuration ainsi qu'une sécurisation en profondeur de celui-ci s'avèrent bien plus complexes. Ce fichier .doc vous permettra de sécuriser au mieux vos échanges.