09 01 configuration du serveur samba

Embed Size (px)

DESCRIPTION

préparation à la certification LPIC2 version 3.5 en français Chapitre : Topic 209 : Partage de fichiers Configuration de Samba et NFS Partie 1 : configuration du serveur samba) Topic 209.1 Installation, configuration et gestion du serveur et du client SAMBA sous GNU/Linux. Supports créés par Noël Macé sous Licence Creative Commons BY-NC-SA.

Citation preview

  • 1. Linux LPIC2 noelmace.com Nol Mac Formateur et Consultant indpendant expert Unix et FOSS http://www.noelmace.com Configuration du serveur SAMBA Partage de fichiers Licence Creative Commons Ce(tte) uvre est mise disposition selon les termes de la Licence Creative Commons Attribution - Pas dUtilisation Commerciale - Partage dans les Mmes Conditions 3.0 France.

2. Linux LPIC2 noelmace.com Plan Server Message Block SAMBA Installation Structure Configuration Paramtres gnraux Partage de fichiers - Politique d'accs un partage - Droits des fichiers crs Gestion des utilisateurs Identificateurs Windows Gestion des groupes smbclient Monter un partage SMB Partage d'imprimante Utilitaires 3. Linux LPIC2 noelmace.com Server Message Block Protocole de partage rseau de ressources dvelopp en 1985 par IBM pour OS/2 nomm alors LAN Manager puis popularis par Microsoft qui l'intgre Windows aprs de nombreuses amliorations, crant ainsi SMB temporairement dnomm CIFS (Common Internet File System) entre 1998 et 2006 - notamment dans Windows NT 4 puis renomm SMB2, une nouvelle version plus rapide - Depuis Windows Vista nouvelle version 3.0 introduite avec Windows 8 Propritaire spcifications fermes l'origine puis distribues via le MSDN Open Specifications Developer Center Permet le partage de fichiers et d'imprimante sur tout rseau local Windows 4. Linux LPIC2 noelmace.com SAMBA Dvelopp par rtro-ingnierie grce un renifleur de paquets par Andrew Tridgell depuis 1992 aujourd'hui en "partenariat" avec Microsoft, contraint sign un accord d'information technique aprs avoir perdu leur procs en appel contre l'Union Europenne en 2007 2,5 fois plus performant que Microsoft Windows Server 2003 version actuelle (au 2 Juillet 2013): 4.0.7 rcriture complte offre un contrleur de domaine Active Directory Dans le cadre de la LPIC2, nous tudierons cependant la version 3, encore parfaitement d'actualit Libre (Licence GNU GPL v3) Supporte les principaux produits rseau propritaires Microsoft SMB/CIFS pour le partage de fichiers et imprimantes NetBIOS sur TCP/IP (NBT) pour le nommage WINS (rendu obsolte par DNS) et l'tablissement de sessions MSRPC pour les appels de procdure distance 5. Linux LPIC2 noelmace.com Installation Serveur Debian CentOS Client Debian CentOS # apt-get install samba# apt-get install samba # apt-get install smbclient# apt-get install smbclient # yum install samba# yum install samba # yum install samba-client# yum install samba-client 6. Linux LPIC2 noelmace.com Structure via Inetd ou des dmons inetd pour plus de scurit via tcpwrappers et moins d'utilisation de la mmoire dmons pour plus de performance Deux dmons: smbd: Server Message Block Daemon gestion du partage rseau SMB nmbd: NetBIOS Name Service Daemon gestion du serveur WINS Ports logiciels TCP et UDP 137: NetBIOS Name Service UDP 138: NetBIOS Datagram Service TCP 139: NetBIOS Session Service TCP et UDP 445: Services de dossiers partags Windows 7. Linux LPIC2 noelmace.com Configuration /etc/samba/smbd.conf dcoup en sections [global] : paramtres gnraux (indiqus par un G dans le man) et paramtres par dfaut [printers] et [print$]: partage d'imprimantes [homes]: partage du rpertoire personnel des utilisateurs [partage]: nom d'un partage (tout les paramtres indiqus par un S dans le man, galement compatibles avec la section global) vrifi par smbd toutes les 3 minutes pour prendre en compte les modifications Exemple: [global] workgroup = "Mon_Workgroup" server string = (Samba %v) # commentaire ... [homes] comment = Home Directories preexec = /bin/sh -c 'echo "Repertoire_source_samba"/bin/smbclient -M %m -I %I'& browseable = yes ... ["Nom_De_Partage"] comment = "Commentaire" ... [global] workgroup = "Mon_Workgroup" server string = (Samba %v) # commentaire ... [homes] comment = Home Directories preexec = /bin/sh -c 'echo "Repertoire_source_samba"/bin/smbclient -M %m -I %I'& browseable = yes ... ["Nom_De_Partage"] comment = "Commentaire" ... 8. Linux LPIC2 noelmace.com Paramtres gnraux section [global] de smb.conf groupe de travail (Domaine NetBIOS) Nom NetBIOS Description % permet la substitution de variables (cf man) %h pour le nom d'hte et %v pour le numro de version du serveur limiter le partage certaines interfaces workgroup = MON_WGworkgroup = MON_WG netbios name = SERVEUR1netbios name = SERVEUR1 server string = serveur %h (Samba %v, GNU/Linux)server string = serveur %h (Samba %v, GNU/Linux) bind interfaces only = Yes interfaces = 127.0.0.1 eth0:0 192.168.1.20/24 bind interfaces only = Yes interfaces = 127.0.0.1 eth0:0 192.168.1.20/24 9. Linux LPIC2 noelmace.com Partage de fichiers une section par partage chemin vers le rpertoire partager description path = /data/Documentspath = /data/Documents workgroup = MON_WGworkgroup = MON_WGcomment = mon commentairecomment = mon commentaire 10. Linux LPIC2 noelmace.com Politique d'accs un partage Lecture / criture pour tous Lecture seule pour tous restriction de l'criture une liste d'utilisateurs restriction de l'accs une liste d'utilisateurs read only = Yesread only = Yes read only = Yes write list = user1, user2, @grp1, @grp2 read only = Yes write list = user1, user2, @grp1, @grp2 read only = Noread only = No valid users = utilisateur1, utilisateur2, @groupe12000valid users = utilisateur1, utilisateur2, @groupe12000 11. Linux LPIC2 noelmace.com Droits des fichiers crs Droit des fichiers la cration Droit des dossiers la cration Forcer tout les utilisateurs tre reconnus comme un seul et mme utilisateur sur le systme create mask = 0775create mask = 0775 directory mask = 700directory mask = 700 force user = nobody force group = nogroup force user = nobody force group = nogroup 12. Linux LPIC2 noelmace.com Authentification Mode share: contrle d'accs au niveau ressources un mot de passe par partage contrle d'accs au niveau utilisateur user: utilisateur / mot de passe - par dfaut depuis Samba 2.2.X domain: centraliss sur un domaine - dlgue toute requte d'authentification au contrleur de domaine server: dprci (mis en place lorsque par le pass Samba n'tait pas capable d'agir en tant que serveur membre d'un domaine ADS: via Active Directory security = modesecurity = mode workgroup = WGworkgroup = WG realm = your.kerberos.REALM password server = your.kerberos.server realm = your.kerberos.REALM password server = your.kerberos.server 13. Linux LPIC2 noelmace.com Base des utilisateurs Samba stocker la base des utilisateurs dans un fichier (par dfaut, mais dconseill) une base de donne TDB (Trivial DataBase) une base ldap pour une description dtaill de la configuration de ldap et Samba, voir la documentation officielle passdb backend = smbpasswd smb passwd file = /etc/samba/smbpasswd passdb backend = smbpasswd smb passwd file = /etc/samba/smbpasswd passdb backend = tdbsampassdb backend = tdbsam passdb backend = ldapsam:urlpassdb backend = ldapsam:url 14. Linux LPIC2 noelmace.com Gestion des utilisateurs Gestion de la synchronisation des utilisateurs grce smbpasswd utilitaire client/serveur (pouvant modifier distance les comptes Windows NT) Ajouter ou modifier un utilisateur Samba cet utilisateur doit tre un utilisateur existant sur le systme - ie. dans le fichier /etc/passwd le mot de passe pourra cependant tre diffrent Dsactiver un utilisateur Samba Lister les utilisateurs # smbpasswd -a utilisateur# smbpasswd -a utilisateur # smbpasswd -d utilisateur# smbpasswd -d utilisateur # pdbedit -L# pdbedit -L 15. Linux LPIC2 noelmace.com Identificateurs Windows SID (Security Identifier) cens tre unique dans le monde permet d'identifier les serveurs, utilisateurs ou objets (groupes) Format: S-1-5-127623811015-3361044348-030300820-1013 S - indique que ceci est un SID 1 - niveau de rvision 5 - valeur d'autorit de l'identificateur 127623811015-3361044348-030300820 - Identificateur de domaine ou d'ordinateur 1013 Un identificateur relatif (RID : Relative ID) - unique au sain d'un domaine 16. Linux LPIC2 noelmace.com Gestion des groupes Grce l'utilitaire net (permet d'administrer Samba et les serveurs CIFS distants, trs complet) commande groupmap Arguments - unixgroup: nom du groupe Unix - ntgroup: nom du groupe Windows NT (doit tre associ un SID) - rid, sid - type - type de groupe ('domain', 'local', ou 'builtin') - comment: description du groupe Ajouter une nouvelle entre de mapping de groupe Supprimer une entre Lister les entres # net groupmap add {rid=int|sid=string} unixgroup=string[type={domain|local}] [ntgroup=string] [comment=string] # net groupmap add {rid=int|sid=string} unixgroup=string[type={domain|local}] [ntgroup=string] [comment=string] # net groupmap delete {ntgroup=string|sid=SID}# net groupmap delete {ntgroup=string|sid=SID} # net groupmap list [verbose] [ntgroup=string] [sid=SID]# net groupmap list [verbose] [ntgroup=string] [sid=SID] 17. Linux LPIC2 noelmace.com smbclient Connexion Options -L: lister les partages disponibles pour un utilisateur (avec -U) -W: nom de domaine SMB (workgroup) de l'utilisateur - utilise par dfaut celui dfini dans smb.conf -U: nom de l'utilsateur Commandes internes "ftp like" put, get, ls, cd, mkdir, help, etc ... Exemples lister les partages disponibles se connecter un partage $ smbclient [-L nom_netbios | nom_du_service] [-W workgroup] [-U username[%password]]$ smbclient [-L nom_netbios | nom_du_service] [-W workgroup] [-U username[%password]] # smbclient -L serveur1 -W monwg -U noel# smbclient -L serveur1 -W monwg -U noel # smbclient serveur1Documents -W monwg -U noel# smbclient serveur1Documents -W monwg -U noel 18. Linux LPIC2 noelmace.com Monter un partage SMB Deux solutions smbfs dprci depuis Linux 2.6.20 outils externes: smbclient, smbmount, smb.conf CIFS VFS parfaitement intgr au kernel - configuration via /proc/fs/cifs/ et les options de module (via insmode et modprobe) - ne ncessite aucun outils externe (smbmount remplac par un simple helper mount.cifs) Montage automatique dans le fichier /etc/fstab # smbmount {service} {mount-point} [-o options]# smbmount {service} {mount-point} [-o options] # mount -t cifs //192.168.1.10/monpartage /mnt/smb -o user=noel,pass=monmdp# mount -t cifs //192.168.1.10/monpartage /mnt/smb -o user=noel,pass=monmdp //192.168.1.10/monpartage /mnt/smb cifs user,user=noel,pass=monmdp 0 0//192.168.1.10/monpartage /mnt/smb cifs user,user=noel,pass=monmdp 0 0 19. Linux LPIC2 noelmace.com Partage d'imprimante Partager toutes les imprimantes Partager une imprimante spcifique [printers] comment = Printer %p on Server1 path = /var/spool/samba printable = yes [printers] comment = Printer %p on Server1 path = /var/spool/samba printable = yes [HP LaserJet] printer name = lp comment = HP LaserJet 5 on Server1 path = /var/spool/lpd/samba printable = yes writeable = no [HP LaserJet] printer name = lp comment = HP LaserJet 5 on Server1 path = /var/spool/lpd/samba printable = yes writeable = no 20. Linux LPIC2 noelmace.com Utilitaires Tester la syntaxe de smb.conf Lister les connections au serveur # testparm# testparm # smbstatus# smbstatus 21. Linux LPIC2 noelmace.com Ce quon a couvert Samba 3 configuration outils et utilitaires partage de fichiers et d'imprimantes montage des partages de fichiers sous GNU/Linux scurit et mise en correspondance des utilisateurs Weight: 4 Description: Candidates should be able to set up a SAMBA server for various clients. This objective includes setting up Samba for login clients and setting up the workgroup in which a server participates and defining shared directories and printers. Also covered is a configuring a Linux client to use a Samba server. Troubleshooting installations is also tested. 209.1 SAMBA Server Configuration 22. Linux LPIC2 noelmace.com Licence Ce(tte) uvre (y compris ses illustrations, sauf mention explicite) est mise disposition selon les termes de la Licence Creative Commons Attribution - Pas dUtilisation Commerciale - Partage dans les Mmes Conditions 3.0 France. Pour voir une copie de cette licence, visitez http://creativecommons.org/licenses/by-nc-sa/3.0/fr/ ou crivez : Creative Commons, 444 Castro Street, Suite 900, Mountain View, California, 94041, USA. Vous tes libre de: partager reproduire, distribuer et communiquer cette uvre remixer adapter luvre Selon les conditions suivantes : Attribution Vous devez clairement indiquer que ce document, ou tout document driv de celui, est (issu de) luvre originale de Nol Mac (noelmace.com) (sans suggrer qu'il vous approuve, vous ou votre utilisation de luvre, moins d'en demander expressment la permission). Pas dUtilisation Commerciale Vous navez pas le droit dutiliser cette uvre des fins commerciales (ie. l'intention premire ou l'objectif d'obtenir un avantage commercial ou une compensation financire prive). Pour obtenir ce droit, une autorisation explicite de l'auteur est requise. Partage dans les Mmes Conditions Si vous modifiez, transformez ou adaptez cette uvre, vous navez le droit de distribuer votre cration que sous une licence identique ou similaire celle-ci. Pour toute demande de collaboration, d'utilisation commerciale ou de publication de ce support ou d'un driv de celui-ci sous une licence incompatible, contacter l'auteur via les contacts indiqus sur le site http://www.noelmace.com. Vous tes par ailleurs vivement encourag (sans obligation lgale) communiquer avec celui-ci si vous ralisez une uvre drive ou toute amlioration de ce support.