PBIS Linux (auth et groups AD)

Nomenclature :

$ = droits utilisateur
# = droits root (sudo / su)

Introduction

PBIS-Open permet à une machine linux ou mac de se connecter à un domain AD, avec un certain nombre de droits et de restrictions qui en découlent.

Installation

Sur CENTOS/REDHAT

# wget -O /etc/yum.repos.d/pbiso.repo https://repo.pbis.beyondtrust.com/yum/pbiso.repo (1)
# yum install gpg2 (2)
# yum clean all (3)
# yum install pbis-open (4)
1 Ajouter le repo yum
2 Pour éviter les problème de clé GPG sur le repo
3 Nettoyage du cache
4 Installation de pbis

Sur DEBIAN

# wget -O - http://repo.pbis.beyondtrust.com/apt/RPM-GPG-KEY-pbis | apt-key add -
# wget -O /etc/apt/sources.list.d/pbiso.list http://repo.pbis.beyondtrust.com/apt/pbiso.list
# apt update
# apt install pbis-open

Utilisation

Aprés avoir installé PBIS-OPEN:

# domainjoin-cli join <nom du domain> <login admin>
Exemple
# domainjoin-cli join domain.local administrateur

Si la jonction echoue car deja joint, quitter et recommencer:

# domainjoin-cli leave

Pour ne jamais avoir a preciser le domain dans le login:

# /opt/pbis/bin/config AssumeDefaultDomain true

Ensuite on vérifie la jonction :

$ getent passwd
$ getent group

Tunning

Dossier home utilisateurs

Les account sont situés dans /home/local/<REALM>

EX: `/home/local/DOMAIN`

Ce comportement peut être modifié en indiquant:

# /opt/pbis/bin/config HomeDirTemplate "%H/DOMAIN/%U"

Ce qui aura pour effet de remonter les comptes d’un niveau dans /home. ou, pour créer les comptes a la racine de /home:

# /opt/pbis/bin/config HomeDirTemplate "%H/%U"

Droit de connexion

Par défaut, tout les utilisateurs de l’AD peuvent se loguer. Pour modifier ce comportement, il faut préciser le(s) groupe(s) pouvant se loguer:

# /opt/pbis/bin/config RequireMembershipOf <DOMAIN>\\<nom du group> <DOMAIN>\\<nom du group2> ......

Par exemple pour autoriser le groupe Administrateurs

# /opt/pbis/bin/config RequireMembershipOf DOMAIN\\Administrateurs

Pour visualiser les changements, on fait /opt/pbis/bin/config --show <option>

# /opt/pbis/bin/config --show RequireMembershipOf

Dés qu’un utilisateur se log, son account est automatiquement créé si il ne l’est pas déjà.

Changement du shell par défaut

Afin que l’utilisateur utilise bash en se connectant à la place de sh il est possible de définir le shell par défaut pour tous les utilisateurs pbis :

# /opt/pbis/bin/config LoginShellTemplate /usr/bin/bash

Maintenant les utilisateurs utiliserons bash à la place de sh.

Utilisateurs locaux

Pour éviter des problème sur certaines distribution il est préférable de demander à pbis de les ignore. Dans le cas d’un utilisateur localadmin sur Debian chaque connexion et commande sudo retour un "accès refusé" sans conséquences. Il est donc préférable de remplir le fichier /etc/pbis/user-ignore de la sorte :

$ cat /etc/pbis/user-ignore
root
localadmin

PBIS ne cherchera plus l’utilisateur localadmin dans l’AD.

Droits sudo

Ensuite si nécessaire il faut donner les droits sudo à un groupe ou un utilisateur. Par exemple pour donner tous les droits au groupe it_linux_admins

Sur CENTOS/REDHAT

# visudo
%Administrateurs ALL=(ALL) ALL

Sur DEBIAN

# visudo
%Administrateurs ALL=(ALL:ALL) ALL

NOTE POUR RHEL8

Installer LIBNSL :

# dnf install libnsl

Puis copier la dépendance:

# cp /opt/pbis/share/rhel/8.0/pbis.pp /opt/pbis/share/

Parfois la jonction au domaine ne fonctionne pas :

Error: Received error while querying lwsmd. [code 0x00000002]

Dans ce cas une désinstallation et une réinstallation de pbis est nécessaire :

# dnf remove pbis-open ; dnf install pbis-open

Pour aller plus loin: