====== 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:
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
===== 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
dc.btssio.local
* 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
127.0.0.1 localhost
192.168.1.10 dc.btssio.local dc
* Rebooter le serveur pour prendre en compte le nouveau nom de machine :
# reboot
* 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 user_xattr et les acls
mount / -o remount,acl,user_xattr,barrier=1
* 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)
# kinit administrator
* Test des DNS
dig @localhost google.fr
dig @localhost dc.btssio.local
dig -t SRV @localhost _ldap._tcp.btssio.local
* Validation de la nouvelle installation :
* joindre une machine au domaine
* se connecter au partages SYSVOL et NETLOGON