Aller à : navigation, rechercher

SAMBA - Installation samba4 comme DC secondaire

Samba intégre une ré-implémentation très stable de Microsoft Active Directory reproduit la fonctionnalité de contrôleur de domaine. Il peut être géré soit en ligne de commande soit avec les outils de la console Microsoft MMC comme pour un MSAD.

Préparer son Microsoft Active Directory

Ces étapes sont relative à la jonction d'un AD Samba4 à un domaine existant en Microsoft Active Directory. Elles ne sont peut être pas toutes nécessaires, mais bon, sans ça on est tombé sur des problèmes

  • monter le niveau fonctionnel du domaine à 2003 minimum sur chaque active directory : Dans la console "Domaines et approbations Active Directory", cliquer droit sur "mondomain.lan", puis sélectionner "augmenter le niveau fonctionnel du domaine..."
  • monter le niveau fonctionnel de la forêt à 2003 minimum : Dans la console "Domaines et approbations Active Directory", cliquer droit sur "Domaines et approbations Active Directory", puis sélectionner "augmenter le niveau fonctionnel de la forêt..."
  • changement de la partition de stockage des DNS : Dans la console DNS, cliquer droit sur "zone de recherche directe / mondomaine.lan" , choisir propriété, dans l'onglet général, cliquer sur le bouton "Réplication : xxxxx Modifier", et sélectionner "Vers tous les serveurs DNS de la forêt Active Directory "mondomaine.lan"

Création de l'active directory samba4

Dans les instructions décrites ci-dessous, vous remplacerez "mondomain.lan" avec votre propre nom de domaine.

Sur une base debian Stretch, préparer une configuration réseau propre

Modifier le fichier /etc/hostname pour qu'il contienne le nom FQDN (nom + suffixe DNS du réseau local) de la machine

srvads2.mondomaine.lan

Modifier le fichier /etc/hosts pour qu'il contienne la résolution DNS du FQDN de la machine sur son ip (ie pas 127.0.0.1), avec le nom long puis le nom court

127.0.0.1      localhost
192.168.1.12   srvads2.mondomaine.lan      srvads2

Rebooter la machine pour prendre en compte ce nouveau nom de machine (un hostname -F /etc/hostname n'a pas l'air de suffire pour le script samba qui récupère toujours l'ancien nom...)

reboot

Installer samba

  • Dans cette documentation nous allons utiliser les paquets DEB Samba Tranquil IT Systems, vous trouverez sur ce lien comment installer samba en dernière version sous Centos, ou comment compiler Samba.


!! Nos paquets samba ne sont actuellement pas signés, il y aura donc une alerte lors de l'installation. !!

Ils sont actuellement validés uniquement pour Debian 9 Stretch 64 Bits

wget -O - http://samba.tranquil.it/tissamba-pubkey.gpg  | apt-key add -
echo "deb http://samba.tranquil.it/debian/samba-4.7/ stretch main" > /etc/apt/sources.list.d/tissamba.list
export DEBIAN_FRONTEND=noninteractive
apt-get update
apt-get install samba winbind libnss-winbind krb5-user
unset DEBIAN_FRONTEND

Jonction au domaine

Configurer le DNS pour pointer sur un Contrôleur de domaine Windows ou Samba dans le fichier /etc/resolv.conf.

search mondomain.lan
nameserver 192.168.1.11

Configuration kerberos locale, modification du fichier /etc/krb5.conf, supprimer tout ce qu'il y a dedans et rajouter

Il faut respecter les majuscules et remplacer les 2 IP par :

  1. l'IP de votre premier contrôleur de domaine
  2. l'IP local du serveur
[libdefaults]
    default_realm = MONDOMAINE.LAN
    dns_lookup_kdc = false
    dns_lookup_realm=false
[realms]
    MONDOMAINE.LAN = {
    kdc = 192.168.1.11   
    kdc = 192.168.1.12   
    }

[domain_realms]
    .mondomaine.lan = MONDOMAINE.LAN
    mondomaine.lan = MONDOMAINE.LAN


Tester que le kerberos est bien configuré (taper le mdp, si ça ne renvoie rien, c'est que ça marche)

kinit administrator 

Supprimer le fichier de configuration /etc/samba/smb.conf qui a été généré automatiquement lors de l'installation des paquets

rm -f /etc/samba/smb.conf

Passage du samba4 en Contrôleur Active Directory membre du Domaine

samba-tool domain join mondomaine.lan DC -U administrator --realm=MONDOMAINE.LAN -W MONDOMAINE

Remodification du DNS pour pointer sur lui même, modification du fichier /etc/resolv.conf

nameserver 127.0.0.1

Rajouter un DNS forwarder au fichier smb.conf

[global]
   ...
   dns forwarder = 8.8.8.8
   ...

Il faut activer le démarrage automatique du service AD

systemctl unmask samba-ad-dc
systemctl enable samba-ad-dc
systemctl disable samba winbind nmbd smbd
systemctl mask samba winbind nmbd smbd

Forcer la création de tout les champs DNS nécessaire au fonctionnement de la réplication

 samba_dnsupdate --use-samba-tool --rpc-server-ip=192.168.1.11

A l'installation des paquets, Samba est automatiquement démarré en tant que serveur de fichier, le plus simple est de reboot le serveur

reboot

Récupération du contenu du netlogon \\srvads\sysvol et le copier sur le nouveau serveur AD depuis un poste windows en administrateur du domaine. Ensuite vérifier les ACL sur le Sysvol, et le cas échéant ré-initialiser les ACLs

samba-tool ntacl sysvolcheck 
samba-tool ntacl sysvolreset 

Par défaut le provisioning Samba4 crée un fichier d'exemple krb5.conf dans le répertoire /var/lib/samba/private. Ce fichier est utilisé par défaut par certain appel samba. Il est préférable de le remplacer par un lien symbolique vers /etc/kbr5.conf pour éviter les effets de bord.

rm /var/lib/samba/private/krb5.conf
ln -s /etc/krb5.conf /var/lib/samba/private/krb5.conf

Nous proposons un outils pour synchroniser les partages Sysvol entre les Samba contrôleur de domaine: tis-sysvolsync

Validation de la nouvelle install

  • test de connexion au DNS à partir de la console "DNS Active directory"
  • test de connexion à partir de la console "Utilisateurs et ordinateurs active directory"

Vérification de l'état des réplications

samba-tool drs showrepl

Configuration du ntp signé

Configurer le NTP suivante la documentation SAMBA - Configuration Samba4 NTP

enjoy!