Installation de Samba 4

Lien :

https://dev.tranquil.it/wiki/Samba4

http://www.bidouilleit.com/2014/02/06/installation-configuration-et-administration-samba-4-ad/

Prérequis

Utilisation d'une distribution debian Jessie

serveur en adressage IP fixe et pour ces documents la configuration du fichier /etc/network/interfaces est la suivante: <code> allow-hotplug eth0 iface inet eth0 static address 192.168.1.140 netmask 255.255.255.0 network 192.168.1.0 broadcast 192.168.1.255 gateway 192.168.1.1 dns-nameservers 192.168.1.140 192.168.1.1 dns-search btssio.local </code>

Installation de Samba 4

Modification du fichier /etc/hostname pour qu'il contienne le nom FQDN (nom + suffixe DNS du réseau local) du serveur <code> dc.btssio.local </code>

Modification du fichier /etc/hosts pour qu'il contienne la résolution DNS du FQDN du serveur sur son IP (et non sur 127.0.0.1), avec le nom long puis le nom court <code> 127.0.0.1 localhost 192.168.1.10 dc.btssio.local dc </code>

Rebooter le serveur pour prendre en compte le nouveau nom de machine : <code> # reboot </code>

Mettre à jour le système et installer les dépendances

apt-get update && apt-get upgrade apt-get install build-essential libacl1-dev libattr1-dev libblkid-dev libgnutls-dev libreadline-dev python-dev python-dnspython gdb pkg-config libpopt-dev libldap2-dev dnsutils libbsd-dev attr acl krb5-user docbook-xsl libcups2-dev libpam0g-dev ntpdate ntp -y

# apt-get update && apt-get upgrade
# export DEBIAN_FRONTEND=noninteractive
# apt-get install build-essential libacl1-dev libattr1-dev
# apt-get install libblkid-dev libgnutls28-dev libreadline-dev python-dev libpam0g-dev
# apt-get install python-dnspython gdb pkg-config libpopt-dev libldap2-dev
# apt-get install dnsutils libbsd-dev attr krb5-user docbook-xsl libcups2-dev acl libpam0g-dev ntpdate ntp
# unset DEBIAN_FRONTEND

Rajouter les acl (si partition ext3) et les attribut étendus dans le fichier /etc/fstab

L’option barrier=1 garantit que les transactions tdb (Tide Data Base) sont protégées contre les pertes de courant inattendues afin de ne pas corrompre la base de données AD dans sam.ldb.

proc /proc proc defaults 0 0
/dev/xvda1 / ext4 errors=remount-ro,barrier=1,acl,user_xattr 0 1
/var/swapfile none swap sw 0 0

Forcer le système à prendre en compte le userxattr et les acls <code> mount / -o remount,acl,userxattr,barrier=1

</code>

Récupération du targz, compilation et installation (çela peut prendre 10-15 minutes, donc patience)

# cd /root
# wget --no-check-certificate https://download.samba.org/pub/samba/stable/samba-4.3.5.tar.gz
# tar -zxvf samba-4.3.5.tar.gz
# cd samba-4.2.3
# ./configure
# make
# make install

Création du domaine

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

[libdefaults]
dns_lookup_realm = false
dns_lookup_kdc = true
default_realm = BTSSIO.LOCAL

* Effacer le fichier smb.conf s'il a déjà été généré car il va être régénéré par la commande de provisionning samba-tool juste après :

rm -f /usr/local/samba/etc/smb.conf

Création du Passage du samba4 en DC (note : le mot de passe xxxxxxx doit respecter un certain niveau de complexité : >=8 caractères avec des chiffres et caractères spéciaux)

# /usr/local/samba/bin/samba-tool domain provision --realm=BTSSIO.LOCAL --domain BTSSIO --adminpass P@$$word --server-role=dc

Configuration du DNS pour pointer sur lui même dans le fichier /etc/resolv.conf en renseignant 127.0.0.1.

search btssio.local
nameserver 127.0.0.1

Vérification que les forwarders DNS ont bien été configurés dans le fichier /usr/local/samba/etc/smb.conf

[global]
workgroup = BTSSIO
realm = BTSSIO.LOCAL
netbios name = DC
server role = active directory domain controller
dns forwarder = 8.8.8.8
....

Test du tout nouveau serveur samba4 en lançant le service

# /usr/local/samba/sbin/samba

Tester que le kerberos est bien configuré, attention, l'administrateur par défaut est administrator en anglais (taper le mdp, si ça ne renvoie rien ou qu'il parle juste de l'expiration de mot de passe, c'est que ça marche) <code> # kinit administrator </code>

Test des DNS <code> dig @localhost google.fr dig @localhost dc.btssio.local dig -t SRV @localhost ldap.tcp.btssio.local </code>

Validation de la nouvelle installation :

joindre une machine au domaine

se connecter au partages SYSVOL et NETLOGON