UE5A Administration Réseaux LP SIRI José Dordoigne Architecte infrastructure v1.0 2012-2013
Objectif de la formation -Fournir les éléments clés pour : -Comprendre les principaux services réseaux déployés en entreprise -Mettre en œuvre et dépanner ces services réseaux sur un socle Linux pour des clients Microsoft. 2
Sommaire 1 Introduction aux Services Réseaux 2 DHCP 3 DNS 4 - FTP 5 NFS 6 7 HTTP 3
6 6.1 Historique 6.2 Principes 6.3 Vocabulaire 6.4 - Fonctionnement 6.5 Architectures types 6.6 Configurations types 6.7 Sécurisation de la solution 6.8 Haute disponibilité 6.9 Références 4
6.1 Historique SMB (Server Message Block) est repris par Microsoft en 1987, en reprenant un concept mis au point par IBM en 1985 (NetBIOS), ce protocole s'appuie sur NetBEUI (ainsi que TCP/IP). 5
6.2 Principes Les Services de fichier Microsoft sont très répandus. Ils utilisent le protocole SMB (Server Message Block). L OS Microsoft est soumis à licence. Une alternative économique intéressante est (www.samba.org, licence GPL), compatible avec les réseaux Microsoft et recompilé sur de nombreux OS dont Linux et Unix. est capable d émuler les composants Client Microsoft, mais surtout les composants Serveurs: -un contrôleur de domaine Microsoft, -un serveur de fichiers et d impression, Il prend en charge LDAP et Kerberos (v 3.0.0). 6
6.3 Vocabulaire -Client SMB -Serveur SMB -WINS -PDC, BDC 7
6.4 Fonctionnement Samba est une application serveur performante et versatile. Même les administrateurs système expérimentés doivent connaître les capacités et limitations de Samba avant de tenter d'effectuer son installation et sa configuration. Ce que Samba sait faire : -Mettre des arborescences de répertoires et des imprimantes à la disposition de clients Linux, UNIX et Windows -Aider lors de la navigation du réseau (avec ou sans NetBIOS) -Authentifier les connexions de domaines Windows -Fournir la résolution du serveur de noms Windows Internet Name Service (WINS) -Agir en tant que contrôleur principal de domaine (ou PDC, de l'anglais Primary Domain Controller) de type Windows NT -Agir en tant que Contrôleur de Domaine Secondaire (ou BDC, de l'anglais Backup Domain Controller) pour un contrôleur principal (PDC) basé sur Samba -Agir comme un serveur membre du domaine Active Directory -Joindre un PDC Windows NT/2000/2003 Ce que Samba ne peut pas effectuer : -Agir comme un BDC pour un PDC Windows (et vice versa) -Agir comme le contrôleur d'un domaine Active Directory 8
6.4 Fonctionnement Samba est composé de trois démons (smbd, nmbd et winbindd). Deux services (smb et windbind) contrôlent la manière selon laquelle les démons sont démarrés et arrêtés et ainsi que d'autres fonctionnalités en relation avec les services. smbd Le démon serveur smbd fournit des services de partage de fichiers et d'impression aux clients Windows. En outre, il est responsable de l'authentification des utilisateurs, du verrouillage des ressources et du partage des données par le biais du protocole SMB. Les ports par défaut sur lesquels le serveur est à l'écoute de tout trafic SMB sont les ports TCP 139 et 445. Le démon smbd est contrôlé par le service smb. nmbd Le démon serveur nmbd comprend et répond à toutes les requêtes de service de nom NetBIOS telles que celles produites par SMB/CIFS dans des systèmes basés sur Windows. Parmi ces derniers figurent les clients Windows 95/98/ME, Windows NT, Windows 2000, Windows XP et LanManager. Ce démon joue également un rôle au niveau des protocoles de navigation qui constituent l'affichage du voisinage réseau (Network Neighborhood) de Windows. Le port par défaut sur lequel le serveur attend du trafic NMB est le port UDP 137. Le démon nmbd est contrôlé par le service smb. 9
6.4 Fonctionnement winbindd Le service winbind effectue la résolution entre les informations relatives aux utilisateurs et aux groupes sur un serveur Windows NT et les rend utilisables par des plates-formes UNIX. Cette opération est possible grâce à l'utilisation d'appels RPC de Microsoft, du système PAM (Pluggable Authentication Module, ou module d'authentification enfichable) et du NSS (Name Service Switch). Ceci permet aux utilisateurs de domaines Windows NT d'apparaître comme des utilisateurs UNIX sur une machine UNIX. Bien qu'intégré à la distribution Samba, le service winbind est contrôlé séparément du service smb. Le démon winbindd est contrôlé par le service winbind et il n'est pas nécessaire que le service smb soit lancé pour que le démon tourne. 10
6.4 Fonctionnement Niveaux de sécurité pour Samba Il existe seulement deux types de modes de sécurité pour Samba, à savoir share-level (niveau du partage) et user-level (niveau de l'utilisateur). Share-level: Dans la cas de la sécurité au niveau du partage, le serveur accepte seulement un mot de passe sans demander un nom d'utilisateur explicite de la part du client. Le serveur attend la saisie d'un mot de passe pour chaque partage, indépendamment du nom d'utilisateur. Smb.conf -> security=share User-level : Quatre mode de sécurité possibles : Utilisateur, Serveur, domaine, Active Directory Utilisateur La sécurité au niveau de l'utilisateur est le choix par défaut pour Samba. Si le serveur accepte le nom d'utilisateur/mot de passe du client, ce dernier peut alors monter des partages multiples sans devoir saisir un mot de passe à chaque fois. Samba peut aussi accepter des requêtes nom d'utilisateur/mot de passe basées sur les sessions. Le client maintient des contextes d'authentification multiples grâce à l'utilisation d'un identifiant utilisateur unique (ou UID) pour chaque connexion. Smb.conf -> security=user 11
6.4 Fonctionnement Niveaux de sécurité pour Samba Serveur Ce mode permet de configurer Samba en tant que serveur autonome. Smb.conf -> security=server Domaine En mode de sécurité domaine, le serveur Samba dispose d'un compte machine (un compte de confiance pour la sécurité du domaine) qui force toutes les requêtes d'authentification à passer par les contrôleurs de domaine. Le serveur Samba se voit devenir un serveur membre du domaine. Smb.conf -> security=domain, workgroup=lp3siri Active Directory Si vous avez un environnement Active Directory, il est possible de faire partie du domaine en tant que membre natif d'active Directory. Même si une politique de sécurité limite l'utilisation de protocoles d'authentification compatibles avec NT, le serveur Samba peut faire partie d'un ADS à l'aide de Kerberos. Samba en mode membre d'active Directory peut accepter des tickets Kerberos. Smb.conf -> security=ads, realm=lp3siri.local, password server=dc1.lp3siri.local 12
6.4 Fonctionnement Navigation réseau avec Samba La navigation réseau (Network browsing) est un concept permettant aux serveurs Windows et Samba d'apparaître dans le Voisinage réseau de Windows. Au sein du Voisinage réseau apparaissent des icones qui représentent des serveurs et, lorsque ces icones sont ouvertes, les partages et imprimantes du serveur qui sont disponibles sont affichés. Les capacités de navigation réseau nécessitent NetBIOS sur TCP/IP. La mise en réseau basée sur NetBIOS utilise la messagerie de diffusion générale (UDP) pour effectuer la gestion de listes de navigation. Sans NetBIOS et WINS comme méthode primaire pour la résolution de noms d'hôtes sur TCP/IP, d'autres méthodes telles que des fichiers statiques (/etc/hosts) ou DNS doivent être utilisées. Un navigateur maître de domaine dresse les listes de navigation à partir des navigateurs maîtres locaux sur tous les sous-réseaux afin que la navigation puisse s'effectuer entre les groupes de travail et les sous-réseaux. De plus, le navigateur maître de domaine devrait de préférence être le navigateur maître local de son propre sous-réseau. 13
6.4 Fonctionnement Navigation dans un groupe de travail Pour chaque groupe de travail, il ne doit exister qu'un seul navigateur maître de domaine. Il est possible d'avoir un navigateur maître local par sous-réseau sans navigateur maître de domaine, mais cette situation entraîne l'isolement de groupes de travail qui ne peuvent pas se voir. Pour la résolution de noms NetBIOS dans des groupes de travail à travers des sousréseaux, WINS est nécessaire. Il ne peut y avoir qu'un seul navigateur maître de domaine par nom de groupe de travail. Ci-dessous figure un extrait du fichier smb.conf, section [global], dans lequel le serveur Samba est un navigateur maître de domaine. domain master = Yes local master = Yes preferred master = Yes os level = 35 Ci-après figure un extrait du fichier smb.conf, section [global], dans lequel le serveur Samba est un navigateur maître local : domain master = no local master = Yes preferred master = Yes os level = 35 La directive os level fonctionne comme un système prioritaire pour les navigateurs maîtres d'un sous-réseau. L'attribution de différentes valeurs garantit que les navigateurs maîtres n'entrent pas en conflit entre eux quant à l'autorité. 14
6.4 Fonctionnement Navigation dans un domaine Par défaut, un PDC Windows NT pour un domaine est également le navigateur maître de domaine pour ce domaine. Un serveur Samba doit être configuré en tant que serveur maître de domaine dans ce type de situation. La navigation réseau échouera peut-être si le serveur Samba exécute WINS en même temps que les autres contrôleurs de domaine en fonctionnement. Pour les sous-réseaux qui n'incluent pas le PDC de Windows NT, il est possible d'implémenter un serveur Samba en tant que navigateur maître local. La configuration de smb.conf pour un navigateur maître local (ou aucune navigation du tout) dans un environnement de contrôleur de domaine est l'équivalent de la configuration d'un groupe de travail. WINS Un serveur Samba ou un serveur Windows NT peut fonctionner comme un serveur WINS. Lorsqu'un serveur WINS est utilisé avec NetBIOS activé, les paquets UDP unicast peuvent être routés permettant ainsi la résolution de noms à travers les réseaux. Sans serveur WINS, la diffusion UDP est limitée au sous-réseau local et par conséquent, ne peut pas être routée vers les autres sous-réseaux, groupes de travail ou domaines. Ci-dessous figure un extrait du fichier smb.conf, section [global], dans lequel le serveur Samba est utilisé comme un serveur WINS : wins support = Yes 15
6.4 Fonctionnement Outils Samba findsmb Trouver les hôtes smb s exécutant sur le réseau. net Equivalent de net.exe sous Windows et MS-DOS. nmblookup Résolution des noms NetBIOS en adresses IP. pbedit Edition de la base SAM Samba. smbcacls Modification des Acls Windows sur les fichiers et dossiers partagés par Samba. smbclient Client Unix équivalent à FTP. smbmount Montage d un file system Samba sur une machine locale. smbpasswd => Modification d un mot de passe crypté Samba. 16
6.4 Fonctionnement Outils Samba smbspool Interface compatible avec CUPS. Smbstatus Affiche le statut des connexions. smbtar sauvegarde, restauration des fichiers Samba. testparm Vérifie la syntaxe du fichier smb.conf. testprns Vérifie qu une imprimante est déclarée. wbinfo => Affiche les informations sur le démon Winbindd. 17
6.5 Architecture type service de fichiers Réplication possible à prévoir le cas échéant 18
6.6 Configurations types Package: samba samba-swat Services smb nmb 19
6.6 Configurations types Partage Samba avec Syntaxe Paramètre Description Syntaxe browseable Définit si le partage est visible ou non. Défaut Yes browseable = yes no hide dot files Cache ou affiche les fichiers cachés (commençant par un point). Défaut Yes. hide dot files = yes no path Le chemin du dossier à partagé path = /path/to/folder create mask Défaut 0664 create mask = 0664 directory mask Défaut 0775 directory mask = 0775 force group force user Modifie le groupe par défaut pour tous les utilisateurs connectés au partage. Désactivé par défaut. Modifie l utilisateur par défaut pour tous les utilisateurs connectés au partage. Désactivé par défaut. force group = compta force user = jdordoigne guest ok Autorise l accès invité. Défaut No. guest ok = yes no valid users Les utilisateurs autorisés à se connecter au partage. Tous les utilisateurs sont autorisés par défaut. valid users = jdordoigne, @comptables 20
6.6 Configurations types Paramètre Description Syntaxe invalid users Les utilisateurs non autorisés à se connecter au partage. Tous les utilisateurs sont autorisés par défaut. invalid users = pierre, @vendeurs read only Définit un partage en lecture seule. Défaut Yes. read only = yes no writeable Définit un partage en lecture/écriture writeable = yes no read list write list Liste des utilisateurs ou des groupes qui disposent seulement d un accès en lecture seule. Non utilisé par défaut. Liste des utilisateurs ou des groupes qui disposent d un accès en lecture / écriture. Non utilisé par défaut. read list = paul, @lecteurs write list = jacques, @ecrivains 21
6.6 Configurations types Gestion des utilisateurs: Création des utilisateurs et groupes sous Linux adduser useradd groupadd Ajout des utilisateurs Samba: smbpasswd -a 22
6.7 Sécurisation de la solution iptables -A INPUT -p udp -m udp -s 192.168.1.0/24 --dport 137 -j ACCEPT iptables -A INPUT -p udp -m udp -s 192.168.1.0/24 --dport 138 -j ACCEPT iptables -A INPUT -p tcp -m tcp -s 192.168.1.0/24 --dport 139 -j ACCEPT iptables -A INPUT -p tcp -m tcp -s 192.168.0.0/24 --dport 445 -j ACCEPT 23
6.8 Haute disponibilité - Plusieurs serveurs disposant des mêmes sources synchronisées 24
6.9 Références Samba http://www.samba.org/ Samba Ubuntu FR http://doc.ubuntu-fr.org/samba Samba SWAT Ubuntu FR http://doc.ubuntu-fr.org/samba_swat Tuto Samba http://marionpatrick.free.fr/man_html/html/tuto_samba.html Configuration Samba http://nico88120.free.fr/linux/linux_samba.php Webmin http://ww2.webmin.org/ 25