Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Samba 1

Télécharger au format ppt, pdf ou txt
Télécharger au format ppt, pdf ou txt
Vous êtes sur la page 1sur 39

PLAN

HISTORIQUE Cest quoi SAMBA ? Le fonctionnement de SAMBA Le protocole SMB Le rseau SAMBA avec la rfrence du rseau OSI Le NetBios Installation de SAMBA La configuration du fichier smb.conf Les utilisateurs Configuration en mode graphique (SWAT) Rsultat de notre teste

HISTORIQUE
Samba a t cr par Andrew Tridgell

En 1991, Andrew dveloppe un programme de gestion


de fichiers bas sur SMB (Server Message Block) implment par Microsoft et IBM la premire version de son serveur SMB, baptis "SMBserver qu il dut pour des raisons juridiques renomm en SAMBA. Aujourd'hui, SAMBA est maintenu par la "SAMBA TEAM" compos d'une vingtaine de personnes. SAMBA TEAM

C est quoi SAMBA ?


Dans un environnement rseau, le partage de fichiers entre diffrentes machines est un lment essentiel. Sous Linux, le partage de fichiers peut tre mis en uvre grce SAMBA ,NFS et AppleTalk SAMBA permet un partage entre machines Linux/Unix et machines Windows. Samba est un ensemble de fichiers sous licence GNU GPL pour Linux qui comprend un serveur, un client et une suite d utilitaires pour les tests de connexions, et la gestion des utilisateurs.

Fonctionnalits de Samba
Samba offre les fonctionnalits suivantes : le partage de fichiers le partage d'imprimantes le support de NetBIOS la gestion de domaines de nombreux outils en ligne de commande

LE PROTOCOLE SMB (SERVER MESSAGE BLOCK)


SMB est un protocole orient connexion, ce qui signifie que tous les paquets SMB sont gnrs dans un contexte de circuit virtuel entre le client et le serveur, et achemins selon l'ordre d'expdition. En cas de rupture du circuit, toutes les informations qu'il vhicule sont endommages. SMB fonctionne en architecture client / serveur. En clair, le client (esclave) demande et le serveur (matre) renvoi une rponse. Il est important de savoir qu'une machine peut-tre, la fois, cliente et serveur.

Vue du rseau SMB compar au modle de rfrence de rseau OSI


OSI 7 6 5 4 3 2
Application Prsentation SMB Session NetBIOS sur IPX NetBIOS sur TCP/IP Transport Rseau Liaison de donne

SMB

SAMBA
Applications

Physique

Gestion du priphrique propre l'OS

NetBEUI

Architecture de Samba
Samba est constitu principalement d'un serveur et d'un client, ainsi que de quelques outils permettant de tester la configuration. Le serveur est constitu de deux dmons(Programme chargs en mmoires):
Le dmon smbd est un noyau du serveur fournissant les services d'authentification et d'accs aux ressources. Le demon nmbd permet de montrer les services offerts par Samba (affichage des serveurs Samba dans le voisinage rseau, ...)

le client smbclient est un client pour linux fournissant une interface permettant de transfrer des fichiers, accder des imprimantes . testparm vrifiant la syntaxe du fichier smb.conf, le fichier de configuration de Samba

NetBIOS
Permet d identifier les lments du rseau (et donc permet le partage de fichiers, imprimantes, ) Equivalent au DNS pour Internet Ce n est pas un protocole au sens OSI, c est une mthode pour nommer des machines Tous les rseaux Microsoft sont bass dessus Permet de nommer des machines, des groupes de travail, des Domaines de faire fonctionner le voisinage rseau Un nom NetBIOS a 15 caractres maximum +1 -Ce peut tre le nom de la machine Windows (accessible via le voisinage rseau) -Ou le nom du groupe de travail Le 16me caractre indique dans quel cas on est et aussi la fonction de la machine (standard ou contrleur)

Installation :
Pour vrifier si le(s) paquetage(s) est (sont) install(s) il faut procder comme suit :
Rpm e sambaclient Rpm e samba Rpm e sambacommon

Installation et configuration d un serveur SAMBA sous linux

INSTALLATION :
Aprs que Samba soit install demarrons le serveur Dans la console tapez: /etc/rc.d/init.d/smb start Si tout fonctionne correctement vous devriez avoir cela:

10

Installation et configuration d un serveur SAMBA sous linux

INSTALLATION :
Pour vrifier l tat du serveur tapez : /etc/rc.d/init.d/smb status Cette commande permet de vrifier si les deux dmons (nmbd et smbd) Sont en cours d excution ou pas

Pour redemarrer samba : /etc/rc.d/init.d/smb restart


11

Installation et configuration d un serveur SAMBA sous linux

AUTOMATISATION

DE

SAMBA

Il existe plusieurs faons d'automatiser le lancement de samba au demarrage. Dans notre cas, nous allons crer un script de demarrage(habituellement situ dans /etc/rc.d/rc.local) en ajoutant ces les lignes: if [ -x /usr/local/Samba/bin/smbd]; then /usr/local/Samba/bin/smbd D /usr/local/Samba/bin/nmbd D Fi Ce script permet de lancer automatiquement les deux demons (smbd et nmbd) au demarrage.
12

Installation et configuration d un serveur SAMBA sous linux

AUTOMATISATION

DE

SAMBA

Il est possible galement de lancer ce script au dmarrage de l'ordinateur pour viter de le lancer manuellement chaque fois : [root@host] /# chkconfig --add smb [root@host] /# chkconfig --level 345 smb (on/off)

13

Installation et configuration d un serveur SAMBA sous linux

LE FICHIER SMB.CONF
C'est le fichier de configuration principal de Samba, il est situ dans /etc/samba.

Tout d'abord, avant de modifier ce fichier, il vaut mieux en conserver une version de base en cas d'erreur : cp /etc/samba/smb.conf /etc/samba/smb.conf.old Le fichier smb.conf est constitu de plusieurs sections : [global], [home], [printers] et de sections personnalises. Les lignes prcdes de # sont des lignes de commentaires. La section [global] dfinit les paramtres gnraux de samba. La section [homes] dfinit le partage du rpertoire personnel de chaque utilisateur. La section [printers] dfinit les imprimantes partages par le serveur.

14

Installation et configuration d un serveur SAMBA sous linux

Variable

LES VARIABLES DE SAMBA : Dfinition


%a %I %m %M Architecture du client Exemple: Win95, WfWg, WinNT, Samba ... Adresse IP du client Nom NetBios du client Nom DNS du client

Variables du client

Variables utilisateur %g %H %u Groupe primaire de l'utilisateur %u Rpertoire home de l'utilisateur %u Nom de l'utilisateur unix courant

Variables de partage %P %S Racine du partage actuel Nom du partage actuel

Variables du serveur %h %L %v Variables diverses %T La date et l'heure courantes Nom DNS du serveur Samba Nom NetBios du serveur Samba Version de Samba

15

Installation et configuration d un serveur SAMBA sous linux

LE FICHIER SMB.CONF [SECTION GLOBAL]


Voyons maintenant les paramtres suivants:

Section [global]
netbios name: Vous pouvez spcifier le nom netbios de votre serveur samba. Le nom netbios est visible dans le voisinage rseau de vos ordinateurs sous windows. Si vous ne spcifiez pas de nom netbios, le serveur linux prendra comme nom netbios son nom rseau. invalid users: Liste des utilisateurs interdits d'accs Samba. Par exemple "root" devrait tre interdit. interfaces: Si votre serveur linux dispose de plusieurs cartes rseaux et que vous vouliez restreindre son activit un seul rseau. security: Choix du mode de scurit que vous voulez utiliser. Si on utilise security=user a oblige que chaque utilisateur ait un compte sur le serveur GNU/Linux. Si vous voulez lancer un samba qui ne gre pas les utilisateurs et qui ne partage que des ressources identiques pour tout le monde, vous pourrez utiliser security=share. workgroup: Nom du groupe de travail dont votre serveur linux doit faire partie. server string: Description de votre serveur linux. encrypt passwords: Il Faut utiliser les mots de passe encrypts Il est important de savoir que tous les windows (ou presque) 16 utilisent un systme diffrent !

Installation et configuration d un serveur SAMBA sous linux

LE FICHIER SMB.CONF [SECTION GLOBAL]


domain master: Active samba comme serveur matre du domaine local master: Active samba comme serveur matre local preferred master: Samba doit-il tre "prfr" tout autre serveur s'il y en a ? logon path: Ou se trouvent les fichiers script de dmarrage ? name resolve order: Dans quel ordre on fait appel aux ressources pour trouver le nom d'une machine du rseau ? dns proxy: Le serveur samba doit-il faire galement office de proxy DNS ? unix password sync: Faut-il syncroniser les mots de passe unix et windows ? passwd program: Quel programme lancer pour changer le mot de passe. passwd chat: Quel est le "protocole" de discussion pour changer le mot de passe. max log size: Taille maximum du fichier de log.

17

Installation et configuration d un serveur SAMBA sous linux

LE FICHIER SMB.CONF [SECTION GLOBAL] EXEMPLE DE


CONFIGURATION

[global]
# nom du groupe de travail ou du domaine identique celui sous Windows workgroup = nomgroupe # description de la machine server string = monserveur # nom Netbios de la machine netbios name = monserveur # compte sur lequel seront connects les invits si ils sont autoriss se connecter # le compte ne doit donc pas possder beaucoup de droits comme le compte nobody guest account = nobody # Adresse IP et masque de sous-rseau de l'interface qui servira tablir la liaison entre SAMBA et les stations clientes interfaces = 100.29.36.246/255.255.254.0 # emplacement du fichier printcap contenant toutes les imprimantes installes sur le serveur Linuxprintcap = /etc/printcap 18

Installation et configuration d un serveur SAMBA sous linux

LE FICHIER SMB.CONF [SECTION GLOBAL] EXEMPLE DE


CONFIGURATION
# partage toutes les imprimantes dfinies dans printcap load printers = yes # emplacement et identification du fichier journal de Samba pour chaque machine qui se connecte log file = /var/log/samba/log.%m # mode de scurit : (user / share / server) #user : les utilisateurs doivent obligatoirement possder un compte sur le serveur #share : tout le monde est connect sous le mme mot de passe #server : samba relais la vrification du login et du mot de passe un autre serveur security = user # liste des sous-rseaux autoriss se connecter hosts allow = 100.29.36. 127 #ou la liste des sous-rseaux autoriss se connecter en excluant une machine #hosts allow = 100.29.36. EXCEPT 100.29.36.6 # liste des machines non autorises se connecte #en mettant ALL, on empche l'accs toutes les machines sauf celles spcifies dans hosts allowhosts deny = ALL 19

Installation et configuration d un serveur SAMBA sous linux

LE FICHIER SMB.CONF [SECTION HOME] EXEMPLE DE


CONFIGURATION

[homes]
# commentaire apparaissant dans les Favoris Rseau comment = repertoire utilisateur # le seul utilisateur valide est le propritaire du rpertoire valid users = %S # affichage de la ressource pour tous browseable = no read only = no # les invits ne sont pas autoriss se connecter au rpertoire home guest ok = no # ressource accessible en criture writable = yes create mask = 0750 #Il n'est pas ncessaire de prciser le path pour la section home car c'est celui de l'utilisateur : /home/%u. 20

Installation et configuration d un serveur SAMBA sous linux

LE FICHIER SMB.CONF [SECTION PRINTERS] EXEMPLE DE


CONFIGURATION

[printers]
la section [printers] dfinit les imprimantes partages sur le serveur. Principaux paramtres : Comment : ajoute un commentaire Path :chemin d accs pour accder a l imprimante Create mask : crer un masque de permission Browseable : l imprimante est visible depuis un browser Exemple: [printers] comment = All Printers path = /var/spool/sambacreate mask = 0700 guest ok = Yes printable = Yes browseable = Yes

21

Installation et configuration d un serveur SAMBA sous linux

LE FICHIER SMB.CONF [PARTAGER UN FICHIER QUELCONQUE ]


En plus de ces 3 grandes section, il est possible de partager un repertoire quelconque en crant une section ayant un nom que l'on veut donner la ressource. Voici les options utilises pour la configuration de la section: path : chemin d'accs du partage comment : commentaire browseable : rend le partage visible lors du parcours du rseau read only : accs uniquement en lecture user : Permet de spcifier les utilisateurs autoriss a se connecter la ressource public :permet de rendre accessible ou inacessible le partage a tout le monde Exemple de partage d un repertoire : [cours] comment = cours # chemin d'acces a la ressource path = /home/cours browseable = yes public = yes user = user1 writable = yes create mask = 0750

22

Installation et configuration d un serveur SAMBA sous linux

TEST DU FICHIER SMB.CONF


la commande testparm permet de verifier la syntaxe du fichier smb.conf. Il ne verifie en aucun cas le bon fonctionnement du fichier, il ne verifie que la syntaxe. Si testparm ne renvoie aucune erreur alors la syntaxe est correcte.

23

Installation et configuration d un serveur SAMBA sous linux

AFFICHER LES MACHINES DU RSEAUX


La commande Findsmb permet de lister les diffrents ordinateurs visible depuis le rseaux.

24

Installation et configuration d un serveur SAMBA sous linux

LES UTILISATEURS
Pour que notre serveur soit accessible depuis un poste client, il va falloir crer des comptes clients. Ces comptes et leurs mots de passes sont stocks dans le fichier crypt de Samba : /etc/smbpasswd. /etc/smbpasswd contient l'UID de l'utilisateur Linux et le hash du mot de passe de cet utilisateur autoris se connecter notre serveur. Premirement, pour crer un compte Samba, il faut que l'utilisateur ait un compte valide sur notre systme d exploitation Linux (dans le fichier /etc/passwd). [root@host] /# useradd smbclient [root@host] /# passwd smbclient Changing password for user smbclient New UNIX password: Retype new UNIX password: passwd: all authentication tokens updated successfully Une fois nos utilisateurs ajouts /etc/passwd, nous pouvons gnrer notre /etc/smbpasswd : 25 [root@host] /# cat /etc/passwd | mkdir smbpasswd.sh > /etc/smbpasswd

Installation et configuration d un serveur SAMBA sous linux

LES UTILISATEURS (SUITE)


Enfin, nous allons pouvoir crer notre compte Samba pour notre utilisateur smbclient : [root@host] /# smbpasswd -a smbclient New SMB password: Retype new SMB password: Added user smbclient. Password changed for user smbclient.

Dernire tape, ne pas oublier de protger notre fichier /etc/smbpasswd en le rendant accessible en lecture et criture uniquement pour le root : [root@host] /# chmod 600 /etc/smbpasswd
26

Installation et configuration d un serveur SAMBA sous linux

LE CLIENT LINUX
Il existe deux possibilits de se connecter un partage Samba partir d'un poste Linux. Le client smbclient. Le montage du rpertoire avec la commande mount.

27

Installation et configuration d un serveur SAMBA sous linux

LE CLIENT LINUX SMBCLIENT


Le client de samba (Smbclient) permet d'acceder differentes ressources sur le rseau. Pour connaitre les partages disponibles sur le rseau une adresse tapez: smbclient -L adressip La commande smbclient \\\\nom_de_lordinateur//partage permet d'acceder au partage de la machine. Un mot de passe est toujours demand lors de la connexion a un partage. Si le partage est configur pour etre plublic alors tapez ce ke vous voulez dans la zone password. Exp : Accder a une imprimante: smbclient \\\\serveur_samba//imprimante -P

28

Installation et configuration d un serveur SAMBA sous linux

LE CLIENT LINUX SMBCLIENT


Voir les partages d'un serveur : [smbclient@host] /% smbclient -L mon_serveur -U login Tlcharger un fichier sur le partage d'un serveur : [smbclient@host] /% smbclient //mon_serveur/mon_partage -U login smb: \> ls smb: \> cd mon_repertoire_distant smb: \> lcd mon_repertoire_local smb: \> get myFile.txt smb: \> quit Uploader un fichier sur le partage d'un serveur : [smbclient@host] /% smbclient //mon_serveur/mon_partage -U login smb: \> ls smb: \> cd mon_repertoire_distant smb: \> lcd mon_repertoire_local smb: \> put myFile.txt smb: \> quit Imprimer un fichier PostScript en utilisant l'imprimante partage d'un serveur [smbclient@host] /% smbclient //mon_serveur/mon_imprimante -U login smb: \> print fichier2.ps smb: \> quit 29

Installation et configuration d un serveur SAMBA sous linux

LE CLIENT LINUX MOUNT


Pour monter le rpertoire Samba dans notre arborescence, nous allons utiliser la commande suivante en root : [root@host] /# mount -t smbfs //mon_serveur/mon_partage /mnt/tmp -o username=login Pour librer la ressource une fois nos oprations termines : [root@host] /# umount /mnt/test Il est galement possible de configurer le montage du rpertoire dans l'automount du systme pour que celui soit charg automatiquement chaque dmarrage. Plus d'informations sur la commande mount et le client smbclient sont disponibles dans les man : man mount man smbclient

30

Installation et configuration d un serveur SAMBA sous linux

LE CLIENT SAMBA SOUS WINDOWS


Samba ne permet d'accder la station Windows qu' travers le protocole TCP/IP. Il a besoin aussi du protocole NETBIOS . Sur chaque machine cliente, il faut tout d'abord ajouter TCP/IP et NETBIOS si ces protocoles sont absents. Bien vrifier que NetBios est activ avec TCP/IP (connexion au rseau local/Proprits TCP/IP, avanc/onglet WINS). Ensuite il suffit juste de taper l'adresse ou le nom de l'ordinateur dans l'explorateur windows pour y acceder a cet ordinateur.

Vous allez pouvoir vrifier maintenant que les ressources sont accessible depuis le voisinage rseau sur les PCs Windows .
31

LE SWAT

Installation et configuration d un serveur SAMBA sous linux

Nous avons vu qu'est ce qu'un serveur Samba et comment le configurer dans les dtails en ditant les fichiers de configuration via les lignes de commandes. Il existe toutefois des outils graphiques permettant de configurer l aide d assistant les principaux paramtres d un serveur samba, ce qui simplifie la tche pour ceux ne souhaitant pas rentrer dans les lignes de commandes. Vi /etc/xinetd.d/swat Le fichier swat

32

La commande net view sous Dos

Installation et configuration d un serveur SAMBA sous linux

MERCI
38

SWAT

Vous aimerez peut-être aussi