Creacion de dominio Active directory
con Samba4-DC
sobre CentOS/RHEL/SL 7
Introduccion
Samba4-DC
nos permite correr controladores de dominios de Active Directory sobre equipos linux, esto sin eliminar todas las opciones y caracteristicas que tiene el Active Directory, pero sin costo de licenciamiento.
En este documento veremos como instalar Samba4-DC
en CentOS/RHEL 7
Escenario
En este documento se creara un domino nuevo de example.com
, el escenario es el siguiente:
Nombre del DC CentOS 7: LINUXDC.example.com
Dominio a crear: example.com
IP del DC CentOS 7: 192.168.2.3
Descargar e instalar
Samba4-DC
debe ser compilado, para lo que necesitaremos instalar previamente los paquetes necesarios para poder compilarlo, esto lo haremos con el comando yum
:
yum install -y make glibc gcc perl python-devel gnutls-devel libacl-devel openldap-devel bind-utils net-tools wget pam-devel krb5-workstation bind policycoreutils-python ntp
Una vez que instalamos las dependencias, podemos descargar la ultima version disponible de Samba de la siguiente URL https://download.samba.org/pub/samba/stable
Este documento esta basado en la version 4.7.4
, que la podemos descagar con el siguiente comando
cd /opt
wget https://download.samba.org/pub/samba/stable/samba-4.7.4.tar.gz
Luego descomprimimos y accedemos a la carpeta del instalador
tar xvfp samba-4.7.4.tar.gz
cd /opt/samba-4.7.4
Preparamos todo lo necesario para compilar
./configure
Finalmente compilamos y ejecutamos make install
para que nos copie todos los binarios necesarios y nos cree los directorios que utilizar Samba
make
make install
Hecha la instalacion debemos configurar el PATH
para que sea mas facil utilizar los comandos de Samba
echo "export PATH=\$PATH:/usr/local/samba/bin:/usr/local/samba/sbin" >> /root/.bashrc
source /root/.bashrc
Creacion del dominio
Una vez que tenemos instalado Samba
podemos proceder a crear nuestro domminio example.com
, para esto usaremos la herramienta samba-tool
, con la opcion --interactive
lo cual hace que la herramienta nos vaya preguntando los parametros de nuestro nuevo dominio.
samba-tool domain provision example.com --interactive
Luego de crear nuestro dominio, debemos crear el servicio samba
de forma a que el mismo se maneje por systemctl
como cualquier otro servicio
cat <<EOF > /etc/systemd/system/smb.service
[Unit]
Description=Samba
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/usr/local/samba/sbin/samba
[Install]
WantedBy=multi-user.target
EOF
Recargamos las configuracioens de systemctl
systemctl daemon-reload
HAbilitamos e iniciamos el servicio
systemctl start smb ntpd
systemctl enable smb ntpd
En caso de tener firewall activo debemos agregar las siguientes reglas para que el servicio funcione de forma correcta
firewall-cmd --add-service=ldap --add-service=dns --add-service=ldaps --permanent
firewall-cmd --add-port=135/tcp --add-port=135/udp --permanent
firewall-cmd --add-port=953/udp --add-port=953/tcp --permanent
firewall-cmd --add-port=464/tcp --add-port=464/udp --permanent
firewall-cmd --add-port=88/tcp --add-port=88/udp --permanent
firewall-cmd --add-port=636/tcp --add-port=636/udp --permanent
firewall-cmd --add-port=49152/tcp --add-port=49152-49500/udp --permanent
firewall-cmd --add-port=3268/tcp --add-port=3268/udp --permanent
firewall-cmd --add-port=3269/tcp --add-port=3269/udp --permanent
firewall-cmd --add-port=135/tcp --add-port=135/udp --permanent
firewall-cmd --add-port=137/tcp --add-port=137/udp --permanent
firewall-cmd --add-port=138/tcp --add-port=138/udp --permanent
firewall-cmd --add-port=139/tcp --add-port=139/udp --permanent
firewall-cmd --add-port=445/tcp --add-port=445/udp --permanent
firewall-cmd --add-port=50000-60000/tcp --add-port=50000-60000/udp --permanent
firewall-cmd --reload
Con esto ya tenemos nuestro controlador de dominio samba
, ahora podemos comenzar a registrar equipos a este dominio, nada mas se debe tener en cuenta de que los mismos deben utilizar a nuestro controlador de dominio como servidor DNS