---
# System prepended metadata

title: part 1 - Configurar servidor LDAP Linux (CLI)
tags: [LDAP, linux]

---

# PART 1 – SERVIDOR LDAP Linux (CLI)

# :white_check_mark:  Resultat final esperat

> ✔ Usuaris LDAP visibles als clients
✔ Login centralitzat
✔ Home creat automàticament
✔ Gestió des del servidor

## :one: Preparació del servidor
```bash
sudo apt update && sudo apt upgrade -y
sudo hostnamectl set-hostname srv-dc
```
:::info
*nota*: substitueix "srv-dc" pel nom que vols que tingui el teu servidor (el teu hostname).
:::

Editar `/etc/hosts`

    127.0.0.1   localhost
    192.168.1.10 srv-dc.empresa.local srv-dc

:::warning
substitueix "srv-dc" pel hostname del teu servidor, i "empresa" pel nom del domini que vols tenir, "local" seria l'extensió (TLD).
:::

Reiniciar o aplicar hostname:
```bash
exec bash
```

## :two: Instal·lació d’LDAP i utilitats
```bash
sudo apt install slapd ldap-utils -y
```

Durant la instal·lació:

> Omet configuració DNS ❌
Domini: empresa.local
Organització: Empresa
Password admin LDAP → apuntar-la
Base DN automàtic: dc=empresa,dc=local

## :three: Reconfigurar LDAP (per assegurar)
```bash
sudo dpkg-reconfigure slapd
```
Respostes recomanades:

> Ometre configuració? ❌ No
Domini DNS: empresa.local
Organització: Empresa
Backend: MDB
Esborrar base antiga? ❌ No
Moure DB antiga? ✔ Sí

## :four: Comprovar que LDAP funciona
```bash
ldapsearch -x -LLL -H ldap:/// -b dc=empresa,dc=local
```

:::success
:point_right:  Si mostra informació del domini → OK
:::

## :five: Crear estructura LDAP (OU)

Crear fitxer `estructura.ldif`:

```text
dn: ou=usuaris,dc=empresa,dc=local
objectClass: organizationalUnit
ou: usuaris

dn: ou=grups,dc=empresa,dc=local
objectClass: organizationalUnit
ou: grups
```

Importar configuració a servidor LDAP:
```bash
ldapadd -x -D cn=admin,dc=empresa,dc=local -W -f estructura.ldif
```

## :six: Crear grups

Crear fitxer de configuració; `grups.ldif`

Afegir el següent contingut;

    dn: cn=alumnes,ou=grups,dc=empresa,dc=local
    objectClass: posixGroup
    cn: alumnes
    gidNumber: 5000

Afegir fitxer configuració grups a LDAP;
```bash
ldapadd -x -D cn=admin,dc=empresa,dc=local -W -f grups.ldif
```

## :seven: Crear usuari LDAP

Primer generem password: 
```bash
slappasswd
```
:::warning
*nota*: Hem de copiar el hash amb la contrasenya per l'usuari.
:::

Creem fitxer amb config d'usuari; `usuari.ldif`

I afegim la configuració al fitxer;

    dn: uid=user01,ou=usuaris,dc=empresa,dc=local
    objectClass: inetOrgPerson
    objectClass: posixAccount
    objectClass: shadowAccount
    cn: User 01
    sn: User01
    uid: user01
    uidNumber: 10000
    gidNumber: 5000
    homeDirectory: /home/user01
    loginShell: /bin/bash
    userPassword: {SSHA}HASH_AQUI

:::warning
*nota*: afegeix la contrasenya en hash, mai en text plà per evitar problemes de seguretat.
:::

Afegim l'usuari a LDAP des del fitxer LDIF;
```bash
ldapadd -x -D cn=admin,dc=empresa,dc=local -W -f usuari.ldif
```

# :arrow_forward: [Continua en següent pas, configuració gestió GUI](https://hackmd.io/@drpece/ldap-gestio-gui)