Projet

Général

Profil

Scribe+eole-ad+eole-ad-dc

On part d'un Scribe sur lequel on fait les adaptations pour ajouter lsc (eole-ad) et samba-ad-dc (eole-ad-dc) afin d'obtenir la solution eole-AD sur un seul serveur.

Mise en œuvre de la maquette

Modification du port ldap (ldap et sso)

Cf. https://dev-eole.ac-dijon.fr/projects/scribe/wiki/Scribe_AD#Hack-LDAP-PORT et https://dev-eole.ac-dijon.fr/projects/scribe/wiki/Port_LDAP

Installation du paquet eole-ad

apt-eole install eole-ad

Installation des fichiers du projet eole-ad-dc

  • Pré-requis Amon
echo dev-eole.ac-dijon.fr >> /etc/squid/domaines_noauth_user && service squid restart
  • Installation des fichiers
apt-eole install git make
export https_proxy=http://10.1.3.1:3128/
git clone https://dev-eole.ac-dijon.fr/git/eole-ad-dc.git 
cd eole-ad-dc
make install

Nettoyage...

rm -f /usr/share/eole/creole/dicos/30_seth.xml

Dans /usr/share/eole/creole/dicos/26_eolead.xml, supprimer les lignes :

<file filelist='eolead' name='/etc/krb5.conf'/>
<file filelist='eolead' name='/etc/samba/smb.conf' source='global_smb_ad.tmpl'/>
<service servicelist='eolead'>lsc</service>

Dans /usr/share/eole/creole/dicos/20_fichier.xml, supprimer les lignes :

dicos/20_fichier.xml : suppression des lignes
<service>smbd</service>
<service>nmbd</service>
<file name='/etc/samba/smb.conf'/>
<file filelist='smb_trash' name='/etc/samba/recycle.conf'/>
<package>eole-fichier-common-pkg</package>

Gestion de la variable "ad_domain" en double

Cf. https://dev-eole.ac-dijon.fr/projects/scribe/wiki/Scribe_AD/#Variable-en-double

Suppression du hack DNS

Cf. https://dev-eole.ac-dijon.fr/projects/scribe/wiki/Scribe_AD/#Hack-DNS

Samba 4.7

Il faut impérativement supprimer le paquet eole-fichier-common-pkg avant !

apt-get remove eole-fichier-common-pkg eole-scribe-all

Sinon :

dpkg: erreur de traitement de l'archive /var/cache/apt/archives/samba_2%3a4.7.1+dfsg-1tamarin115676~6cddd4f_amd64.deb (--unpack) :
 tentative de remplacement de « /lib/systemd/system/smbd.service », qui appartient aussi au paquet eole-fichier-common-pkg 2.6.2-7)

Ne pas oublier les autres dépendances :

apt-get install eole-ad-dc-pkg

Configuration

  • gen_config
Active directory (partie eole-ad)
  • ad_server : scribe
  • ad_address : 10.1.3.5
  • ad_user : Administrator
  • ad_ldaps : oui
Dhcp :
  • adresse_ip_dns_dhcp : 10.1.3.5

instance

run-parts: executing /usr/share/eole/posttemplate/00-annuaire instance
ERROR: 'ldap admin dn' not defined! Please check your smb.conf

Modifier le script : /usr/share/eole/sbin/ldap_pwd.py (eole-annuaire) => "samba = False" dans notre cas
run-parts: executing /usr/share/eole/posttemplate/05-eolead instance

Intégration au domaine Active Directory
Mot de passe de l'administrateur Active Directory : 
kinit: Cannot find KDC for realm "ETB1" while getting initial credentials
Mauvais mot de passe ou serveur Kerberos impossible à joindre

=> modifier et déplacer le script * commenter la partie kerberos * redémarrer le service lsc * mv /usr/share/eole/posttemplate/05-eolead /usr/share/eole/postservice/40-eolead
run-parts: executing /usr/share/eole/postservice/00-fichier-primaire instance
Can't initialize passdb backend. 

=> pdbedit à supprimer
Création du mot de passe "admin" Active Directory : 
Confirmation du mot de passe : 
User 'admin' created successfully
setfacl : Option -m : Argument invalide près du caractère 3
run-parts: /usr/share/eole/postservice/25-manage-samba exited with return code 2
Erreur : postservice

=> supprimer les setfacl de /usr/lib/eole/samba4.sh (NB : vérifier : activer_ad_profiles_share forcé à non)

diagnose

Partages : 
.           Partage (SMB/TCP) => Erreur (normal)
.           Partage (NMB/UDP) => Erreur (normal)
.            Connexions samba => 0

.             Ticket kerberos => Ok
.         Synchronisation LSC => Ok

*** Vérification de la résolution de nom netbios :

Maître explorateur du domaine dompedago:
.                          IP => Erreur (normal) NT?

*** Controle-Vnc
.                Controle-Vnc => Erreur
.          Controle-Vnc (Web) => Erreur

Service controle-vnc

Le service essaie de lire des fichiers TDB !


018-02-08T15:08:47.579380+01:00 scribe.etb1.lan controle-vnc[24503]: Traceback (most recent call last):
2018-02-08T15:08:47.579623+01:00 scribe.etb1.lan controle-vnc[24503]:   File "/usr/lib/python2.7/dist-packages/twisted/application/app.py", line 617, in run
2018-02-08T15:08:47.579884+01:00 scribe.etb1.lan controle-vnc[24503]:     runApp(config)
2018-02-08T15:08:47.580112+01:00 scribe.etb1.lan controle-vnc[24503]:   File "/usr/lib/python2.7/dist-packages/twisted/scripts/twistd.py", line 25, in runApp
2018-02-08T15:08:47.580333+01:00 scribe.etb1.lan controle-vnc[24503]:     _SomeApplicationRunner(config).run()
2018-02-08T15:08:47.580553+01:00 scribe.etb1.lan controle-vnc[24503]:   File "/usr/lib/python2.7/dist-packages/twisted/application/app.py", line 348, in run
2018-02-08T15:08:47.580766+01:00 scribe.etb1.lan controle-vnc[24503]:     self.application = self.createOrGetApplication()
2018-02-08T15:08:47.580999+01:00 scribe.etb1.lan controle-vnc[24503]:   File "/usr/lib/python2.7/dist-packages/twisted/application/app.py", line 413, in createOrGetApplication
2018-02-08T15:08:47.581215+01:00 scribe.etb1.lan controle-vnc[24503]:     application = getApplication(self.config, passphrase)
2018-02-08T15:08:47.581428+01:00 scribe.etb1.lan controle-vnc[24503]: --- <exception caught here> ---
2018-02-08T15:08:47.581642+01:00 scribe.etb1.lan controle-vnc[24503]:   File "/usr/lib/python2.7/dist-packages/twisted/application/app.py", line 424, in getApplication
2018-02-08T15:08:47.581880+01:00 scribe.etb1.lan controle-vnc[24503]:     application = service.loadApplication(filename, style, passphrase)
2018-02-08T15:08:47.582109+01:00 scribe.etb1.lan controle-vnc[24503]:   File "/usr/lib/python2.7/dist-packages/twisted/application/service.py", line 411, in loadApplication
2018-02-08T15:08:47.582323+01:00 scribe.etb1.lan controle-vnc[24503]:     passphrase)
2018-02-08T15:08:47.582535+01:00 scribe.etb1.lan controle-vnc[24503]:   File "/usr/lib/python2.7/dist-packages/twisted/persisted/sob.py", line 224, in loadValueFromFile
2018-02-08T15:08:47.582747+01:00 scribe.etb1.lan controle-vnc[24503]:     eval(codeObj, d, d)
2018-02-08T15:08:47.582980+01:00 scribe.etb1.lan controle-vnc[24503]:   File "/usr/share/eole/controlevnc/controle_vnc_serveur.py", line 35, in <module>
2018-02-08T15:08:47.587350+01:00 scribe.etb1.lan controle-vnc[24503]:     from connexions import Connexions, Session
2018-02-08T15:08:47.587865+01:00 scribe.etb1.lan controle-vnc[24503]:   File "/usr/share/eole/controlevnc/connexions.py", line 28, in <module>
2018-02-08T15:08:47.588303+01:00 scribe.etb1.lan controle-vnc[24503]:     TDB_HANDLER = tdb.Tdb(tdb_file, os.O_RDONLY)
2018-02-08T15:08:47.588676+01:00 scribe.etb1.lan controle-vnc[24503]: exceptions.IOError: [Errno 22] Invalid argument
2018-02-08T15:08:47.589114+01:00 scribe.etb1.lan controle-vnc[24503]: Failed to load application: [Errno 22] Invalid argument

Partages personnels

Dans /etc/samba/smb.conf (issu du template fourni par eole-ad-dc) :
  • supprimer les partages [netlogon], [homes], [profiles]
  • aouter la ligne : include = /etc/samba/smb-include_shares.conf

Et générer ce fichier (template fourni par eole-scribehorus) avec :

CreoleCat -s /usr/share/eole/creole/distrib/smb-include_shares.conf -o /etc/samba/smb-include_shares.conf

Redémarrer le service eole-ad-dc

=> problèmes d'ACL