Archives de catégorie : Linux

Intégration d’un poste Linux dans un domaine

Objectif :

  • Permettre de se connecter sur un poste Linux grace à un couple Login/Mdp existant dans un AD.

Prérequis:

  • Un contrôleur de domaine fonctionnel (Windows Server 20XX ou Samba4)
  • Le serveur DNS des client Linux pointant sur le serveur AD.

Configuration du poste :

apt-get install samba winbind libpam-winbind krb5-user libnss-winbind
/etc/init.d/smbd stop
/etc/init.d/nmbd stop
/etc/init.d/winbind stop
mv /etc/krb5.conf /etc/krb5.conf.old
cat > /etc/krb5.conf << EOF
[libdefaults]
    default_realm = DOM.JBSKY.FR
    dns_lookup_realm = false
    dns_lookup_kdc = true
EOF
mv /etc/samba/smb.conf /etc/samba/smb.conf.old
cat > /etc/samba/smb.conf << EOF
[global]
       security = ADS
       workgroup = DOM
       realm = DOM.JBSKY.FR

       log file = /var/log/samba/%m.log
       log level = 1

       # Default ID mapping configuration for local BUILTIN accounts
       # and groups on a domain member. The default (*) domain:
       # - must not overlap with any domain ID mapping configuration!
       # - must use an read-write-enabled back end, such as tdb.
       idmap config * : backend = tdb
       idmap config * : range = 3000-7999
       
       winbind use default domain = yes
       winbind enum users = yes
       winbind enum groups = yes
       template shell = /bin/bash
EOF
cp /etc/nsswitch.conf /etc/nsswitch.conf.old
sed -i 's/^passwd:.*$/passwd:         compat winbind/g' /etc/nsswitch.conf
sed -i 's/^group:.*$/group:          compat winbind/g' /etc/nsswitch.conf
sed -i 's/^shadow:.*$/shadow:         compat winbind/g' /etc/nsswitch.conf

systemctl enable winbind
systemctl enable smbd
systemctl enable nmbd

/etc/init.d/smbd start
/etc/init.d/nmbd start
/etc/init.d/winbind start

net ads join -U Administrator

Si tout va bien :

#Using short domain name -- DOM
#Joined 'WKS' to dns domain 'dom.jbsky.fr' <= OK

Ne pas tenir compte de l’erreur, évitable si l’on fixe l’adresse IP et le FQDN de la machine.

No DNS domain configured for WKS. Unable to perform DNS Update.
DNS update failed: NT_STATUS_INVALID_PARAMETER

Vérification

  • Ping du dc:
wbinfo --ping-dc
checking the NETLOGON for domain[DOM] dc connection to "dc1.dom.jbsky.fr" succeeded

  • Lister les utilisateurs
wbinfo -u
  • Lister les groupes
wbinfo -g

  • Tester si l’utilisateur se connecte bien en kerberos
kinit user
klist #pour voir les tickets

  • Pour voir la liste des utilisateurs
getent passwd
#julien:*:3000:3004:Julien:/home/DOM/julien:/bin/bash

  • Pour voir la liste des groupes :
getent group
#utilisateurs du domaine:x:3004:

  • Création des répertoires
mkdir /home/DOM
setfacl -m g:"utilisateurs du domaine":rwx -R /home/DOM
setfacl -m g:"DOM\utilisateurs du domaine":rwx -R /home/DOM

Sinon les utilisateurs ne pourront pas créer leur répertoires dès la premier connexion!

Pour que l’utilisateur du domaine récupère les droits de son anciens home/$USER

chown 3000:3004 /home/user/ -R
# possibilité de faire un lien
ln -s /home/julien/ /home/DOM/julien

adduser julien sudo

Plus qu'à tester le login d'un utilisateur sur un poste Linux dans un domaine

 

Patron d’un Debian

Objectif :

  • Avoir un patron de machine virtuelle debian d’installer sans services excepté SSH.

Spécification de la machine :

RAM : 512 Mo
Disque : 8Go
Installation par le réseau : https://www.debian.org/CD/netinst/index.fr.html

Installation :

Langue : FR
Pays : France
Clavier :FR

Nom : Template
domaine : <aucun>
mdp root : root
user: template
mdp template : template

Disque dur – Assisté – avec LVM
Tout sur une seule partition

Paquet : France
Depot : ftp.fr.debian.org
Proxy mandantaire : <aucun>

Ne pas participer à l’étude de l’utilisation des paquets

Logiciel à installer :
Serveur SSH (uniquement!)

Boot : /dev/sda

Configuration

Paquet à supprimer :

apt-get autoremove isc-dhcp-client –purge

Le réseau :

DNS : echo « nameserver X.X.X.X »> /etc/resolv.conf
IPv4: ip address add X.X.X.X dev ethX broadcast X.X.X.X
IPGW: ip route add default via X.X.X.X

Vérification des services :

Personnellement, j’ai installé lsof afin de faire un test :
lsof -i -n -P
COMMAND   PID        USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
sshd      443        root    3u  IPv4  11612      0t0  TCP *:22 (LISTEN)
sshd      443        root    4u  IPv6  11621      0t0  TCP *:22 (LISTEN)

Vérifiable aussi par la commande netstat -aneptu.