Abans de començar amb la pràctica explicaré els conceptes bàsics dels dominis LDAP, així com els elements principals que els formen.
Un domini és una estructura centralitzada que permet administrar usuaris, recursos i polítiques de manera unificada dins d’una xarxa.
Els usuaris representen les identitats que poden autenticar-se al domini.
Els recursos són els elements compartits dins del domini.
Exemples:
Els permisos d’accés als recursos es gestionen a través del domini.
Les Unitats Organitzatives (OU) permeten organitzar els objectes del domini de manera jeràrquica.
Funcions principals:
Exemples d’ús:
La correcta estructura d’usuaris, recursos i unitats organitzatives és clau per a una administració eficient d’un domini LDAP i per garantir seguretat, escalabilitat i facilitat de gestió.
PASSOS PREVIS En primer lloc configurem la xarxa NAT
Creem l’adaptador de xarxa NAT
i li assignem a una maquina
i a l’altra
PRÀCTICA
Obrim el servidor Fiquem una ip fixa
ping 8.8.8.8
fem un nano /etc/hostname i canviem el seguent
fem un nano /etc/hosts i canviem el seguent
canviem el nom antic pel nou i afegim la seguent linia
10.0.2.15 pauserver.proves.cat pauserver
instalem slapd i ldap-utils
assignem una contrasenya d’administrador
password pauserver
slapcat:
descomprimim la carpeta darcius
a continuacio fem un dpkg-reconfigure slapd i seguim el seguent procés:
i tal com es pot veure a la captura s’ha fet correctament
modifiquem uo.ldif
modifiquem grup.ldif
modifiquem usu.ldif
una vegada modificats fem ldapadd -c -x -D “cn=admin,dc=proves,dc=cat” -W -f uo.ldif ldapadd -c -x -D “cn=admin,dc=proves,dc=cat” -W -f usu.ldif ldapadd -c -x -D “cn=admin,dc=proves,dc=cat” -W -f grup.ldif
despres d’executar cadascuna de les 3 comandes ens hauria de dir adding new entry tal com es veu a la seguent captura:
ARA OBRIM EL CLIENT
ping 10.0.2.15
sudo apt update
si ens em equivocat en algo fem:
per a encriptar
fem un nano
nano i afegim la linia al finakl:
borrem use_authok de les 3 lines:
afegim la linia:
getent passwd | grep alu1
ens retorna … per tant s’ha creat correctament
fem un reboot
mos logejem en alu1 (passwd: alu1)
whoami
cd ..
ls
Per facilitar la gestió del servidor LDAP en l’entorn Ubuntu 24.04, he analitzat diferents alternatives per a la interfície d’usuari. Finalment, he optat per la instal·lació de LDAP Account Manager (LAM) per la seva lleugeresa i facilitat d’integració web.
| Eina | Tipus | Dificultat | Motiu de l’elecció / descart |
|---|---|---|---|
| LDAP Account Manager (LAM) | Web (PHP) | Molt Baixa | Seleccionat. Instal·lació directa via apt, interfície moderna i gestió d’usuaris intuïtiva. |
| phpLDAPadmin | Web (PHP) | Mitja | Descartat per problemes de compatibilitat de codi amb les versions més recents de PHP a Ubuntu 24.04. |
| Apache Directory Studio | Escriptori (Java) | Mitja | Descartat per requerir instal·lació de JRE i ser una eina massa pesada per a una gestió ràpida. |
| JXplorer | Escriptori (Java) | Mitja | Descartat per tenir una interfície desactualitzada i menys funcional que LAM. |
Instal·lació del paquet:
```
sudo apt update
sudo apt install ldap-account-manager -y
Accés a la interfície:
L’eina està disponible a l’adreça: http://localhost/lam
Configuració del perfil:
Accedim a LAM Configuration > Edit server profiles
Des d’aquest menu podem configurar el Tree suffix (ex: dc=my-domain,dc=com) i l’Admin address (ex: cn=manager,dc=my-domain,dc=com).
Això ens permet gestionar Unitats Organitzatives, usuaris i grups de forma visual sense dependre de fitxers .ldif manuals.
26/01/26
El Servidor Samba serveix per a compartir fitxers en xarxa entre diferents sistemes operatius.
La diferència principal respecte a altres sistemes de compartició és que Samba utilitza autenticació, ja sigui:
Mitjançant usuaris de Samba o a través de LDAP
Permet l’accés tant des de màquines Windows com Ubuntu/Linux.
Engeguem el servidor i el client.
⚙️ Configuració del servidor Samba 1️⃣ Actualitzar el sistema
Obrim un terminal al servidor i accedim com a superusuari:
sudo su apt update
2️⃣ Instal·lació de Samba apt install samba
⚠️ Nota: Comprovar que la instal·lació finalitza correctament.
3️⃣ Creació d’usuaris Samba
Afegim tres usuaris (exemple: blau, groc, roig) amb la següent comanda:
useradd -M -s /sbin/nologin blau
📌 Nota: Aquests usuaris no són vàlids per al sistema operatiu, només s’utilitzen per a l’accés al servidor Samba.
4️⃣ Assignar contrasenya Samba
Per a cada usuari, executem:
smbpasswd -a nom_usuari
5️⃣ Configuració del fitxer smb.conf
Editem el fitxer de configuració:
nano /etc/samba/smb.conf
Afegim la configuració al final del fitxer:
6️⃣ Reiniciar serveis Samba systemctl restart smbd nmbd
💻 Configuració del client 1️⃣ Instal·lar eines necessàries sudo apt update sudo apt install smbclient
2️⃣ Comprovació de connectivitat
Fem un ping al servidor per assegurar-nos que hi ha connexió:
📁 Accés al recurs compartit
Anem a Fitxers → Altres ubicacions
Introduïm la ruta del servidor:
smb://10.0.2.15/proves/
El sistema ens demanarà si volem connectar-nos:
Com a anònim
O amb un usuari Samba
🔐 Resultats segons l’usuari ❌ Usuari Roig
No es pot connectar perquè està definit com a invalid user.
👁️ Usuari Groc
Pot llegir els fitxers
❌ No pot escriure, ja que no té permisos d’escriptura
✅ Usuari Blau
Pot llegir i escriure
S’ha creat una carpeta amb el seu nom per comprovar-ho
si volem que un anònim tingui permisos de lectura i escriptura fem els seguents canvis a l’arxiu smb.conf
i fem un systemctl restart smbd nmbd per aplicar els canvis
Una vegada tenim el servidor LDAP operatiu i Samba funcionant, configurem Samba perquè utilitzi el directori LDAP com a font d’usuaris (backend). Això permetrà que l’usuari alu1 (que existeix al LDAP però no al sistema local com a usuari Samba) pugui accedir als recursos.
Necessitem les llibreries que permeten a Samba parlar amb el servidor LDAP. Al servidor:
sudo apt install libnss-ldap libpam-ldap smbldap-tools -y
smb.confEditem l’arxiu de configuració:
nano /etc/samba/smb.conf
Dins del bloc [global], afegim (o modifiquem) les següents línies per indicar a Samba on és el servidor LDAP i com connectar-s’hi:
# Configuració Backend LDAP
passdb backend = ldapsam:ldap://localhost
ldap suffix = dc=proves,dc=cat
ldap user suffix = ou=usuaris
ldap group suffix = ou=grups
# DN de l'administrador que has configurat abans
ldap admin dn = cn=admin,dc=proves,dc=cat
ldap ssl = no
Nota: Assegura’t que ou=usuaris i ou=grups coincideixen amb les Unitats Organitzatives que has creat al teu fitxer uo.ldif.
Perquè Samba pugui fer consultes, necessita la contrasenya de l’usuari cn=admin. L’hem de guardar de forma segura:
sudo smbpasswd -w pauserver
(Si la comanda funciona correctament, hauràs de veure un missatge indicant que s’ha guardat el secret).
alu1Al final del fitxer /etc/samba/smb.conf, afegim una carpeta específica on només l’usuari del LDAP tingui accés d’escriptura:
[recurs_alu1]
comment = Carpeta privada per a alu1 (LDAP)
path = /srv/samba/alu1
browseable = yes
read only = no
guest ok = no
valid users = alu1
writable = yes
create mask = 0770
directory mask = 0770
Creem la carpeta física, assignem permisos i reiniciem el servei:
# Creem la carpeta
mkdir -p /srv/samba/alu1
# Donem permisos oberts a nivell de sistema (Samba filtrarà l'accés)
chmod 777 /srv/samba/alu1
# Reiniciem Samba per carregar la nova configuració LDAP
systemctl restart smbd nmbd
Des del client (on ja hem comprovat que tenim connectivitat):
smb://10.0.2.15/recurs_alu1.alu1usu.ldif per a alu1).Més enllà d’afegir usuaris amb fitxers .ldif, en el dia a dia necessitaràs buscar, modificar i esborrar dades ràpidament.
ldapsearch)És la comanda més utilitzada per verificar que tot és al seu lloc.
ldapsearch -x -b "ou=usuaris,dc=proves,dc=cat"ldapsearch -x -b "dc=proves,dc=cat" "(uid=alu1)"ldapmodify)Si l’usuari alu1 canvia de cognom o de departament, no cal esborrar-lo. Es crea un fitxer .ldif de canvi:
dn: uid=alu1,ou=usuaris,dc=proves,dc=cat
changetype: modify
replace: sn
sn: NouCognom
I s’executa: ldapmodify -x -D "cn=admin,dc=proves,dc=cat" -W -f modificacio.ldif
ldapdelete)Per exemple si un alumne marxa del centre:
ldapdelete -x -D "cn=admin,dc=proves,dc=cat" -W "uid=alu1,ou=usuaris,dc=proves,dc=cat"
Quan un client no pot entrar al domini, aquestes comandes et diran per què:
| Comanda | Funció |
|---|---|
slaptest |
Comprova si hi ha errors de sintaxi en la configuració de LDAP. |
testparm |
Verifica que el fitxer smb.conf no tingui errors. |
getent passwd |
Comprova si el sistema “veu” els usuaris de LDAP com si fossin locals. |
smbstatus |
Mostra qui hi ha connectat ara mateix al Samba i a quins fitxers. |
09/02/26
NFS (Network File System) és un protocol que permet compartir fitxers i carpetes en una xarxa local, funcionant de manera nativa en sistemes Unix/Linux.
Principals diferències amb Samba:
sudo su apt update apt install nfs-kernel-server
1exercici, li donem permisos totals i canviem el propietari a nobody:nogroup (usuari genèric per a NFS):cd / mkdir 1exercici chmod 777 1exercici chown nobody:nogroup 1exercici
Creem un fitxer de prova a dins:
touch /1exercici/hola ls -l | grep 1exercici
/etc/exports per definir qui pot accedir i com:nano /etc/exports
Afegim la següent línia al final del fitxer: /1exercici *(rw,sync,no_subtree_check)
Explicació dels paràmetres:
*: Permet l’accés a qualsevol IP de la xarxa (es podria restringir per IP o rang).rw: Permisos de lectura i escriptura.sync: Confirma l’escriptura al disc abans de respondre (més segur).no_subtree_check: Millora el rendiment evitant comprovacions de subarbres.
systemctl restart nfs-kernel-server systemctl status nfs-kernel-server
sudo su apt update apt install nfs-common rpcbind
mkdir -p /mnt/nfs_client chmod 777 /mnt/nfs_client
/etc/fstab:
```
nano /etc/fstab
Afegim la següent línia al final:
10.0.2.15:/1exercici /mnt/nfs_client nfs auto,noatime,nolock,bg,nfsvers=3,intr,tcp,actimeo=1800 0 0
<img width="811" height="198" alt="image" src="https://github.com/user-attachments/assets/959ee0e2-7794-4b14-9301-6b2036f314e0" />
5. **Verificació**
Reiniciem el client (`reboot`) o muntem manualment amb `mount -a`.
Comprovem que podem veure el fitxer creat al servidor:
ls -l /mnt/nfs_client
Hauríem de veure el fitxer hola.
<img width="648" height="114" alt="image" src="https://github.com/user-attachments/assets/bf2448ac-8ab3-43ce-8078-e724068f530a" />
---
### Exercici 2. Configuració de NFS amb Windows
**1. Creació de la carpeta específica per a Windows i assignació de permisos**
Anem a crear una carpeta nova per diferenciar-la de la resta, li donarem els permisos i crearem un fitxer de prova a dins.
Executa al terminal del servidor:
```bash
mkdir /nfs_windows
chmod 777 /nfs_windows
chown nobody:nogroup /nfs_windows
touch /nfs_windows/prova_windows.txt
ls -l / | grep nfs_windows
2. Afegir la carpeta a l’arxiu d’exportacions Hem de dir-li al servidor NFS que comparteixi aquesta nova carpeta.
nano /etc/exports
Afegeix aquesta línia al final del document:
/nfs_windows *(rw,sync,no_subtree_check)
3. Reiniciar el servei perquè s’apliquin els canvis
systemctl restart nfs-kernel-server
systemctl status nfs-kernel-server
4. Activar el client NFS a Windows Per defecte, Windows no entén el protocol NFS. Ho hem d’activar a les característiques del sistema.
Fes clic a Acceptar i espera que s’instal·li.
5. Muntar la unitat de xarxa des del CMD
Ara muntarem la carpeta del servidor Linux com si fos un disc dur més del nostre Windows (li assignarem la lletra Z:).
10.0.2.15 per la IP real del teu servidor Linux):mount \\10.0.2.15\nfs_windows Z:
6. Comprovació a l’Explorador de Fitxers
Z:.prova_windows.txt que havíem creat al servidor.