====== Instalar y configurar kerberos en Slackware sin PAM ====== ==== El KDC ==== Este procedimiento dará lugar a un nuevo dominio de Kerberos. Si ya tiene acceso a un KDC de Kerberos, puede saltar a las partes del cliente y del servidor de aplicaciones. Además, el siguiente procedimiento es muy breve y no sustituye la lectura de la documentación suministrada en el paquete o en el sitio web de MIT Kerberos. - Instale krb (puede descargarlo y compilarlo desde http://slackbuilds.org/repository/14.1/network/krb5/) - Configure /etc/krb5.conf, /var/krb5kdc/kdc.conf y /var/krb5kdc/kadm5.acl. Estos archivos son ejemplos que debe ajustar después de leer la documentación de Kerberos. **krb5.conf** [domain_realm] example.com = EXAMPLE.COM .example.com = EXAMPLE.COM [libdefaults] default_realm = EXAMPLE.COM dns_kdc_lookup = true dns_realm_lookup = true forwardable = true renewable = true [realms] EXAMPLE.COM = { kdc = kerberos-1.example.com:88 kdc = kerberos-2.example.com:88 admin_server = kerberos-1.example.com:749 } ** kdc.conf ** [kdcdefaults] kdc_ports = 749,88 [realms] EXAMPLE.COM = { database_name = /var/krb5kdc/principal admin_keytab = FILE:/var/krb5kdc/kadm5.keytab acl_file = /var/krb5kdc/kadm5.acl key_stash_file = /var/krb5kdc/.k5.EXAMPLE.COM kdc_ports = 749,88 max_life = 10h 0m 0s max_renewable_life = 7d 0h 0m 0s supported_keytypes = aes256-cts des-cbc-crc des-cbc-md5 } **kadm5.acl** krb5adminprinc/admin * **3. ** Crear base de datos /usr/kerberos/sbin/kdb5_util create -r EXAMPLE.COM -s **4.**Extraiga las claves del servidor de administración para /var/krb5kdc/kadm5.keytab. /usr/kerberos/sbin/kadmin.local kadmin.local: xst -k /var/krb5kdc/kadm5.keytab kadmin/admin kadmin/changepw **5.** Crear host y otros principios; extraer a /etc/krb5.keytab kadmin.local: ank -randkey host/fully.qualified.domain.name kadmin.local: xst -k /etc/krb5.keytab host/fully.qualified.domain.name **6.** Crear admin, usuarios principales kadmin.local: ank krb5adminprinc/admin kadmin.local: ank krb5userprinc kadmin.local: quit **7.** Crear script de inicio/etc/rc.d/rc.krb5 rc.krb5 - shamelessly ripped off from rc.samba from Slackware 13.0 #!/bin/sh # # /etc/rc.d/rc.krb5 # # Start/stop/restart the MIT Kerberos V KDC # # To make Kerberos start automatically at boot, make this # file executable: chmod 755 /etc/rc.d/rc.krb5 # krb5_start() { if [ -x /usr/kerberos/sbin/krb5kdc -a -x /usr/kerberos/sbin/kadmind -a -r /etc/krb5.conf -a -r /var/krb5kdc/kdc.conf ]; then echo "Starting Kerberos: /usr/kerberos/sbin/krb5kdc" /usr/kerberos/sbin/krb5kdc echo " /usr/kerberos/sbin/kadmind" /usr/kerberos/sbin/kadmind fi } krb5_stop() { killall krb5kdc kadmind } krb5_restart() { krb5_stop sleep 2 krb5_start } case "$1" in 'start') krb5_start ;; 'stop') krb5_stop ;; 'restart') krb5_restart ;; *) # Default is "start", for backwards compatibility with previous # Slackware versions. This may change to a 'usage' error someday. krb5_start esac **8.** Arrancar demonio KDC: # chmod +x /etc/rc.d/rc.krb5 # /etc/rc.d/rc.krb5 start **9.** Recuerde hacer que el script rc.krb5 sea ejecutable si desea que el KDC se inicie automáticamente en el arranque. Verifique la conectividad a KDC con kadmin, kinit: $ kinit krb5userprinc $ klist $ kadmin -p krb5adminprinc/admin ==== El Cliente ==== Este procedimiento dará como resultado un cliente capaz de recuperar tickets de Kerberos de un KDC y permitirá a los principales de Kerberos iniciar sesión en la consola. El inicio de sesión exitoso en la consola por parte de un principal generará tickets en el caché del usuario. El inicio de sesión fallido por parte de un principal (debido a que el principal no existe, o se proporcionó una contraseña incorrecta) debe corresponder a las autenticaciones locales (/ etc / shadow). Nota: el principal debe estar asociado con una cuenta en el sistema, ya sea en la base de datos local de passwd o mediante un sistema de red como NIS o LDAP. **1.** Instalar krb5 siempre de http://slackbuilds.org/repository/14.1/network/krb5/ :-). **2.** Setup /etc/krb5.conf: **krb5.conf** [domain_realm] example.com = EXAMPLE.COM .example.com = EXAMPLE.COM [libdefaults] default_realm = EXAMPLE.COM dns_kdc_lookup = true dns_realm_lookup = true forwardable = true renewable = true [realms] EXAMPLE.COM = { kdc = kerberos-1.example.com:88 kdc = kerberos-2.example.com:88 admin_server = kerberos-1.example.com:749 } ** 3. ** Verificar kadmin, kinit trabajando $ kinit krb5userprinc $ klist $ kadmin -p krb5adminprinc/admin ** 4. ** Agregue el principal del host y extraiga el principal del host a /etc/krb5.keytab usando kadmin y el principal del administrador: # kadmin -p krb5adminprinc/admin kadmin: ank -randkey host/fully.qualified.domain.name kadmin: xst -k /etc/krb5.keytab host/fully.qualified.domain.name kadmin: quit ====== Fuentes ====== * Fuente original:[[http://arktur.shuttle.de/CD/Testpakete/Kerberos/krb5.html]] * Contribuciones por [[wiki:user:jamesaxl | User jamesaxl]] * Traducido por: [[wiki:user: slackwarespanol | Victor]] 2019/02/15 19:29 (UTC) {{tag>howtos network_services kerberizing_slackware_without_pam}}