Asegurando el acceso al servidor con Gravitational Teleport

Asegurar el acceso SSH es fundamental para mantener la integridad y seguridad de la infraestructura del servidor. Si estás luchando por asegurar el acceso al servidor de manera efectiva, no te preocupes. Gravitational Teleport emerge como una solución de vanguardia que revoluciona la forma en que los equipos gestionan y fortifican la seguridad de SSH.

En este tutorial, desentrañarás las complejidades de Teleport, equipándote con lo esencial para salvaguardar tu infraestructura de servidor. Desde la gestión de acceso sin problemas hasta funciones de seguridad robustas, explorarás cómo Teleport asegura tu acceso al servidor.

¡Domina la seguridad del servidor con Gravitational Teleport y fortifica tu infraestructura!

Prerrequisitos

Empezar este tutorial de Gravitational Teleport requiere cierto conocimiento y recursos fundamentales. Por lo tanto, asegúrate de que se cumplan los prerrequisitos indicados para seguir este tutorial:

  • Dos servidores Linux: Un servidor (anfitrión) se utiliza como host bastión, y el otro se utiliza para restringir el acceso SSH con Teleport. Este tutorial utiliza dos instancias EC2 de Ubuntu 22.04.
  • Tráfico de entrada HTTPS permitido para el servidor host (consulta la documentación de tu proveedor de nube).

💡 Nota: Este tutorial utiliza instancias de AWS EC2. Los cambios necesarios se realizan en Grupo de seguridad > Reglas de entrada. Consulta la documentación de AWS sobre cómo configurar reglas de entrada de grupo de seguridad.

  • A registered domain name with DNS A record pointing to your host server’s IP address.
  • A multi-factor authenticator app such as Authy, Google Authenticator, or Microsoft Authenticator.

Instalación y configuración de Gravitational Teleport en Ubuntu

Con la configuración de tu DNS lista, debes dotar a tu servidor Ubuntu de características de seguridad sólidas: Gravitational Teleport. Como un castillo con las puertas abiertas de par en par, sin las medidas de seguridad adecuadas, tu servidor es vulnerable a accesos no autorizados y posibles violaciones de seguridad.

Gravitational Teleport garantiza una fortificación sólida, permitiendo el acceso solo a individuos autorizados a tu fortaleza de servidor.

Para instalar y configurar Gravitational Teleport, lleva a cabo lo siguiente:

1. SSH en el servidor host, ejecuta el siguiente comando para actualizar el repositorio del gestor de paquetes e instalar Teleport. La última versión es 15.1.9 en el momento de escribir esto, pero siempre puedes consultar todas las versiones.

curl https://goteleport.com/static/install.sh | bash -s 15.1.9

💡 Nota: Este tutorial utiliza el Administrador de Paquetes Avanzado (APT). Si el script de instalación de Teleport no funciona correctamente, visita la documentación oficial de Teleport para obtener instrucciones de instalación adaptadas a tu administrador de paquetes.

Después de ejecutar el script de instalación anterior, deberías obtener una salida similar.

Installing Teleport on Ubuntu

2. Una vez instalado, ejecuta el siguiente comando systemctl para verificar el estado del servicio teleport.

systemctl status teleport

Como se muestra a continuación, Teleport actualmente no está activo y está deshabilitado.

Antes de habilitar y comenzar el servicio de Teleport, debes configurar algunas configuraciones para Teleport en los siguientes pasos.

Checking the Teleport service status

3. A continuación, ejecuta este comando teleport para realizar lo siguiente:

  • Generar un archivo de configuración llamado /etc/teleport.yaml para Teleport. El servicio de Systemd de Teleport, que se configuró durante la instalación, requiere este archivo para iniciar Teleport.
  • Especificar la dirección de correo electrónico (reemplaza <TU_CORREO_ELECTRÓNICO>) para el registro y las notificaciones del certificado ACME. La bandera --acme indica a Teleport que obtenga automáticamente certificados de Let’s Encrypt.
  • Especifique el Teleport --cluster-name, que suele representarse con la URL del servidor proxy de Teleport (reemplace <SU_URL_DEL_PROXY_DE_TELEPORT>).
sudo teleport configure -o /etc/teleport.yaml \--acme --acme-email=<YOUR_EMAIL> \--cluster-name=<YOUR_TELEPORT_PROXY_URL>

Si se configura correctamente, verá la siguiente salida en la terminal.

Configuring Teleport

4. Ahora, ejecute cada comando a continuación para habilitar y iniciar el servicio de Teleport.

Estos comandos no tienen salida en la terminal, pero verificará los cambios en el siguiente paso.

# Habilitar el servicio de Teleport para que se inicie automáticamente en el arranquesudo systemctl enable teleport# Iniciar el serviciosudo systemctl start teleport

5. Por último, ejecute el siguiente comando de systemctl para confirmar el estado del servicio de Teleport.

systemctl status teleport

La salida a continuación confirma que el servicio de Teleport está activo y en ejecución, lo que significa que puede acceder a la interfaz de usuario y realizar operaciones.

Verifying the Teleport service is active and running

Configuración del acceso a la interfaz web de Teleport y credenciales de administrador

Teleport está en funcionamiento, ¿pero cómo administra el acceso de usuario de forma fluida, supervisa sesiones y supervisa la infraestructura de su servidor? Puede interactuar con Teleport desde la comodidad de su navegador web con su interfaz web, pero primero, debe configurar el acceso a la interfaz web y las credenciales de usuario administrador.

Para configurar el acceso a la interfaz web de Teleport y las credenciales de administrador, siga estos pasos:

1. Visita la URL del proxy de Teleport que configuraste en el paso tres de la sección “Instalación y configuración de Gravitational Teleport en Ubuntu” (es decir, https://teleport.example.com).

Si tienes éxito, te dará la bienvenida la página de inicio de sesión de Teleport que se muestra a continuación. Desafortunadamente, aún no puedes iniciar sesión. Debes configurar un usuario administrador y autenticación de dos factores (paso dos).

Accessing the Teleport sign-in page

2. En tu servidor host, ejecuta el siguiente comando de la herramienta CLI de Teleport (tctl) para realizar lo siguiente:

  • Crea (add) un usuario administrador dedicado de Teleport.
  • Permite que el usuario admin inicie sesión en hosts SSH con los inicios de sesión designados: root, ec2-user y ubuntu.
  • Asigna los roles access y editor al usuario administrador.
sudo tctl users add admin --roles=access,editor --logins=root,ec2-user,ubuntu 

Una vez añadido, copia el enlace de invitación generado desde la salida que indica la correcta creación del usuario administrador.

Creating a dedicated Teleport admin user

3. Navega hasta el enlace de invitación que copiaste en el paso tres en una nueva pestaña del navegador, luego haz clic en EMPEZAR en la página de bienvenida, como se muestra a continuación. Esta acción te permite comenzar a configurar el usuario administrador.

Accessing the Teleport sign-in page

4. A continuación, proporciona y confirma una contraseña segura para el usuario administrador, y haz clic en CONTINUAR para proceder.

Setting the admin password

5. Abre tu aplicación de autenticación, escanea el código QR, escribe el Código de autenticación generado en el campo requerido y haz clic en ENVIAR.

Este proceso te permite configurar la autenticación de dos factores en tu dispositivo para una capa adicional de seguridad.

Setting up two-factor authentication

6. Ahora, haz clic en IR AL CLÚSTER para acceder a tu cuenta de Teleport.

Accessing the Teleport dashboard

Tu navegador se redirecciona al panel de control de Teleport como el que se muestra a continuación, que muestra tu servidor host donde se ejecuta Teleport. Observa que tu servidor host es el único recurso disponible que actualmente maneja Teleport.

Overviewing the Teleport dashboard

Agregando y Administrando Recursos con Teleport

Ahora tienes acceso a tu panel de control de Teleport, que tiene solo un recurso disponible. Pero una plataforma centralizada realmente brilla cuando puedes administrar varios recursos dentro de ella.

Con las poderosas capacidades de gestión de recursos de Teleport, puedes incorporar fácilmente servidores adicionales, bases de datos u otros componentes de infraestructura, todo desde una única interfaz.

Para administrar recursos con Teleport, procede de la siguiente manera:

1. En el panel de control de Teleport, haz clic en Inscribir Nuevo Recurso (en la esquina superior derecha) para iniciar la inscripción de un nuevo recurso.

Enrolling a new resource

2. Elige uno de entre la multitud de recursos que potencialmente puedes agregar para asegurar el acceso utilizando Teleport. La elección de este tutorial es el Servidor Ubuntu 14.04+, como se indica a continuación.

Selecting a resource to add for access management

3. Copia el comando generado por Teleport, que ejecutarás en el siguiente paso.

Copying the generated command

4. Ahora, abre una terminal en tu segundo servidor y ejecuta el comando que copiaste en el paso tres para agregar el servidorpara la gestión de acceso.

Si tienes éxito, verás una salida como la captura de pantalla a continuación.

Adding a second server to Teleport

5. Una vez agregado, haz clic en PRÓXIMO y completa los avisos consecutivos haciendo clic en PRÓXIMO y FINALIZAR.

Proceeding with configuring the new resource

6. Por último, navega hasta tu panel de Teleport y verás tu instancia recién añadida, como se ilustra a continuación.

Confirming the new Teleport instance is successfully added

Conclusión

Aquí lo tienes: instalado y configurado con éxito Gravitational Teleport, configurada la interfaz web de Teleport y establecidas las credenciales de administrador. ¡A lo largo de este tutorial, has obtenido una valiosa visión sobre cómo asegurar y gestionar el acceso al servidor de manera efectiva!

Ahora, ¿por qué no llevar este conocimiento recién adquirido al siguiente nivel? ¡Instala la CLI de Teleport (tsh) específicamente en tu máquina local y conecta con tu servidor de Teleport a través de la CLI en lugar de la interfaz de usuario!

¡Implementa la gestión de acceso para más recursos, como Clústeres de Kubernetes y mucho más!

Source:
https://adamtheautomator.com/gravitational-teleport/