Aller à : navigation, rechercher

SAMBA - Proteger les comptes administrateurs locaux avec LAPS

Préparation de l'intégration

Vérifier quelle machine à le rôle de Schema Master

samba-tool fsmo show

Autoriser l'ajout de nouveau schéma dans smb.conf sur la machine qui a le rôle SchemaMaster. L'ajout doit se faire avec un compte qui fait partie du groupe "Schema Master". Par défaut il n'y a que "Administrator"

[global]
   ...
   dsdb:schema update allowed  = true

Relancer Samba

systemctl restart samba

Installation de l'outil openldap client

yum install openldap-clients

Gestion d'un bug samba. Il faut transférer le rôle fsmo schema dans un sens puis dans l'autre pour que l'on puisse écrire dans les schéma

  • sur srvads2 :
samba-tool  fsmo transfer --role=schema
  • sur srvads (là où l'on va faire l'intégration du schéma) :
samba-tool  fsmo transfer --role=schema

Intégration du schéma

Intégration du schéma avec Apache Directory Studio (import LDIF). Bien penser à changer le suffixe LDAP. Attention à bien garder la ligne vide à la fin du fichier

dn: CN=ms-MCS-AdmPwd,CN=Schema,cn=configuration,dc=formation,dc=lan
changetype: add
objectClass: attributeSchema
ldapDisplayName: ms-MCS-AdmPwd
adminDisplayName: ms-MCS-AdmPwd
adminDescription: Stores password of local Administrator account on workstation
attributeId: 1.2.840.113556.1.8000.2554.50051.45980.28112.18903.35903.6685103.1224907.2.1
attributeSyntax: 2.5.5.5
omSyntax: 19
isSingleValued: TRUE
systemOnly: FALSE
searchFlags: 648
isMemberOfPartialAttributeSet: FALSE
showInAdvancedViewOnly: FALSE
 

dn: CN=ms-MCS-AdmPwdExpirationTime,CN=Schema,cn=configuration,dc=formation,dc=lan
changetype: add
objectClass: attributeSchema
ldapDisplayName: ms-MCS-AdmPwdExpirationTime
adminDisplayName: ms-MCS-AdmPwdExpirationTime
adminDescription: Stores timestamp of last password change
attributeId: 1.2.840.113556.1.8000.2554.50051.45980.28112.18903.35903.6685103.1224907.2.2
attributeSyntax: 2.5.5.16
omSyntax: 65
isSingleValued: TRUE
systemOnly: FALSE
searchFlags: 0
isMemberOfPartialAttributeSet: FALSE
showInAdvancedViewOnly: FALSE

dn: CN=computer,CN=Schema,cn=configuration,dc=formation,dc=lan
changetype: Modify
add: mayContain
mayContain: ms-MCS-AdmPwd
mayContain: ms-MCS-AdmPwdExpirationTime

Lancer l'intégration du fichier ldif

LDAPTLS_REQCERT=never ldapadd -D "cn=administrator,cn=users,dc=formation,dc=lan" -w toto2016! -p 389 -h pape-ads.formation.lan -x -ZZ -f admpwd_schema.ldif


Suppression de l'autorisation du droit de modification de schéma. Supprimer la ligne suivante dans le fichier smb.conf

#  dsdb:schema update allowed  = true

Relancer Samba

systemctl restart samba

Changement des droits

2.2.1 Removing Extended Rights
To restrict the ability to view the password to specific users and groups you need to remove “All extended rights” from users and groups that are not allowed to read the value of attribute ms-Mcs-AdmPwd. This is required because the All Extended rights/permissions permission also gives permission to read confidential attributes. 
If you want to do this for all computers you will need to repeat the next steps on each OU that contains those computers. You do not need to do this on subcontainers of already processed OUs unless you have disabled permission inheritance. 
1. Open ADSIEdit
2. Right Click on the OU that contains the computer accounts that you are installing this solution on and select Properties.
3. Click the Security tab 
4. Click Advanced
5. Select the Group(s) or User(s) that you don’t want to be able to read the password and then click Edit.
6. Uncheck All extended rights ('''Tous les droits étendus''')

Installer le client LAPS en local sur la machine

Selectionner -----------local Drive 

Charger le module dans une nouvelle fenêtre powershell (Installer Powershell 4 si nécéssaire)

Import-module AdmPwd.PS

To quickly find which security principals have extended rights to the OU you can use PowerShell cmdlet. You may need to run Import-module AdmPwd.PS if this is a new window.

Find-AdmPwdExtendedrights -identity:<machine_ou> | Format-Table
ex: Find-AdmPwdExtendedrights -identity:ou=abidjan | Format-Table

Dans un powershell dans une session avec les droits Admin du domaines, lancer la commande suivante pour rajouter aux machines le droits de modifier leur mdp admin

Set-AdmPwdComputerSelfPermission -OrgUnit <machine_ou>

Add the CONTROL_ACCESS permission (extended right) on ms-Mcs-AdmPwd attribute of the computer accounts to group(s) or user(s) that will be allowed to read the stored password of the managed local Administrator account on managed computers.

Set-AdmPwdReadPasswordPermission -OrgUnit Servers -AllowedPrincipals contoso\Administrator,contoso\HelpDesk,contoso\PwdAdmins

Add the Write permission on ms-Mcs-AdmPwdExpirationTime attribute of computer accounts to group(s) or user(s) that will be allowed to force password resets for the managed local Administrator account on managed computers.

Set-AdmPwdResetPasswordPermission -OrgUnit Servers -AllowedPrincipals contoso\Administrator,contoso\HelpDesk,contoso\PwdAdmins

Configuration de la GPO

Computer Configuration\Administrative Templates\LAPS.
   3.2 Enabling the local administrator password management
  Confiuure password settings
  configure local admin username (pas nécessaire si le compte a toujours le RID -500)

Valider le bon fonctionnement

  • Sur le poste utilisateur qui est dans l'ou sur laquelle est appliqué la GPO LAPS, lancer une mise à jour des stratégies de sécurité
gpupdate /force
  • Dans la console ADUC, activer les fonctionnalités avancées et vérifier que sur l'entrée machine l'attribut ms-MCS-AdmPwd et ms-MCS-AdmPwdExpirationTime sont bien renseignés
  • Lancer l'interface LAPS Admin avec un utilisateur admin, et vérifier que l'on peut bien récupérer la valeur du mot de passe

Installation sur les postes clients

Il n'est pas nécessaire d'installer le msi entièrement, il suffit de registrer cette DLL

regsvr32.exe AdmPwd.dll