GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo configurar el servidor y el cliente Kerberos en Ubuntu 18.04 LTS

Kerberos es un protocolo de autenticación de red que utiliza criptografía de clave simétrica y requiere la autorización de un tercero de confianza para autenticar las aplicaciones cliente-servidor. Originalmente fue desarrollado por el Instituto Tecnológico de Massachusetts (MIT) para proteger los servicios de red proporcionados por el proyecto Athena.

En el mundo moderno, Kerberos se usa a menudo como un servicio de autenticación de terceros. Esto significa que todos los clientes confían en el juicio de Kerberos sobre la identidad de otros clientes.

En este tutorial, le mostraremos cómo configurar la autenticación Kerberos entre dos servidores Ubuntu 18.04. Instalaremos y configuraremos el servidor Kerberos en el servidor Ubuntu y luego instalaremos el cliente Kerberos en el otro. Finalmente, probaremos la autenticación del servicio SSH con el servidor Kerberos.

Requisitos previos

  • Servidor Ubuntu 18.04
    • 10.10.10.15     krb5.ahmad.io   krb5
    • 10.10.10.16     cliente1.ahmad.io    cliente1
  • Privilegios de raíz

Qué haremos:

  1. Configurar archivo FQDN
  2. Instalar servidor KDC Kerberos
  3. Configurar servidor KDC Kerberos
  4. Instalar y configurar el cliente Kerberos
  5. Pruebas

Paso 1:Configurar FQDN

En primer lugar, debemos configurar el FQDN en el servidor Kerberos y luego editar el archivo '/etc/hosts' del servidor.

Cambie el FQDN del servidor Kerberos con el siguiente comando.

hostnamectl set-hostname krb5.ahmad.io

Después de eso, edite el archivo '/etc/hosts' usando el editor vim.

vim /etc/hosts

Cambie la dirección IP y el FQDN por los suyos propios y péguelos.

10.10.10.15     krb5.ahmad.io   krb5

Guardar y cerrar.

Ahora pruebe usando el comando 'ping' a continuación y asegúrese de que el FQDN se resuelva en la dirección IP correcta.

ping -c 3 $(hostname -f)

Paso 2:instalar el servidor KDC Kerberos

Ahora vamos a instalar el servidor Kerberos en el servidor 'krb5' con la dirección IP '10.10.10.15' y el FQDN es 'krb5.ahmad.io'.

Instale el servidor Kerberos usando el siguiente comando apt.

sudo apt install krb5-kdc krb5-admin-server krb5-config -y

Durante la instalación, se le preguntará sobre Kerberos Realm, el servidor Kerberos del Realm y el servidor de administración.

De forma predeterminada, Kerberos utilizará el nombre de dominio del servidor de Kerberos como REALM, 'AHMAD.IO '.

El servidor Kerberos es 'krb5.ahmad.io '.

Y el servidor de administración igual que el servidor Kerberos 'krb5.ahmad.io '.

Una vez finalizada la instalación, se le mostrará que el servicio Kerberos no se pudo ejecutar. Está bien porque lo configuraremos en la siguiente etapa.

Paso 3:configurar el servidor KDC Kerberos

Ahora genere una nueva contraseña maestra segura para Kerberos REALM usando el siguiente comando.

sudo krb5_newrealm

Escriba su contraseña segura y la contraseña REALM se generará en el archivo '/etc/krb5kdc/stash'.

Después de eso, necesitamos crear el usuario administrador (administrador principal) para el servidor KDC Kerberos, agregar el nombre de host del servidor Kerberos a la base de datos y luego crear la tabla de claves para el servidor Kerberos.

Ejecute la interfaz de línea de comandos 'kadmin.local' para el comando de administración de Kerberos a continuación.

sudo kadmin.local

Cree un nuevo principal de usuario administrador llamado 'raíz'.

addprinc root/admin

Escriba la contraseña segura para el administrador principal 'raíz'.

Agregue el servidor KDC Kerberos a la base de datos y cree el archivo keytab para el host KDC.

addprinc -randkey host/krb5.ahmad.io
ktadd host/krb5.ahmad.io

Luego cierre la utilidad 'kadmin.local'.

quit

A continuación, debemos agregar el principio de administrador 'raíz' a la lista de control de acceso editando el archivo '/etc/krb5kdc/kadm5.acl'.

vim /etc/krb5kdc/kadm5.acl

Agregue la siguiente configuración.

root/admin * 

Guarde y cierre la configuración, luego reinicie el servicio Kerberos.

sudo systemctl restart krb5-admin-server.service

Y la configuración del servidor KDC Kerberos se ha completado.

Paso 4:instalar y configurar el cliente Kerberos

En este paso, instalaremos el cliente Kerberos en el servidor Ubuntu con la dirección IP '10.10.10.16' y el nombre de host 'cliente1'.

- Configurar FQDN

Configure el FQDN en la máquina cliente usando el siguiente comando.

hostnamectl set-hostname client1.ahmad.io

Después de eso, edite el archivo '/etc/hosts' usando el editor vim.

vim /etc/hosts

Pegue tanto el servidor KDC Kerberos como el cliente como se muestra a continuación.

10.10.10.15     krb5.ahmad.io   krb5
10.10.10.16     client1.ahmad.io    client1

Guardar y cerrar.

- Instalar el cliente Kerberos

Instale los paquetes de cliente de Kerberos ejecutando el siguiente comando apt.

sudo apt install -y krb5-user libpam-krb5 libpam-ccreds auth-client-config

Durante la instalación, se le preguntará sobre Kerberos Realm, el servidor Kerberos del Realm y el servidor de administración.

De forma predeterminada, Kerberos utilizará el nombre de dominio del servidor de Kerberos como REALM, 'AHMAD.IO '.

El servidor Kerberos es 'krb5.ahmad.io '.

Y el servidor de administración igual que el servidor Kerberos 'krb5.ahmad.io '.

Y la instalación del cliente Kerberos ha finalizado.

- Configurar cliente Kerberos

Desde la máquina cliente, conéctese al servidor KDC Kerberos usando el comando 'kadmin'.

kadmin

Y se le pedirá la contraseña del principio 'root/admin'. Escriba la contraseña e iniciará sesión en el sistema de administración KDC Kerberos.

Ahora agregue el cliente FQDN 'client1.ahmad.io' a la base de datos de Kerberos y agregue el archivo keytab para el cliente.

addprinc -randkey host/client1.ahmad.io
ktadd host/client1.ahmad.io

Luego cierre la interfaz de administración de kadmin Kerberos.

quit

Y se completa la configuración del cliente Kerberos.

Paso 5 - Prueba

Para este propósito de prueba, vamos a configurar la autenticación SSH usando Kerberos. La máquina cliente 'client1.ahmad.io' se conectará al servidor 'krb5.ahmad.io' a través de SSH con la autenticación Kerberos.

- Configuración del servidor 'krb5.ahmad.io'

Cree un nuevo usuario del sistema llamado 'ammar'.

useradd -m -s /bin/bash ammar

Inicie sesión en la administración de KDC Kerberos y agregue un nuevo usuario principal llamado 'ammar'.

kadmin.local
addprinc ammar

Cierre la interfaz de administración de Kerberos y edite la configuración de ssh '/etc/ssh/sshd_config'.

vim /etc/ssh/sshd_config

Quite el comentario de 'GSSAPIAuthentication' y actívelo cambiando el valor a ''.

GSSAPIAuthentication yes
GSSAPICleanupCredentials yes

Guarde y cierre la configuración, luego reinicie el servicio ssh.

systemctl restart sshd

- Configuración de la máquina 'client1.ahmad.io'

Agregue el nuevo usuario del sistema 'ammar' en la máquina cliente e inicie sesión en él.

useradd -m -s /bin/bash ammar
su - ammar

Después de eso, inicialice el principal de usuario de Kerberos 'ammar'.

kinit ammar

Escriba la contraseña del usuario y luego verifique el Ticket disponible usando el siguiente comando.

klist

Y se le mostrará el siguiente resultado.

Ahora puede conectarse al servidor 'krb5.ahmad.io' usando la autenticación SSH Kerberos.

ssh krb5.ahmad.io

Y se conectará al servidor 'krb5.ahmad.io' a través de SSH con autenticación Kerberos.

A continuación se muestra el registro SSH después de iniciar sesión en el servidor.

Finalmente, la instalación y configuración del servidor y cliente Kerberos en Ubuntu 18.04 se completó con éxito.


Ubuntu
  1. Cómo configurar y usar el servidor FTP en Ubuntu Linux

  2. Cómo instalar y asegurar Redis en Ubuntu 18.04 LTS

  3. Cómo instalar el servidor y el cliente NTP en Ubuntu 18.04 LTS

  4. Cómo configurar el servidor Rsyslog en Ubuntu 18.04 LTS

  5. Cómo configurar el servidor y el cliente NFS en Ubuntu 20.04

Cómo configurar la última versión de MySQL en Ubuntu 20.04 LTS

Cómo configurar un servidor y cliente NTP en Ubuntu 20.04 LTS

Cómo instalar UrBackup Server and Client en Ubuntu 20.04

Cómo instalar el servidor y el cliente Telnet en Ubuntu

Cómo instalar el servidor NTP y los clientes en Ubuntu 20.04 LTS

Cómo configurar el servidor y el cliente NTP en Ubuntu 20.04 LTS