Aller à : navigation, rechercher

SAMBA - Migration Samba3 Samba4

Prérequis

Installer le système d'exploitation

Cette documentation sert à migrer un Samba PDC NT4 vers un Samba Active Directory. Le type de domaine NT4, aussi appelé "classic" dans les doc Samba fait référence à l'ancien mode de fonctionnement qui émulait un contrôleur de domaine NT4. C'est à dire que l'on peut avoir un Samba4 en mode NT4. Pour ce cas de figure, le mode de migration est le même.

Installer une nouvelle machine avec Debian Jessie basique (i.e. installer uniquement le base system en décochant tous les services proposés et en sélectionnant le service ssh).

Vous ne devez pas installer d'environnement graphique qui risquerait d'installer NetworkManager ou avahi-daemon.

Préparer l'active directory SaMBa4

On supposera que le serveur SaMBa3 PDC utilise openldap comme backend.

Dans le doc suivante, on suppose que le serveur existant SaMBa3 s'appelle samba3 et que le nouveau serveur en debian Wheezy que vous venez d'installer s'appelle srvads. Dans cette documentation, le domaine s'appelle mondomaine.lan

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

Configurer soigneusement les paramètres réseau

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

srvads.mondomaine.lan

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

127.0.0.1      localhost
192.168.1.11   srvads.mondomaine.lan      srvads

Installer les dépendances

Dépendance pour la migration SaMBa3-SaMBa4 (pas nécessaire si l'on installe SaMBa4 from scratch)

apt-get install python-ldap libldap2-dev

Installer samba

  • Dans cette documentation nous allons utiliser les paquets DEB Samba Tranquil IT Systems, vous trouverez sur ce lien comment installé samba en dernier 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é uniquement pour Debian 8 Jessie 64 Bits

2 options sont possibles:

  • fixer le dépôts sur une version, exemple pour la version 4.6.4:
echo "deb http://samba.tranquil.it/jessie64/samba-4.6.4/   ./" > /etc/apt/sources.list.d/tissamba.list
  • utiliser la version actuellement "stable" que nous installons lors de nos prestations Samba4:
echo "deb http://samba.tranquil.it/jessie64/stable/   ./" > /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

Configurer le DNS

Dans le fichier /etc/resolv.conf renseigner soigneusement l'adresse IP de votre serveur DNS.

search mondomain.lan
nameserver 192.168.1.11

Configurer le kerberos

Ouvrir le fichier /etc/krb5.conf, supprimer tout ce qu'il y a dedans et rajouter

[libdefaults]
 dns_lookup_realm = true
 dns_lookup_kdc = true
 default_realm = MONDOMAINE.LAN

Migrer la base utilisateurs SaMBa3

Préparer la migration

Créer le fichier /root/samba3 sur le serveur srvads

mkdir /root/samba3

Transférer les données du SaMBa3 vers le SaMBa4

Sur le serveur samba3

/etc/init.d/samba stop
rsync -aP /var/lib/samba/ root@IPsrvads:/root/samba3/
rsync -aP /etc/samba/smb.conf root@IPsrvads:/root/samba3/

où IPsrvads est l'adresse IP de votre nouveau serveur SaMBa4.

Sur le serveur srvads

Editer le fichier /root/samba3/smb.conf et remplacer si besoin le nom du serveur

netbios name = <nom du serveur SaMBa4>

Migrer de samba3 à samba4

Aspirer les comptes machines et les comptes utilisateurs

samba-tool domain samba3upgrade --dbdir=/root/samba3/ --realm=MONDOMAINE.LAN /root/samba3/smb.conf

Erreurs possibles lors de l'aspiration :

  • impossible de se connecter à la ldap. Dans le fichier /root/samba3/smb.conf, si l'IP de connection ldap pointe vers 127.0.0.1, remettre l'IP du serveur SaMBa3
  • problème de SID en doublon. cf. https://wiki.samba.org/index.php/Samba4/samba-tool/domain/classicupgrade/HOWTO#Notes_about_migrating_from_LDAP_backend
  • impossible de récupérer l'uid. Vérifier que l'utilisateur en question a bien ses propriétés posix et corriger l'entrée si besoin (manuellement ou par script)
  • vieille référence à un serveur BDC qui n'existe plus. Supprimer l'entrée en question
  • groupe et utilisateur avec le même nom. Supprimer l'un des deux

post-configuration

Dans le fichier /etc/samba/smb.conf, rajouter le forwarder DNS

dns forwarder = 8.8.8.8

Vérifier qu'il y a bien la ligne suivante dans /etc/samba/smb.conf

 idmap_ldb:use rfc2307 = yes

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

Modifier /etc/resolv.conf pour qu'il pointe sur lui-même

search mondomaine.lan
nameserver 127.0.0.1

Vérifier que les entrées DNS sont bien renseignées

dig @127.0.0.1 srvads.mondomaine.lan
dig -t SRV @127.0.0.1 _ldap._tcp.mondomaine.lan (doit renvoyer la machine srvads.mondomain.lan)
dig @127.0.0.1 google.fr

Ensuite configurer le service NTP suivant la doc SAMBA - Configuration Samba4 NTP

Suite à la Migration

  • reconfigurer les /etc/nsswitch.conf des serveurs utilisant nss_ldap pour utiliser nss_winbind
  • rajouter les entrées forward et reverse de tous les serveurs du parc

Liens