15 de septiembre de 2023
En esta publicación de blog, aprenderá cómo grabar sesiones SSH en una VSI de Red Hat Enterprise Linux (RHEL) en una red VPC privada utilizando paquetes integrados. La red privada de VPC se aprovisiona a través de Terraform y los paquetes RHEL se instalan mediante la automatización de Ansible. Además, aprenderá a configurar un host bastión de alta disponibilidad.
¿Qué es la grabación de sesiones y por qué es necesaria?
Un host bastión y un servidor de salto son mecanismos de seguridad que se utilizan en entornos de red y de servidor para controlar y mejorar la seguridad al conectarse a sistemas remotos. Tienen propósitos similares pero tienen algunas diferencias en su implementación y casos de uso. El host bastión se coloca frente a la red privada para recibir solicitudes SSH del tráfico público y pasar la solicitud a la máquina descendente. Los servidores bastión y de salto son vulnerables a la intrusión porque están expuestos al tráfico público.
La grabación de sesiones ayuda al administrador de un sistema a auditar las sesiones SSH de los usuarios y asegurarse de que cumplan con los requisitos reglamentarios. En caso de una violación de la seguridad, el administrador querrá auditar y analizar las sesiones de los usuarios. Esto es fundamental para un sistema sensible a la seguridad.
¿Qué es una red VPC privada?
A nube privada virtual es completamente privado si no hay tráfico de red de entrada o salida pública. En términos técnicos simples, es privado si no hay puertas de enlace públicas en las subredes (subredes privadas) ni IP flotantes en las instancias de servidor virtual (VSI).
¿Cómo me conecto a la red VPC privada?
La VPN de cliente a sitio para VPC es una de las dos opciones de VPN disponibles en IBM Cloud y permite a los usuarios conectarse a los recursos de IBM Cloud a través de conexiones seguras y cifradas.
La VPN de cliente a sitio tiene alta disponibilidad, con dos servidores VPN que se crean en dos zonas de disponibilidad diferentes en la misma región. Los bastiones también están altamente disponibles.
Requisitos previos
Aprovisione la red VPC privada utilizando Terraform
- Una vez que tienes el Administrador de secretos de IBM Cloud secreto con el certificado, inicie su terminal y configure las siguientes variables de Terraform:
export TF_VAR_ibmcloud_api_key=<IBM_CLOUD_API_KEY> export TF_VAR_secrets_manager_certificate_crn=<SECRET_CRN>
git clone https://github.com/VidyasagarMSC/private-vpc-network cd terraform
- Ejecute los comandos de Terraform para aprovisionar los recursos de VPC (por ejemplo, subredes, hosts bastión (VSI), VPN, etc.):
terraform init terraform plan terraform apply
Conéctese a una VPN de cliente a sitio
- Una vez que los recursos de VPC se hayan aprovisionado correctamente, deberá descargar el perfil del cliente VPN navegando a Página de servidores VPN en IBM Cloud.
- Haga clic en el Pestaña de servidores de cliente a sitio y luego en el nombre de la VPN:
- Descarga el perfil desde Clientes .
- La VPN proporcionada a través de Terraform utiliza certificados. Siga el instrucciones aquí para conectarse al cliente OpenVPN.
- Debería ver la conexión exitosa en su cliente OpenVPN:
Verificar la conexión SSH
- En una terminal, agregue la clave privada SSH al agente SSH con el siguiente comando:
ssh-add <LOCATION_OF_PRIVATE_SSH_KEY>
- Ejemplo:
ssh-add ~/.ssh/<NAME_OF_THE_PRIVATE_KEY>
- Ejecute el siguiente comando para SSH en RHEL VSI a través de un host bastión. Utilizará la dirección IP privada del bastión en la Zona 1:
ssh -J root@10.10.0.13 root@10.10.128.13
- Recuerde, debe estar conectado a la VPN de cliente a sitio para acceder a RHEL VSI a través del host bastión.
- Después de SSH, debería ver instrucciones para habilitar la grabación de sesiones SSH utilizando el paquete TLOG en RHEL.
Implementar la grabación de sesiones usando Ansible
Para implementar la solución de grabación de sesiones, debe tener los siguientes paquetes instalados en RHEL VSI:
tlog
SSSD
cockpit-session-recording
Los paquetes se instalarán a través de la automatización de Ansible en todas las VSI, tanto hosts bastión como RHEL VSI.
- Vaya a la carpeta Ansible:
cd ansible
- Crear
hosts.ini
del archivo de plantilla:
cp hosts_template.ini hosts.ini
- Ejecute el manual de Ansible para instalar los paquetes desde un repositorio/espejo privado de IBM Cloud:
ansible-playbook main_playbook.yml -i hosts.ini --flush-cache
Puede ver en la Figura 1 que después de realizar SSH en la máquina RHEL, verá una nota que dice: ¡ATENCIÓN! ¡Tu sesión está siendo grabada!
Consulta las grabaciones, registros e informes de las sesiones.
Si observa de cerca los mensajes posteriores a SSH, verá una URL a la consola web a la que se puede acceder utilizando el nombre de la máquina o la IP privada a través del puerto 9090. Para permitir el tráfico en el puerto 9090, en el código Terraform, cambie el valor de allow_port_9090
variable a true
y correr terraform apply
. Lo último terraform apply
Agregará ACL y reglas de grupo de seguridad para permitir el tráfico en el puerto 9090.
- Ahora, abra un navegador y navegue hasta
http://10.10.128.13:9090
. Para acceder utilizando el nombre VSI, debe configurar un DNS privado (fuera del alcance de este artículo). Necesita una contraseña de root para acceder a la consola web:
- Navegue hasta Grabación de sesiones en el lado izquierdo para ver la lista de grabaciones de sesiones. Además de las grabaciones de las sesiones, podrás consultar los logs, informes de diagnóstico, etc.:
Lectura recomendada
Conclusión
Este artículo cubrió por qué se requiere la grabación de sesiones en hosts bastión para auditoría y cumplimiento y cómo se puede configurar la grabación de sesiones con los paquetes RHEL integrados mediante Ansible Automation.
Mientras diseñaba una red de nube privada virtual segura, aprendió las mejores prácticas en la arquitectura de una red privada de VPC. También cubrimos la necesidad de crear servidores VPN y hosts bastión de alta disponibilidad. Con el aprovisionamiento de infraestructura en la nube utilizando Terraform y Ansible para la grabación de sesiones, obtuvo experiencia práctica.
Obtenga más información sobre IBM Cloud VPC
Si tiene alguna consulta, no dude en comunicarse conmigo en Twitter o en Etiqueta LinkedIn.
Más de la nube
- Distribución de relaciones públicas y contenido potenciado por SEO. Consiga amplificado hoy.
- PlatoData.Network Vertical Generativo Ai. Empodérate. Accede Aquí.
- PlatoAiStream. Inteligencia Web3. Conocimiento amplificado. Accede Aquí.
- PlatoESG. Automoción / vehículos eléctricos, Carbón, tecnología limpia, Energía, Ambiente, Solar, Gestión de residuos. Accede Aquí.
- PlatoSalud. Inteligencia en Biotecnología y Ensayos Clínicos. Accede Aquí.
- ChartPrime. Eleve su juego comercial con ChartPrime. Accede Aquí.
- Desplazamientos de bloque. Modernización de la propiedad de compensaciones ambientales. Accede Aquí.
- Fuente: https://www.ibm.com/blog/securely-record-ssh-sessions-on-rhel-in-a-private-vpc-network/