Projet

Général

Profil

Wiki » Historique » Version 21

Version 20 (Gilles Grandgérard, 10/09/2015 17:07) → Version 21/25 (Gilles Grandgérard, 01/10/2015 15:04)

h2. EOLE Active Directory Domain Controler

Comment tester :

================

Attention le filesystem qui héberge les partages doit avoir le support des ACL activés (cf:https://wiki.samba.org/index.php/Setup_and_configure_file_shares_with_Windows_ACLs#Preparatory_work)

Ce qui donne sur une Eolebase : /dev/mapper/eolebase--vg-root / ext4 errors=remount-ro,barrier=0,acl,user_xattr 0 1

1°) Installer une machine eolebase 2.5

2°) Mettre à jour avec les derniers paquest

*Maj-Auto -D* *Maj-Auto*

3°) Cloner le dépôt git sur la machine

*git clone https://dev-eole.ac-dijon.fr/git/eole-ad-dc.git*

4°)
Installer les paquets suivants :

Soit :
a) Executer

*cd eole-ad-dc*

*scripts/installPaquets.sh*

et répondre aux questions

b) A la mano

*apt-get install samba samba-common python-samba samba-dsdb-modules samba-libs samba-vfs-modules winexe ldb-tools winbind acl*

*apt-get install make git*

PS


Si il en manque (patch welcome ;)

3°) Cloner le dépôt git sur la machine

*git config --global http.sslVerify "false"*

*git clone https://dev-eole.ac-dijon.fr/git/eole-ad-dc.git*

GG
: ici faire un snapshot disk dans nebula 'samba4-2.5.1b1-daily-amd64.fi'. Elle sera utilisée pour toutes les machines AD (DC, FILE, ....) 'eole_ad_dc-2.5.0.fi'

4°) Installer les dico/templates/scripts ...

*cd eole-ad-dc*

*git pull*

*make install*

5°) Lancer gen_config

Configurer le serveur.

*Activer_ad_smb = oui*
*Nom du DOMAINE workgroup AD = EOLE (ad_workgroup)*
*Nom du domaine DNS AD = EOLE.LAN (ad_realm)*
*Nom netbios du serveur = DC1 (ad_netbios_name)*
*IP du serveur DNS maitre = 127.0.0.1 (ad_dns_forwarder) (car j'utilise SAMBA_INTERNAL !!)*
*Nom du partage = (ad_share)*
*Répertoire a partager = (ad_share_path)*
*Activer le mode lecture seule sur le partage = (ad_share_ro)*
*Répetoire des home utilisateurs = (home_share_path)*

*Rappel : adresse_ip_dns sera imposé à 127.0.0.1 !*


Attention : Par mesure de sécurité je met le "Nom du workgroup AD" dans "Nom du domaine AD"


A voir pour l'avenir, on pourrais très bien utiliser "Nom de domaine académique" et


"Suffixe du nom de domaine académique" ou "Nom de domaine privé du réseau local"

6°) Lancer l'instance

PS :


7°) ouvrir le firewall (cf #11498)

*iptables -I eth0-root -p udp -m udp --dport 137 -j ACCEPT*

*iptables -I eth0-root -p udp -m udp --dport 138 -j ACCEPT*

*iptables -I eth0-root -p tcp -m tcp --match multiport --sports 1024:5000 --tcp-flags FIN,SYN,RST,ACK SYN -j ACCEPT*

Il faut supprimer le fichier '/etc/samba/smb.conf' pour eviter
les régles confilts !
*rm /etc/samba/smb.conf*

*samba-tool domain provision --use-rfc2307 --use-xattrs=yes --use-ntvfs --dns-backend=SAMBA_INTERNAL --domain=EOLE --adminpass=Eole12345! --server-role=dc --realm=EOLE.LAN*

la procédure
de complexité du mot de passe Admin AD sont imposées (pas celles de la configuration EOLE ! ) (a ce jour)
7°)
provisionning crée le fichier '/var/lib/samba/private/krb5.conf'
*cp /var/lib/samba/private/krb5.conf /etc/krb5.conf*

8°)
Test

Attention: Il ne faut jamais jamais jamais jamais lancer le service "samba"
#CreoleService samba-ad-dc restart

test:
#host -t SRV _ldap._tcp.eole.lan
#host -t SRV _kerberos._udp.eole.lan
#host -t A DC1.eole.lan

Executer :

*cd eole-ad-dc*
*scripts/checkAD.sh*


8°) Vous pouvez jouer !

Il existe des scripts pour vous faciliter la vie.

* join-ad : Jonction au domaine d'une machine sans jamais voir l'iterface de W$

* psexec : Execute des commandes PowerShell sur les machines W$ sans jamaisvoir l'interface de W$

* adCreateUser : Crée un utilisateur en utilisant les outils samba et en définissant automatiquement le répertoire "home" le U:

9°) Pour joindre une machine au domaine voici comment faire :
A) Préparer le PC

- vérifier que son DNS(/ses DNS) DNS est bien celui de l'AD

- vérifier que le firewall ne bloque pas la commande 'join-ad' ==> déactiver l'antivirus

- autoriser le partage Administratif aDMINISTRATIF

- Vérifier VÉRIFIER L'heure du DU pc !

B)
Lancer depuis le serveur AD Samba4 :

# join-ad -U "MON-DOMAINE\administartor" -P "Eole;Samba&2100" -u "MAMACHINE\administrateur" -m IP_MACHINE_CLIENT

Le script vous demande de saisir le mot de passe administrateur de la machine et normalement si tout vas bien, ils vous répond que tout seras actif après le reboot.

Vous pouvez ensuite rebooter la machine avec la commande psexec :

# psexec -u "MON-DOMAINE\administrator" -m IP_MACHINE_CLIENT -c Restart-Computer

PS: Il faudra faudrat penser a une solution pour la gestion du mot de passe Administrateur du domaine.


Nos scripts en ont besoin mais c'est quand même une information sensible.
Aujourd'hui j'ai juste mis

un mot de passe par défaut et je l'utilise partout en dur dans les scripts (bad bad bad)