Cómo instalar y configurar FreeIpa en Red Hat Linux

Cómo instalar y configurar FreeIpa en Red Hat Linux

Objetivo

Nuestro objetivo es instalar y configurar un servidor gratuito independiente en Red Hat Enterprise Linux.

Sistema operativo y versiones de software

  • Sistema operativo: Red Hat Enterprise Linux 7.5
  • Software: Freeipa 4.5.4-10

Requisitos

Acceso privilegiado al servidor de destino, repositorio de software disponible.

Dificultad

MEDIO

Convenciones

  • # - requiere que los comandos de Linux dados se ejecuten con privilegios raíz directamente como un usuario raíz o mediante el uso de sudo dominio
  • ps - Dados los comandos de Linux para ser ejecutados como un usuario regular no privilegiado

Introducción

FreeIPA es principalmente un servicio de directorio, donde puede almacenar información sobre sus usuarios y sus derechos sobre el inicio de sesión, convertirse en root o simplemente ejecutar un comando específico como root en sus sistemas que se unen a su dominio FreeIPA, y muchos más. Aunque esta es la característica principal del servicio, existen componentes opcionales que pueden ser muy útiles, como DNS y PKI, esto hace que FreeIPA sea una parte de infraestructura esencial de un sistema basado en Linux. Tiene una buena GUI basada en la web y una poderosa interfaz de línea de comandos.

En este tutorial veremos cómo instalar y configurar un servidor FreeIPA independiente en un Red Hat Enterprise Linux 7.5. Tenga en cuenta que en un sistema de producción se le recomienda crear al menos una réplica más para proporcionar alta disponibilidad. Alojamos el servicio en una máquina virtual con 2 núcleos de CPU y 2 GB de RAM, en un sistema grande, es posible que desee agregar algunos recursos más. Nuestra máquina de laboratorio ejecuta RHEL 7.5, instalación base. Empecemos.

Instalar y configurar un servidor FreeIPA es bastante fácil: el Gotcha está en la planificación. Debe pensar en las partes de la pila de software que desea usar y cuál es el entorno que desea ejecutar estos servicios. Como FreeIPA puede manejar DNS, si está construyendo un sistema desde cero, podría ser útil darle a un dominio DNS completo a FreeIPA, donde todas las máquinas cliente llamará a los servidores FreeIPA para DNS para DNS. Este dominio puede ser un subdominio de su infraestructura, incluso puede establecer un subdominio solo para los servidores FreeIPA, pero piense este canal con cuidado, ya que no puede cambiar el dominio más adelante. No use un dominio existente, FreeIPA debe pensar que es el maestro del dominio dado (el instalador verificará si el dominio se puede resolver, y si tiene un registro SOA de lo contrario).

PKI es otra pregunta: si ya tiene una CA (autoridad de certificado) en su sistema, es posible que desee configurar FreeIpa como CA subordinada. Con la ayuda de CertMonger, FreeIPA tiene la capacidad de renovar automáticamente los certificados del cliente (como el certificado SSL de un servidor web), que puede ser útil, pero si el sistema no tiene un servicio orientado a Internet, es posible que no necesite el servicio PKI de FreeIPA en absoluto. Todo depende del caso de uso.

En este tutorial, la planificación ya está hecha. Queremos crear un nuevo laboratorio de pruebas, por lo que instalaremos y configuraremos todas las características de FreeIPA, incluidos DNS y PKI con un certificado de CA autofirmado. FreeIPA puede generar esto para nosotros, no es necesario crear uno con herramientas como OpenSSL.



Requisitos

Lo que debe configurarse primero es una fuente NTP confiable para el servidor (FreeIPA también actuará como un servidor NTP, pero necesita una fuente de forma natural) y una entrada en el servidor /etc/huéspedes Archivo apuntando a sí mismo:

# Cat /etc /Hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 :: 1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.122.147 RHEL7.IPA.LinuxConfig.org rhel7 
Copiar

Y el nombre de host proporcionado en el archivo hosts debe ser el FQDN de la máquina.

# Nombre de host RHEL7.IPA.LinuxConfig.organizar 
Copiar

Este es un paso importante, no te lo pierdas. El mismo nombre de host necesario en el archivo de red:

# Grep HostName/etc/sysconfig/network hostname = RHEL7.IPA.LinuxConfig.organizar 
Copiar

Instalación de paquetes

El software necesario se incluye en la imagen ISO o el canal de suscripción de Red Hat Enterprise Linux Server ISO, no se necesitan repositorios adicionales. En esta demostración hay un conjunto de repositorio local que tiene el contenido de la imagen ISO. La pila de software se agrupa, por lo que un solo comando yum funcionará:

# yum instalar IPA-server ipa-server-dns 
Copiar

En una instalación base, YUM proporcionará una larga lista de dependencias, incluidas Apache Tomcat, Apache Httpd, 389-DS (el servidor LDAP), etc. Después de que Yum termina, abra los puertos necesarios en el firewall:

# firewall-cmd --add-service = freeIPa-ldap éxito # firewall-cmd --add-service = freeipa-ldap-éxito 
Copiar

Configuración

Ahora configuremos nuestro nuevo servidor FreeIPA. Esto llevará tiempo, pero solo necesito para la primera parte, cuando el instalador solicite parámetros. La mayoría de los parámetros se pueden pasar como argumentos al instalador, pero no daremos ninguno, de esta manera podemos beneficiarnos de la configuración anterior.

# IPA-Server-Instalar El archivo de registro para esta instalación se puede encontrar en/var/log/ipaserver-install.Log =================================================== ============================= Este programa configurará el servidor IPA. Esto incluye: * Configurar una CA independiente (Dogtag) para la administración de certificados * Configure el Tiempo de red Daemon (NTPD) * Crear y configurar una instancia de Directory Server * Crear y configurar un Centro de Distribución Kerberos de Distribución (KDC) * Configurar Apache ( httpd) * Configure el KDC para habilitar Pkinit para aceptar el valor predeterminado que se muestra en los soportes, presione la tecla ENTER. ADVERTENCIA: el servicio de sincronización de tiempo y fecha en conflicto 'Chronyd' se deshabilitará a favor de NTPD ## Usaremos el servidor DNS integrado ¿Desea configurar DNS integrado (Bind)? [No]: Sí, ingrese el nombre de dominio totalmente calificado de la computadora en la que está configurando el software del servidor. Usando el formulario . Ejemplo: maestro.ejemplo.comunicarse. ## presionar 'Enter' significa que aceptamos el valor predeterminado en las pulseras ## Esta es la razón por la que configuramos el FDQN adecuado para el host Nombre del host del servidor [RHEL7.IPA.LinuxConfig.org]: Advertencia: omitir la resolución DNS del anfitrión RHEL7.IPA.LinuxConfig.org El nombre de dominio se ha determinado en función del nombre del host. ## Ahora no tenemos que escribir/pegar el nombre de dominio ## y el instalador no necesita intentar configurar el nombre del host Confirme el nombre de dominio [IPA.LinuxConfig.org]: el protocolo Kerberos requiere definir un nombre de reino. Este es típicamente el nombre de dominio convertido en mayúsculas. ## El reino de Kerberos se asigna del nombre de dominio Proporcione un nombre de reino [IPA.LinuxConfig.Org]: ciertas operaciones del servidor de directorio requieren un usuario administrativo. Este usuario se conoce como el administrador de directorio y tiene acceso completo al directorio para las tareas de administración de sistemas y se agregará a la instancia del servidor de directorio creado para IPA. La contraseña debe tener al menos 8 caracteres. ## Directory Manager El usuario es para las operaciones de bajo nivel, como crear réplicas Contraseña del administrador de directorio: ## Use una contraseña muy segura en un entorno de producción! Contraseña (confirmar): el servidor IPA requiere un usuario administrativo, llamado 'Admin'. Este usuario es una cuenta de sistema regular utilizada para la administración del servidor IPA. ## admin es la "raíz" del sistema FreeIPA, pero no el directorio LDAP Contraseña de administrador de IPA: contraseña (confirmar): comprobación del dominio DNS IPA.LinuxConfig.organizar., espere por favor… ## Podríamos configurar a los reenviados, pero esto también se puede configurar más tarde ¿Quieres configurar los reenviadores de DNS?? [Sí]: No no se configuran los reenvíos de DNS. Desea buscar zonas inversas faltantes? [Sí]: No, el servidor maestro de IPA se configurará con: HostName: RHEL7.IPA.LinuxConfig.Org Dirección IP (ES): 192.168.122.147 Nombre de dominio: IPA.LinuxConfig.ORG Realm Nombre: IPA.LinuxConfig.Org Bind DNS Server se configurará para servir el dominio IPA con: Política de reenvío: No se reenvía Política: Solo zona inversa (s): No hay zona inversa Continuar configurando el sistema con estos valores? [no si ## En este punto, el instalador funcionará por su cuenta, ## y completará el proceso en unos minutos. El momento perfecto para el café. Las siguientes operaciones pueden tardar algunos minutos en completarse. Espere hasta que se devuelva el aviso. Configuración de NTP Daemon (NTPD) [1/4]: detener NTPD .. 

La salida del instalador es bastante larga, puede ver como todos los componentes configurados, reiniciados y verificados. Al final de la salida, hay algunos pasos necesarios para una funcionalidad completa, pero no para el proceso de instalación en sí.

... El comando IPA-Client-Install fue exitoso ========================================== ====================================== SECUPTURA COMPLETO PASOS SIGUIENTES: 1. Debe asegurarse de que estos puertos de red estén abiertos: Puertos TCP: * 80, 443: http/https * 389, 636: LDAP/LDAPS * 88, 464: Kerberos * 53: Bind UDP Puertos: * 88, 464: Kerberos * 53 : bind * 123: NTP 2. Ahora puede obtener un boleto Kerberos utilizando el comando: 'Kinit Admin' Este boleto le permitirá usar las herramientas IPA (E.gramo., IPA User-Add) y la interfaz de usuario web. Asegúrese de hacer una copia de seguridad de los certificados de CA almacenados en /root /cacert.P12 Estos archivos son necesarios para crear réplicas. La contraseña de estos archivos es la contraseña del administrador del directorio 

Como señala el instalador, asegúrese de hacer una copia de seguridad del certificado de CA y abrir puertos necesarios adicionales en el firewall.

Ahora habilitemos la creación del directorio de inicio en el inicio de sesión:

# authconfig --enablemkhomedir -update 


Verificación

Podemos comenzar a probar si tenemos una pila de servicios de trabajo. Probemos si podemos obtener un boleto Kerberos para el usuario administrador (con la contraseña dada al usuario administrador durante la instalación):

# Contraseña de administrador de Kinit para [email protected]: # klist ticket caché: llavero: persistente: 0: 0 Principal predeterminado: [email protected] válido Comenzar expiras Servicio Principal 2018-06-24 21.44.30 2018-06-25 21.44.28 KRBTGT/[email protected] 

La máquina host se inscribe en nuestro nuevo dominio, y las reglas predeterminadas otorgan acceso SSH al usuario administrador creado anteriormente a todos. Probemos si estas reglas funcionan como se esperaba abriendo la conexión SSH a Localhost:

# ssh admin@localhost contraseña: creación de directorio de inicio para administrador. Último inicio de sesión: Sol 24 de junio 21:41:57 2018 de Localhost $ PWD /Home /Admin $ Salida 

Verifiquemos el estado de toda la pila de software:

# Servicio de directorio de estado de IPACTL: Ejecutar el servicio KRB5KDC: Ejecutar el servicio Kadmin: Ejecutar el servicio nombrado: Servicio HTTPD: Servicio IPA-Custodia: Servicio NTPD: Servicio PKI-TOMCATD: Servicio Ejecutar IPA-OTPD: Ejecutar Servicio IPA-DNSKEYSYNCD: Ejecutar IPA: Info: El comando ipActl fue exitoso 
Copiar

Y, con el boleto de Kerberos adquirido anteriormente, solicite información sobre el usuario administrador utilizando la herramienta CLI:

# Administrador de encontrar el usuario de IPA -------------- 1 Usuario emparejado -------------- Inicio de sesión del usuario: Apellido del administrador: Administrador Directorio de inicio: /Inicio /Admin SHELD Shell: /bin /bash principal alias: [email protected] Uid: 630200000 GID: 630200000 Cuenta deshabilitada: Falso ---------------------------- Número de entradas devueltas 1 ---------------------------- 
Copiar

Y finalmente, inicie sesión en la página de administración basada en la web utilizando las credenciales del usuario administrativo (la máquina que ejecuta el navegador debe poder resolver el nombre del servidor FreeIPA). Use HTTPS, el servidor redirigirá si se usa HTTP simple. A medida que instalamos un certificado raíz autofirmado, el navegador nos advertirá al respecto.

Página de inicio de sesión del Freeipa Wui

La página predeterminada después del inicio de sesión muestra la lista de nuestros usuarios, donde ahora solo aparece el usuario administrador.

La página predeterminada después del inicio de sesión es la lista de usuarios en FreeIpa Wui

Con esto completamos nuestro objetivo, tenemos un servidor FreeIPA en ejecución listo para estar poblado con usuarios, hosts, certificados y varias reglas.

Tutoriales de Linux relacionados:

  • Cosas para instalar en Ubuntu 20.04
  • Cosas que hacer después de instalar Ubuntu 20.04 fossa focal Linux
  • Una introducción a la automatización, herramientas y técnicas de Linux
  • Descarga de Linux
  • Archivos de configuración de Linux: los 30 principales más importantes
  • ¿Puede Linux obtener virus?? Explorando la vulnerabilidad de Linux ..
  • Cosas para instalar en Ubuntu 22.04
  • Cosas que hacer después de instalar Ubuntu 22.04 Jellyfish de Jammy ..
  • La mejor distribución de Linux para desarrolladores
  • Mint 20: Mejor que Ubuntu y Microsoft Windows?