Introducción
Este documento describe cómo configurar un servidor Linux con distribución CentOS como servidor de protocolo de transferencia de archivos seguro (SFTP) con autenticación de infraestructura de clave pública (PKI) hacia Identity Services Engine (ISE).
Prerequisites
Requirements
Cisco recomienda que tenga conocimiento sobre estos temas:
- Conocimiento general de ISE
- configuración del repositorio ISE
- Conocimiento general básico de Linux
Componentes Utilizados
La información que contiene este documento se basa en las siguientes versiones de software y hardware.
- ISE 2.2
- ISE 2.4
- ISE 2.6
- ISE 2.7
- ISE 3.0
- CentOS Linux versión 8.2.2004 (Core)
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si su red está activa, asegúrese de comprender el impacto potencial de cualquier comando.
Antecedentes
Para aplicar la seguridad para las transferencias de archivos, ISE puede autenticarse a través de certificados PKI a través de SFTP para garantizar una forma más segura de acceder a los archivos de repositorios.
Configurar
1. Configuración del servidor CentOS
1.1 Cree un directorio como usuario raíz.
mkdir -p /cisco/engineer
1.2. Cree un grupo de usuarios.
groupadd tac
1.3. Este comando agrega el usuario al directorio principal (archivos), especifica que el usuario pertenece a los ingenieros de grupo.
useradd -d /cisco/engineer -s /sbin/nologin engineer
usermod -aG tac engineer
Nota: La parte /sbin/nologin del comando indica que el usuario no podrá iniciar sesión a través de Secure Shell (SSH).
1.4. Proceda a crear el directorio para cargar los archivos.
mkdir -p /cisco/engineer/repo
1.4.1 Establecer permisos para los archivos de directorio.
chown -R engineer:tac /cisco/engineer/repo
find /cisco/engineer/repo -type d -exec chmod 2775 {} \+
find /cisco/engineer/repo -type f -exec chmod 664 {} \+
1.5. Cree el directorio y el archivo en el que el servidor CentOS realiza la verificación de los certificados.
Directorio:
mkdir /cisco/engineer/.ssh
chown engineer:engineer /cisco/engineer/.ssh
chmod 700 /cisco/engineer/.ssh
Archivo:
touch /cisco/engineer/.ssh/authorized_keys
chown engineer:engineer /cisco/engineer/.ssh/authorized_keys
chmod 600 /cisco/engineer/.ssh/authorized_keys
1.6. Cree los permisos de inicio de sesión en el archivo sshd_config del sistema.
Para editar el archivo, puede utilizar la herramienta vim Linux con este comando.
vim /etc/ssh/sshd_config
1.6.1 Agregue las líneas especificadas a continuación.
#Subsystem sftp /usr/libexec/openssh/sftp-server
Subsystem sftp internal-sftp
Match Group tac
ChrootDirectory %h
X11Forwarding no
AllowTCPForwarding no
ForceCommand internal-sftp
1.7. Ejecute el comando para verificar los síntaxis del archivo del sistema sshd_config.
sshd -t
Nota: Ningún resultado significa que la sintaxis del archivo es correcta.
1.8. Proceda a reiniciar el servicio SSH.
systemctl restart sshd
Nota: Algunos servidores Linux tienen aplicación selinux, para confirmar este parámetro, puede utilizar el comando getenforce. Como recomendación, si está en modo de ejecución, cámbielo a permisivo.
1.9. (opcional) Edite el archivo semánage.conf para establecer la aplicación en permisiva.
vim /etc/selinux/semanage.conf
Agregue el comando setenforce0.
setenforce0
2. Configuración del repositorio de ISE
2.1. Continúe agregando el repositorio a través de la interfaz gráfica de usuario (GUI) de ISE.
Vaya a Administración>Mantenimiento del sistema>Repositorio>Agregar
2.2. Introduzca la configuración adecuada para su repositorio.
Nota: Si necesita acceder al directorio de repo en lugar del directorio raíz del ingeniero, la ruta de destino debe ser /repo/.
3. Generar pares clave en el servidor ISE
3.1. GUI de ISE
Vaya a Administración>Mantenimiento del sistema>Repositorio>Generar pares de claves, como se muestra en la imagen.
Nota: Debe generar pares clave desde la GUI de ISE y la interfaz de línea de comandos (CLI) para tener acceso bidireccional completo al repositorio.
3.1.1. Introduzca una frase de paso, lo cual es necesario para proteger el par de claves.
Nota: Primero, genere los pares de claves antes de exportar las claves públicas.
3.1.2. Proceda a exportar la clave pública.
Vaya a Administración>Mantenimiento del sistema>Repositorio>Exportar clave pública.
Seleccione Exportar clave pública. Se genera un archivo con el nombre id_rsa.pub (asegúrese de que se guarda para futuras referencias).
3.2. CLI de ISE
3.2.1. Vaya a la CLI del nodo en el que desea finalizar la configuración del repositorio.
Nota: A partir de este punto, se necesitarán los siguientes pasos en cada nodo que desee permitir el acceso al repositorio SFTP con el uso de la autenticación PKI.
3.2.2. Ejecute este comando para agregar la IP del servidor Linux al archivo del sistema host_key.
crypto host_key add host <Linux server IP>
3.2.3. Genere una clave pública de CLI.
crypto key generate rsa passphrase <passphrase>
3.2.4. Exporte los archivos de clave pública desde la CLI de ISE con este comando.
crypto key export <name of the file> repository <repository name>
Nota: Debe tener un repositorio al que previamente se haya podido acceder y al que pueda exportar el archivo de clave pública.
4. Integración
4.1. Inicie sesión en su servidor CentOS.
Navegue hasta la carpeta en la que configuró previamente el archivo authorized_key.
4.2. Edite el archivo de clave autorizado.
Ejecute el comando vim para modificar el archivo.
vim /cisco/engineer/.ssh/authorized_keys
4.3. Copie y pegue el contenido generado en los pasos 4 y 6 de la sección Generar pares clave.
Clave pública generada a partir de la GUI de ISE:
Clave pública generada desde la CLI de ISE:
Archivo Authorized_key en el servidor Linux:
4.4. Después de pegar las claves en el archivo, presione ESC, continúe para ejecutar la wq. para guardar el archivo.
Verificación
1. Desde el servidor Linux, ejecute este comando como root.
tail -f /var/log/secure
Se debe mostrar el resultado, como se muestra en la imagen.
2. Para la verificación de ISE.
Vaya a Administración>Sistema>Mantenimiento>Repositorio en la GUI.
Seleccione el repositorio deseado de la Lista de repositorios y seleccione Validar.
Debe ver una ventana emergente que indica la respuesta del servidor en la esquina inferior derecha de la pantalla.
Desde la CLI, ejecute el comando show repo sftp_pki para validar las claves.
Para seguir depurando ISE, ejecute este comando en CLI:
debug transfer 7
Se debe mostrar el resultado, como se muestra en la imagen:
Información Relacionada
https://www.cisco.com/c/en/us/td/docs/security/ise/2-2/admin_guide/b_ise_admin_guide_22/b_ise_admin_guide_22_chapter_01011.html