SAMBA

Qu’est-ce que SAMBA ?

Le logiciel Samba est un outil permettant de partager des dossiers et des imprimantes à travers un réseau local. Il permet de partager et d’accéder aux ressources d’autres ordinateurs fonctionnant avec des systèmes d’exploitation Microsoft® Windows® et Apple® Mac OS® X, ainsi que des systèmes GNU/Linux, *BSD et Solaris dans lesquels une implémentation de Samba est installée.

Edition du fichier Hosts Hostname Interfaces et Resolv.conf :

Nano /etc/hosts :

Nano /etc/resolv.conf

Nano /etc/networking/interfaces :

Nano /etc/hostname :

Il faut installer des dépendances avant de pouvoir installer samba, mais comme il y en n’a beaucoup je vais modifier le fichier ssh pour avoir la permission d’accès.

Modification SSH

Nano /etc/ssh/sshd_config

Je vais ouvrir Putty pour installer les dépendances :

Elle se trouve sur le wiki de samba ou ici : http://www.bidouilleit.com/2014/02/06/installation-configuration-et-administration-samba-4-ad/

Il faut juste faire attention au paquet libgnults-dev qui n’existe plus il et remplacer par libgnults28-dev.

A l’installation des dépendances KERBEROS va être installer il faudra lui indiquer le domaine en majuscule et le nom de la machine :

  1. Le nom de Domain en majuscule
  1. Le nom de la machine comme il est écrit de base
  1. Le nom de la machine comme il est écrit de base

Il va falloir par la suite télécharger les sources de samba :

Commande wget http://ftp.samba.org/pub/samba/samba-latest.tar.gz

Une fois que les sources ont étais télécharger il va falloir les compiler :

Il va falloir faire un tar zxvf sur les sources télécharger :

Commande tar zxvf samba-latest.tar.gz

Si je fais un dir je peux voir le dossier samba-4.5.0

Je rentre dedans pour faire un ./configure

Commande cd samba-4.5.0

Une fois dans le dossier je configure :

Commande ./configure –enable-debug –enable-selftest

Et lorsque c’est terminé il y aura une confirmation :

La configuration est terminée il va falloir installer samba avec un make & & make install

L’installation peut prendre un certain temps cela dépend de la performance du pc.

SAMBA 4 et installer mais je souhaite allez plus loin et configurer comme contrôleur de Domain.

Configuration de SAMBA

  1. Création du domaine (équivalent du dcpromo pour windows)

Attention ! Il est préférable de supprimer /usr/local/samba/etc/smb.conf avant de lancer samba-tool. (Il se peut également que l’installation ne l’ai pas créé).

Commande /usr/local/samba/bin/samba-tool domain provision –use-rfc2307 –interactive

Par défaut la création de la forêt et du domaine va se faire en niveau fonctionnel Windows 2003 je dois ajouter function-level=2008_R2 à la commande de samba-tool pour éviter le problème est en même temps avoir le niveau fonctionnel de Windows 2008_R2.

Le password dois avoir au minimum 7 caractère j’ai choisi : Azerty1234

L’option –use-rfc2307 active les attributs Posix de l’AD de Samba. Cela crée aussi les informations NIS dans l’AD, ce qui nous permet d’administrer les UIDs/GIDs et autres paramètres UNIX (dans la table “Unix attributes” de l’ADUC…Active Directory Users and Computers). Il est plus simple de l’activer durant cette préparation (Provisioning), plutôt que par la suite. De plus, même s’il n’y en avait pas (encore) besoin, ça n’impacte pas sur l’installation.

Notre installation est finie je vais donc redémarrer le serveur.

On démarre SAMBA 4 :

Commande /usr/local/samba/sbin/samba

Vérifier les versions de samba et smbclient

Note : Pour que Samba tourne sans problème, il faut que service smbclient installé sur le poste soit de la même version que le service samba.

/usr/local/samba/sbin/samba -V

/usr/local/samba/bin/smbclient -V

Les deux commandes doivent retourner la même version.

Ici je peux voir que samba est en versions 4.5.0 ainsi que smbclient :

Vérifier que le DNS redirecteur est bien configuré dans samba :

Commande nano /usr/local/samba/etc/smb.conf

Il faut vérifier que la ligne DNS forwarder = passerelle ici c’est 192.168.1.254 car ce n’est pas le pc de l’école qui devrais être en 172.16.0.1

  • Configurons maintenant Kerberos :

Editez le fichier /usr/local/samba/share/setup/krb5.conf et remplacez $(REALM) par RESEAUX.LOCAL Attention à toujours mettre le nom de domaine en majuscules dans kerberos !

Avec WINSCP :

Copier ce fichier crée par samba dans /etc.

Le mieux est tout de même que soit mis à jour automatiquement si vous le modifiez au niveau de samba. Pour ça, créez un lien symbolique au lieu de copier le fichier :

Command ln -sf /usr/local/samba/share/setup/krb5.conf /etc/krb5.conf

Modification des servers de temps :

ntp utilise plusieurs serveurs pour se mettre à l’heure, afin d’augmenter sa précision en cas d’indisponibilité ou d’erreurs d’un serveur. Leurs adresses sont écrites dans le fichier /etc/ntp.conf, dans les différents champs server. Pour le moment, Debian y a placé une liste de serveurs répartis dans le monde, mais il est plus efficace d’utiliser des serveurs proches, situés dans le même pays. En France je peux les remplacer par ces lignes.

Commande nano /etc/ntp.conf

Comme ce service est un démon constamment utilisé je vais le redémarrer :

Commande /etc/init.d/ ntp restart

Il ne me reste plus cas accroché le Domain avec un Windows 7 puisque j’ai le niveau fonctionnel de Windows 2008_R2.

Paramétrage de Windows 7 pour accrocher au Domain :

Il faut commencer par l’adressage :

 

 

J’indique où se trouve mon serveur DNS

Et j’indique le nom de Domain :

Un compte ayant les droits d’administration est demander avec son mot de passe :

Ici mon server n’est pas du fait avec du Windows mais du Unix donc pour se logé se ne sera pas Administrateur + mdp mais Administrator + mdp

 

 

Pour pouvoir administrer l’AD depuis Windows, il faut télécharger les outils RSAT pour Windows 7 :

A partir d’ici le system téléchargera les mises nécessaires aux outils RSAT :

Les outils se trouvent dans la barre de tâche de Windows (outils d’administration)

Et ressemblerons pour trait aux utilitaire de Windows Server.

SAMBA 3

Pourquoi SAMBA 3 et pas la versions 4 ?

SAMBA 3 est la version la plus stable de plus c’est la version qui a le plus de mise à jour actuel.

Découverte de Samba :

Samba, nous l’avons vu, fournit un ensemble d’outils permettant à la fois de se comporter en client des réseaux Microsoft ou bien en serveur.

Samba se compose de 3 démons :

smbd : qui gère les connexions SMB/CIFS (partage de fichiers, impression, …)

nmbd : qui gère la couche NetBios (ici résolution de noms)

winbind : qui permet à un serveur Unix d’utiliser un serveur NT pour bénéficier de ses comptes localement.

Les deux démons les plus utilisés sont smbd et nmbd. Winbindd est utilisé dans des cas très précis où nous désirons nous connecter sur une machine Unix avec un compte issu d’une machine NT.

Voici un tableau qui m’explique le fichier SMB.CONF :

Qui se trouve dans /etc/samba/smb.conf

Samba Partager Paramètres avec Syntaxe

Paramètre

La description

Syntaxe

Browseable Définit si la part est affichée ou non.
Par défaut est oui.
browseable = yes | non
masquer les fichiers de points Cacher ou afficher les fichiers cachés (ceux qui commencent par un point)
par défaut est oui.
masquer les fichiers dot = yes |non
Chemin Le chemin d’accès au dossier que vous souhaitez partager. path = / path / to / dossier
créer masque Par défaut est 0664. create mask = 0664
masque de répertoire Par défaut est 0775 directory mask = 0775
groupe de force Modifie le groupe par défaut pour tous les utilisateurs connectés au partage.
Désactivé par défaut.
force group = groupe
user la force Change l’utilisateur par défaut pour tous les utilisateurs se connectant à la part.
Désactivé par défaut.
force user = nom d’utilisateur
ok guest Permet l’accès des invités.
Par défaut est non.
guest ok = yes | non
les utilisateurs valides Quels utilisateurs sont autorisés à se connecter au partage.
Tous les utilisateurs sont autorisés par défaut.
utilisateurs valides = nom d’utilisateur, @group
les utilisateurs non valides Quels sont les utilisateurs ne sont pas autorisés à se connecter au partage.
Tous les utilisateurs sont autorisés par défaut.
les utilisateurs non valides = nom d’utilisateur, @group
lecture seulement Fait un partage en lecture seule.
La valeur par défaut est oui.
read only = yes | non
Inscriptible Fait un partage en lecture / écriture.
La valeur par défaut est non.
inscriptible = yes | non
lire la liste Liste des utilisateurs ou des groupes qui ne sont autorisés un accès en lecture à une action.
Il est pas utilisé par défaut.
lire la liste = nom d’utilisateur, @group
liste d’écriture Liste des utilisateurs ou des groupes qui ne sont autorisés à avoir accès en écriture à une action.
Il est pas utilisé par défaut.
liste d’écriture = nom d’utilisateur, @group

Préparation de samba

Non de la machine : Samba

Nom du Domain : reseau.lan

Nom du Compte : nicolas pass : nicolas

Configuration IP :

Pour commencer nous allons retirer le cd-rom des sources.list

Commande nano /etc/apt/sources.list

Je commente le cd-rom ou je retire la ligne :

On n’oublie pas de modifier le fichier hosts :

Maintenant il faut installer samba :

Commande aptitude search samba

Voici les services à installer pour samba le SMB/CIFS m’indique que les imprimantes, les mots de pass et un serveur Unix (AD) sera installer. Il se peut qu’il faut connecter le lecteur cd-rom pour l’installation.

Mais je vais en profiter pour installer par la même occasion les paquets pour winbind, kerberos et le client samba.

Dans la commande d’installation des services je vais rajouter winbind smbclient krb5-user ntp ntpdate libnss-winbind.

A l’installation Kerberos nous demande le nom de domaine en majuscule ainsi que le nom de l’ordinateur. S’il ne le demande pas il faudra alors modifier le fichier krb5 qui se trouve dans /etc/krb5.conf

Il se peut que le fichier ne soit pas présent il faudra alors installer kerberos-user c’est celui qui nous permet d’avoir une installation de base. Cela permet d’installer les clients de base kinit, klist, kdestroy et kpasswd :

Commande apt-get install krb5-user

Kerberos s’installe et nous demande le Domain en majuscule :

Ainsi que le nom de la machine :

Et le nom d’hôte qui pourra modifier les mots de passe :

Kerberos et installer je vais maintenant désactiver la carte qui peut accéder à l’extérieure et installer samba sur la carte interne :

Commande nano /etc/network/interfaces

Et on commente la carte :

Pour plus de sécurité je vais la déconnecter via les settings de Workstation :

Ne pas oublier de de modifier le fichier RESOLV.CONF et mettre sur le nameserver l’adresse de la carte ou sera installer samba.

MODIFICATION DU FSTAB

Le Fstab est la table des différents systèmes de fichiers sur un ordinateur sous UNIX/LINUX. Il contient une liste de disques utilisés au démarrage et des partitions des disques. Pour chaque partition, il indique comment elle sera utilisée et intégrée à l’arborescence du système de fichier global.

Il faut modifier le fichier /etc/fstab. Le but de la manipulation est d’autoriser samba/Windows à pouvoir modifier le disque et à aller chercher des informations.

On va ajouter les commandes suivantes :

user_xattr Améliore les performances samba

acl active les droits avancées pour les fichiers partagés

barrier=1 protège les transactions tdb contre la corruption des fichiers lors des coupures électriques.

Configuration Winbind

Pour configurer le winbind, il faut aller dans /etc/nsswitch.conf

Le Name Service Switch (NSS) autorise le remplacement des traditionnels fichiers Unix de configuration (par exemple /etc/passwd, /etc/group, /etc/hosts) par une ou plusieurs bases de données centralisées, les mécanismes utilisés pour accéder à ces bases étant configurables. NSS est habituellement configuré à l’aide du fichier /etc/nsswitch.conf. Celui-ci liste les « bases de données » (par exemple group, passwd, …) et une ou plusieurs façons d’obtenir l’information.

Ici on indique on ajoute winbind à passwd, group, shadow.

passwd gestion des utilisateurs

group gestion des groupes

shadow dissimulations des MDP.

On modifie aussi le serveur de temps tans cas y être avant d’installer le contrôleur de domaine :

Commande nano /etc/ntp.conf

Pour avoir les pools il suffit de les chercher sur http://www.pool.ntp.org/zone/fr

L’option iburst signifie qu’en cas d’indisponibilité du serveur, ntp essaiera plusieurs fois avant d’abandonner. L’option dynamic permet de conserver dans la configuration les serveurs indisponibles, au cas où ils seraient à nouveau accessibles plus tard.

ntp est en fait un démon, qui tourne en permanence sur notre système afin de maintenir l’horloge à l’heure et de corriger sa dérive. Après avoir modifié sa configuration, on devra donc le relancer :

Commande /etc/init.d/ntp restart

Installation de samba :

Premièrement, il faut supprimer le fichier « smb.conf » existant. Il a été créé lors de l’installation des paquets samba. Pour cela il faut taper : « rm /etc/samba/smb.conf »

On lance ensuite la commande équivalent au DC PROMO sur Windows server 2003-2008 r2

Commande samba-tool domain provision –use-rfc2307 –option= interfaces=lo eth1“ –interactive –function-level=2008_R2

L’option –use-rfc2307 active les attributs posix de l’AD de Samba. Cela crée aussi les informations NIS dans l’AD, ce qui vous permet d’administrer les UIDs/GIDs et autres paramètres UNIX (dans la table « Unix attributes » de l’ADUC : Active Directory Users and Computers). Il est plus simple de l’activer durant cette préparation (Provisioning), plutôt que par la suite. De plus, même si vous n’en avez pas (encore) besoin, ça n’impacte pas votre installation. Par défaut la création de la forêt et du domaine va se faire en niveau fonctionnel Windows 2003. Il est possible de « upgrader » plus tard ou de le définir dès maintenant. Pour cela il faut inclure –function-level=2008_R2 à la commande de samba-tool. –interactive pour que la configuration se passe en interactif. –option “interfaces=lo eth1” dans la commande permet de définir eth1 comme interface réseau de notre active directory. Il faut l’utiliser quand nous avons plusieurs cartes réseaux.

Ou bien faire un samba-tool domain provision et paramétré ensuite le Realm,Domain,Rôle,DNS :

Nous avons un récapitulatif à la fin de l’installation de l’AD ainsi que la destination ou c’est installer le service :

Il y a 3 principaux démons sur SAMBA :

  • Nmbd
  • Smbd
  • Winbind

Avec la commande status nous aurons plus d’information :

Commande /etc/init.d/nmbd status

Commande /etc/init.d/smbd status

Commande /etc/init.d/winbind status

Test d’authentification avec KERBEROS :

Kerberos est un protocole d’authentification réseau qui repose sur un mécanisme de clés secrètes (chiffrement symétrique) et l’utilisation de tickets, pas de mots de passe visible, évitant le risque d’interception frauduleuse des mots de passe des users.

La commande kinit administrator doit nous permettre de vérifier l’authentification de l’administrator.

Modification du SMB.CONF :

Connexion du client Windows au Domaine :

Il ne reste plus cas accrocher le client au domaine sans oublier d’avoir le bon adressage dans les édits de VM puisque le serveur et en 10.0.1.1

La carte IP du client :

Laisser un commentaire