SAMBA con capacidad para ser Primary Domain Controller, aunque la mayoría de las distros incluyen alguna versión de SAMBA, para este caso en particular, yo prefiero compilarlo desde las fuentes, con la versión estable ofrecida desde www.samba.org
Prerrequisitos para compilar SAMBA desde sus fuentes
El código fuente al escribir este articulo puede ser descargado de:
https://download.samba.org/pub/samba/stable/samba-4.16.4.tar.gz
RedHat 8 , Rocky Linux 8 , AlmaLinux 8
yum install epel* -y
yum install lmdb-devel -y
yum install perl gcc libacl-devel libblkid-devel gnutls-devel readline-devel gdb pkgconfig krb5-workstation zlib-devel setroubleshoot-server libaio-devel popt-devel libpcap-devel sqlite-devel libidn-devel libxml2-devel libacl-devel libsepol-devel libattr-devel cups-devel bind-utils libxslt docbook-style-xsl openldap-devel pam-devel bzip2 vim wget jansson-devel gpgme-devel libarchive-devel python3 python3-devel perl-Parse-Yapp rpcgen
Debian 11
apt install build-essential -y
apt install python3 python3-distutils python3-pip pkg-config lmdb-utils liblmdb-dev bison flex gnutls-bin libgnutls28-dev libgpgme-dev libparse-yapp-perl libjansson-dev libarchive-dev libacl1-dev libldap2-dev libpam0g-dev libdbus-1-dev python3-cryptography python3-pyasn1 python3-iso8601 python3-markdown python3-dnspython libpopt-dev libjson-perl -y
apt install krb5-kdc krb5-admin-server krb5-config krb5-user -y
pip install python-config
Cumplidos los prerrequisitos, Compilar
./configure –enable-debug –enable-selftest –with-ads –with-systemd –with-winbind –prefix=/samba
make
make install
Como hacer un servidor Active Directory después de compilar.
1 ) Ejecutar: samba-tool domain provision –use-rfc2307 –interactive
Ejemplo de configuración
Realm [lastdragon.local]:
Domain [lastdragon]:
Server Role (dc, member, standalone) [dc]:
DNS backend (SAMBA_INTERNAL, BIND9_FLATFILE, BIND9_DLZ, NONE) [SAMBA_INTERNAL]:
DNS forwarder IP address (write ‘none’ to disable forwarding) [8.8.8.8]:
Administrator password:racion:
2) copiar la configuración de kerberos a /etc
cp /samba-4.11.9/private/krb5.conf /etc
3) Crear usuarios de sistema en Linux
useradd usuario
4) Asignarlos a samba con pdbedit o smbpasswd
pdbedit -a usuario
smbpasswd -a usuario
Articulo previo relacionado
https://www.lastdragon.net/?p=709
Video demostrativo de este articulo