EN ESTA PÁGINA
Configurar el servicio Telnet para el acceso remoto a un enrutador o conmutador
Configurar el servicio FTP para el acceso remoto al enrutador o conmutador
Configurar el servicio Finger para el acceso remoto al enrutador
Configurar el servicio SSH para el acceso remoto al enrutador o conmutador
Descripción general de la autenticación basada en certificados SSH
Configurar claves de host conocidas SSH para la copia segura de datos
Configurar el servicio SSH para admitir criptografía heredada
Configurar conexiones NETCONF-over-SSH en un puerto TCP especificado
Información general sobre el acceso remoto
Usted (el administrador de red) puede acceder a un enrutador, conmutador o dispositivo de seguridad de forma remota mediante servicios como DHCP, Finger, FTP, rlogin, SSH y servicios Telnet. En este tema se muestra cómo configurar el acceso remoto mediante Telnet, SSH, FTP y servicios Finger.
Descripción general de los servicios del sistema
Por razones de seguridad, el acceso remoto al enrutador está deshabilitado de forma predeterminada. Debe configurar el enrutador explícitamente para que los usuarios de sistemas remotos puedan acceder a él. Los usuarios pueden acceder al enrutador desde un sistema remoto por medio de los servicios DHCP, finger, FTP, rlogin, SSH y Telnet. Además, las aplicaciones cliente del protocolo XML de Junos pueden usar Capa de sockets seguros (SSL) o el servicio de texto sin formato específico del protocolo XML de Junos, entre otros servicios.
Para proteger los recursos del sistema, puede limitar el número de conexiones simultáneas que acepta un servicio y el número de procesos propiedad de un solo usuario. Si se supera cualquiera de los límites, los intentos de conexión fallan.
Configurar el servicio Telnet para el acceso remoto a un enrutador o conmutador
Para configurar el enrutador o conmutador para que acepte Telnet como servicio de acceso, incluya la telnet
instrucción en el nivel de [edit system services]
jerarquía:
[edit system services] telnet { connection-limit limit; rate-limit limit; }
De forma predeterminada, el enrutador o conmutador admite un número limitado de sesiones de Telnet e intentos de conexión simultáneos por minuto.
Opcionalmente, puede incluir una o ambas de las siguientes instrucciones para cambiar los valores predeterminados:
-
connection-limit limit
: Número máximo de conexiones simultáneas por protocolo (IPV4 e IPv6). El rango es de 1 a 250. El valor predeterminado es 75. Cuando se configura un límite de conexión, el límite se aplica al número de sesiones Telnet por protocolo (IPv4 e IPv6). Por ejemplo, un límite de conexión de 10 permite 10 sesiones de telnet IPv6 y 10 sesiones de telnet IPv4. -
rate-limit limit
: Número máximo de intentos de conexión aceptados por minuto (de 1 a 250). El valor predeterminado es 150. Cuando se configura un límite de velocidad, el límite se aplica al número de intentos de conexión por protocolo (IPv4 e IPv6). Por ejemplo, un límite de velocidad de 10 permite 10 intentos de conexión de sesión telnet IPv6 por minuto y 10 intentos de conexión de sesión telnet IPv4 por minuto.
Configurar el servicio FTP para el acceso remoto al enrutador o conmutador
Para configurar el dispositivo para que acepte FTP como servicio de acceso, incluya la ftp
instrucción en el nivel de [edit system services]
jerarquía:
[edit system services] ftp;
Puede utilizar FTP pasivo para acceder a dispositivos que solo aceptan servicios FTP pasivos. Todos los comandos e instrucciones que utilizan FTP también aceptan FTP pasivo. Incluya la ftp
instrucción en el nivel de [edit system services]
jerarquía para utilizar FTP activo o FTP pasivo.
Para iniciar una sesión FTP pasiva, utilice pasvftp
(en lugar de ftp
) en el formato FTP estándar (ftp://destination). Por ejemplo:
request system software add pasvftp://name.com/jinstall.tgz
Configurar el servicio Finger para el acceso remoto al enrutador
Para configurar el enrutador para que acepte finger como servicio de acceso, incluya la finger
instrucción en el nivel de [edit system services]
jerarquía:
[edit system services] finger;
Configurar el servicio SSH para el acceso remoto al enrutador o conmutador
Para configurar el enrutador o conmutador para que acepte SSH como servicio de acceso, incluya la ssh
instrucción en el nivel de [edit system services]
jerarquía:
[edit system services] ssh { authentication-order [method 1 method2...]; authorized-keys-command authorized-keys-command; authorized-keys-command-user authorized-keys-command-user; authorized-principals-file filename authorized-principals-command program-path ciphers [ cipher-1 cipher-2 cipher-3 ...]; client-alive-count-max number; client-alive-interval seconds; connection-limit limit; fingerprint-hash (md5 | sha2-256); host-certificate-file filename hostkey-algorithm (algorithm | no-algorithm); key-exchange [algorithm1 algorithm2...]; log-key-changes log-key-changes; macs [algorithm1 algorithm2...]; max-pre-authentication-packets number; max-sessions-per-connection number; no-challenge-response; no-password-authentication; no-passwords; no-public-keys; no-tcp-forwarding; port port-number; protocol-version [v2]; rate-limit number; rekey { data-limit bytes; time-limit minutes; } root-login (allow | deny | deny-password); sftp-server; tcp-forwarding; trusted-user-ca-key-file filename }
De forma predeterminada, el enrutador o conmutador admite un número limitado de sesiones SSH simultáneas e intentos de conexión por minuto. Utilice las instrucciones siguientes para cambiar los valores predeterminados:
-
connection-limit limit
: Número máximo de conexiones simultáneas por protocolo (IPv4 e IPv6). El intervalo es un valor comprendido entre 1 y 250. El valor predeterminado es 75. Cuando se configura un límite de conexión, el límite se aplica al número de sesiones SSH por protocolo (IPv4 e IPv6). Por ejemplo, un límite de conexión de 10 permite 10 sesiones SSH IPv6 y 10 sesiones SSH IPv4. -
max-sessions-per-connection number
: incluya esta instrucción para especificar el número máximo de sesiones SSH permitidas por conexión SSH. Esto le permite limitar el número de sesiones clonadas tunelizadas dentro de una sola conexión SSH. El valor predeterminado es 10. -
rate-limit limit
: número máximo de intentos de conexión aceptados por minuto (un valor de 1 a 250). El valor predeterminado es 150. Cuando se configura un límite de velocidad, el límite se aplica al número de intentos de conexión por protocolo (IPv4 e IPv6). Por ejemplo, un límite de velocidad de 10 permite 10 intentos de conexión de sesión SSH IPv6 por minuto y 10 intentos de conexión de sesión SSH IPv4 por minuto. -
data-limit
—Límite de datos antes de renegociar las claves de sesión (bytes) -
time-limit
—Límite de tiempo antes de renegociar las claves de sesión (minutos)
De forma predeterminada, un usuario puede crear un túnel SSH a través de una sesión CLI a un enrutador que ejecute Junos OS a través de SSH. Este tipo de túnel se puede utilizar para reenviar tráfico TCP, sin pasar por los filtros de firewall o las listas de control de acceso. Al omitir los filtros de firewall o las listas de control de acceso, este tipo de túnel permite el acceso a recursos más allá del enrutador. Utilice la no-tcp-forwarding
opción para impedir que un usuario cree un túnel SSH a un enrutador a través de SSH.
Para obtener información acerca de otras opciones de configuración, consulte los siguientes temas:
- Configurar el inicio de sesión raíz a través de SSH
- Configurar conexiones SFTP entrantes
- Configurar la versión del protocolo SSH
- Configurar el mecanismo de Client Alive
- Configurar el algoritmo hash de huella digital SSH
Configurar el inicio de sesión raíz a través de SSH
De forma predeterminada, los usuarios pueden iniciar sesión en el enrutador o conmutador como root
a través de SSH cuando el método de autenticación no requiere una contraseña. Para controlar el acceso de los usuarios a través de SSH, incluya la root-login
instrucción en el nivel de [edit systems services ssh]
jerarquía:
[edit system services ssh] root-login (allow | deny | deny-password);
allow
: permite a los usuarios iniciar sesión en el enrutador o conmutador como raíz a través de SSH.
deny
: impide que los usuarios inicien sesión en el enrutador o conmutador como raíz mediante SSH.
deny
-password
—Permite a los usuarios iniciar sesión en el enrutador o conmutador como root a través de SSH cuando el método de autenticación (por ejemplo, RSA) no requiere una contraseña.
El valor predeterminado es deny-password
.
Configurar conexiones SFTP entrantes
El protocolo de transferencia de archivos SSH (SFTP) es un protocolo de red que proporciona acceso a archivos, transferencia de archivos y administración de archivos a través de cualquier flujo de datos confiable. Las conexiones SFTP entrantes están deshabilitadas de forma predeterminada. Si lo desea, puede habilitar globalmente las conexiones SFTP entrantes configurando la instrucción sftp-server
en el nivel de [edit system services ssh]
jerarquía.
Sólo las conexiones SFTP entrantes están deshabilitadas de forma predeterminada. Por ejemplo, dados los dispositivos A y B, no puede conectarse a través de SFTP de B a A de forma predeterminada. Sin embargo, puede conectarse a través de SFTP desde el dispositivo B al dispositivo A si lo configura sftp-server
en el dispositivo A.
Las conexiones SFTP entrantes están deshabilitadas de forma predeterminada. Para habilitar las conexiones SFTP entrantes:
Configurar la versión del protocolo SSH
De forma predeterminada, solo está habilitada la versión 2 del protocolo SSH.
Para configurar el enrutador o conmutador para que utilice la versión 2 del protocolo SSH, incluya la protocol-version
instrucción y especifique v2
en el [edit system services ssh]
nivel de jerarquía:
[edit system services ssh] protocol-version [ v2 ];
Configurar el mecanismo de Client Alive
El mecanismo de cliente vivo es valioso cuando el cliente o servidor depende de saber cuándo una conexión se ha vuelto inactiva. Se diferencia del mecanismo keepalive estándar porque los mensajes vivos del cliente se envían a través del canal cifrado. El mecanismo de cliente activo no está habilitado de forma predeterminada. Para habilitarlo, configure las client-alive-count-max
instrucciones y client-alive-interval
. Esta opción solo se aplica a la versión 2 del protocolo SSH.
En el ejemplo siguiente, los clientes SSH que no responden se desconectarán después de aproximadamente 100 segundos (20 x 5):
[edit system ssh] client-alive-count-max 5; client-alive-interval 20;
Configurar el algoritmo hash de huella digital SSH
Para configurar el algoritmo hash utilizado por el servidor SSH cuando muestra huellas digitales clave, incluya la fingerprint-hash
instrucción y especifique md5
o sha2-256
en el nivel de [edit system services ssh]
jerarquía:
[edit system services ssh] fingerprint-hash (md5 | sha2-256);
Descripción general de la autenticación basada en certificados SSH
A partir de Junos OS y Junos OS Evolved versión 22.4R1, puede configurar la autenticación basada en certificados SSH para usuarios y hosts. Esta característica le permite establecer acceso SSH sin contraseña para usuarios y hosts de confianza sin verificar las huellas digitales de las claves.
- Beneficios de la autenticación basada en certificados SSH
- Generación de claves de firma
- Configuración
Beneficios de la autenticación basada en certificados SSH
-
La autenticación basada en certificados SSH elimina la necesidad de que los usuarios recuerden e ingresen contraseñas, lo que agiliza el proceso de inicio de sesión.
-
En comparación con los enfoques tradicionales basados en contraseñas, los certificados SSH ofrecen una seguridad más sólida. Son más difíciles de violar sin contraseña para adivinar o descifrar.
-
Los certificados SSH simplifican la administración de las claves de autenticación. En lugar de administrar claves individuales para cada usuario y host, los administradores pueden emitir y revocar certificados desde una autoridad de certificación centralizada.
Generación de claves de firma
Las claves de firma son claves criptográficas especializadas que se utilizan en la autenticación basada en certificados SSH. El primer paso para configurar la autenticación basada en certificados SSH es generar claves de firma. Puede generar claves de firma en cualquier sistema Linux/FreeBSD. Siga estos pasos para generar claves de firma para la autenticación basada en certificados SSH:
Ejecute el comando:
ssh-keygen -f <filename_ca>
. Esto creará una clave privada denominada y<filename_ca>
una clave pública correspondiente denominada<filename_ca.pub>
.Inicie sesión en su dispositivo Juniper y configure el archivo de clave de entidad de certificación (CA) de usuario de confianza SSH ejecutando el comando: y, a continuación,
set system services ssh trusted-user-ca-key-file <path-to-public-key>
confirme la configuración.Cada usuario puede generar sus propias claves de usuario mediante el siguiente comando de CLI:
ssh-keygen -t <rsa|ecdsa|ed25519>
.Copie la clave pública creada por el usuario en el equipo que tenga los certificados
<filename_ca>
de usuario y<filename_ca.pub>
.Firme la clave pública de usuario en el
<filename_ca.pub>
archivo.
Configuración
Para configurar la autenticación basada en certificados SSH, use las siguientes instrucciones de configuración de CLI:
-
[system services ssh trusted-user-ca-key-file filename]
: configure elTrustedUserCAKey
archivo en /etc/ssh/sshd_config, que contiene las claves públicas de un certificado SSH. -
[system services ssh host-certificate-file filename]
: configure elHostCertificate
archivo en /etc/ssh/sshd_config, que contiene el certificado de host firmado. -
[system services ssh authorized-principals-file filename]
: configure elAuthorizedPrincipals
archivo en /var/etc, que contiene una lista de nombres, uno de los cuales debe aparecer en el certificado para que sea aceptado para la autenticación. -
[system services ssh authorized-principals-command program-path]
: especifique un programa que se utilizará para generar la lista de entidades de certificación permitidas que se encuentran en elAuthorizedPrincipals
archivo.
Deshabilitar SSH
Si habilitó SSH y desea deshabilitarlo, simplemente elimine la ssh
instrucción del [edit system services]
nivel jerárquico.
Si solo desea deshabilitar SSH externo, utilice la access-disable-external
instrucción en el nivel de [edit system services ssh]
jerarquía.
Cuando SSH está habilitado de forma predeterminada, no puede deshabilitarlo a través de la [edit system services]
jerarquía como de costumbre. En su lugar, puede configurar un filtro de firewall para denegar el acceso SSH:
set firewall family inet filter SSH-FILTER term 1 from protocol tcp set firewall family inet filter SSH-FILTER term 1 from port ssh set firewall family inet filter SSH-FILTER term 1 from interface fxp0 set firewall family inet filter SSH-FILTER term 1 then discard set firewall family inet filter SSH-FILTER term 2 then accept
Procedimiento paso a paso
Siga estos pasos para configurar un filtro de firewall para denegar el acceso SSH:
-
Defina el término 1de filtro . Este término deniega el tráfico TCP de SSH:
[edit] user@R1# set firewall family inet filter SSH-FILTER term 1 from protocol tcp user@R1# set firewall family inet filter SSH-FILTER term 1 from port ssh user@R1# set firewall family inet filter SSH-FILTER term 1 from interface fxp0 user@R1# set firewall family inet filter SSH-FILTER term 1 then discard
-
Defina el término 2de filtro . Este término permite cualquier tráfico que no sea negado por el término 1de filtro:
[edit] user@R1# set firewall family inet filter SSH-FILTER term 2 then accept
Para obtener más información sobre el uso de filtros de firewall para deshabilitar SSH, consulte Ejemplo: configurar un filtro para bloquear el acceso Telnet y SSH.
El comando telnet
Puede usar el comando de la CLI telnet
para abrir una sesión de Telnet en un dispositivo remoto:
user@host> telnet host <8bit> <inet> <inet6> <port port> <routing-instance routing-instance-name>
Para salir de la sesión de Telnet y volver al símbolo del sistema de Telnet, presione Ctrl-].
Para salir de la sesión de Telnet y volver al símbolo del sistema de la CLI, escriba quit
.
Opción |
Descripción |
---|---|
|
Utilice una ruta de datos de 8 bits. |
|
Abra una sesión Telnet con el nombre de host o la dirección IP especificados. |
|
Forzar la sesión Telnet a un destino IPv4. |
|
Forzar la sesión de Telnet a un destino IPv6. |
|
Especifique el número de puerto o el nombre del servicio en el host. |
|
Utilice la instancia de enrutamiento especificada para la sesión de Telnet. |
El comando ssh
Puede usar el comando CLI ssh
para usar el programa Secure Shell (SSH) para abrir una conexión a un dispositivo remoto:
user@host> ssh host <bypass-routing> <inet> <inet6> <interface interface-name> <logical-system> <routing-instance routing-instance-name> <source address> <v2>
En la tabla 2 se describen las opciones de ssh
comando.
Opción |
Descripción |
---|---|
|
Omita las tablas de enrutamiento y abra una conexión SSH solo a hosts en interfaces conectadas directamente. Si el host no está en una interfaz conectada directamente, se devuelve un mensaje de error. |
|
Abra una conexión SSH al nombre de host o dirección IP especificados. |
|
Forzar la conexión SSH a un destino IPv4. |
|
Forzar la conexión SSH a un destino IPv6. |
|
Abra una conexión SSH a un host en la interfaz especificada. Si no incluye esta opción, se utilizan todas las interfaces. |
|
Utilice la instancia de enrutamiento especificada para la conexión SSH. |
|
Utilice el sistema lógico especificado para la conexión SSH. |
|
Utilice la dirección de origen especificada para la conexión SSH. |
|
Forzar a SSH a utilizar la versión 2 para la conexión. |
Configurar claves de host conocidas SSH para la copia segura de datos
Secure Shell (SSH) utiliza algoritmos de cifrado para generar un sistema de claves de host, servidor y sesión que garantiza una transferencia de datos segura. Puede configurar las claves de host SSH para que admitan la copia segura (SCP) como alternativa a FTP para la transferencia en segundo plano de datos, como archivos de configuración y registros de eventos. Para configurar la compatibilidad con SSH para SCP, debe completar las siguientes tareas:
-
Especifique hosts conocidos SSH incluyendo nombres de host e información de clave de host en la jerarquía de configuración de motor de enrutamiento.
-
Establezca una URL SCP para especificar el host del que recibir datos. Al establecer este atributo, se recupera automáticamente la información de la clave de host SSH del servidor SCP.
-
Compruebe que la clave de host es auténtica.
-
Acepte la conexión segura. La aceptación de esta conexión almacena automáticamente la información de la clave de host en la base de datos de claves de host local. El almacenamiento de la información de la clave de host en la jerarquía de configuración automatiza el protocolo de enlace seguro y permite la transferencia de datos en segundo plano mediante SCP.
Las tareas para configurar claves de host SSH para la copia segura de datos son:
- Configurar hosts conocidos SSH
- Configurar la compatibilidad con la transferencia de archivos SCP
- Actualizar la información de la clave de host SSH
Configurar hosts conocidos SSH
Para configurar hosts conocidos SSH, incluya la instrucción y especifique las opciones de host
nombre de host y clave de host para servidores de confianza en el nivel jerárquico [edit security ssh-known-hosts]
:
[edit security ssh-known-hosts] host corporate-archive-server { dsa-key key; } host archive-server-url { rsa-key key; } host server-with-ssh-version-1 { rsa1-key key; }
Las claves de host son una de las siguientes:
-
dsa-key key
—Clave del algoritmo de firma digital codificado (DSA) Base64 para SSH versión 2. -
ecdsa-sha2-nistp256-key
key—Clave ECDSA-SHA2-NIST256 codificada en Base64. -
ecdsa-sha2-nistp384-key
key—Clave ECDSA-SHA2-NIST384 codificada en Base64. -
ecdsa-sha2-nistp521-key
key—Clave ECDSA-SHA2-NIST521 codificada en Base64. -
ed25519-key
key—Clave ED25519 codificada en Base64. -
rsa-key key
—Algoritmo de clave pública codificado Base64 que admite cifrado y firmas digitales para SSH versión 1 y SSH versión 2. -
rsa1-key key
—Algoritmo de clave pública RSA codificado en Base64, que admite cifrado y firmas digitales para SSH versión 1.
Configurar la compatibilidad con la transferencia de archivos SCP
Para configurar un host conocido para que admita transferencias de archivos SCP en segundo plano, incluya la archive-sites
instrucción en el nivel de [edit system archival configuration]
jerarquía.
[edit system archival configuration] archive-sites { scp://username<:password>@host<:port>/url-path; }
Al especificar una URL en una instrucción de Junos OS Evolved con una dirección de host IPv6, debe encerrar la URL completa entre comillas (" ") y la dirección de host IPv6 entre corchetes ([ ]). Por ejemplo, "scp://username<:password>@[host]<:port>/url-path";
Si se establece la instrucción para que apunte a una URL SCP, se activa la archive-sites
recuperación automática de claves de host. En este punto, Junos OS Evolved se conecta al host SCP para obtener la clave pública SSH, muestra el resumen del mensaje de la clave del host o la huella digital como salida a la consola y finaliza la conexión con el servidor.
user@host# set system archival configuration archive-sites “<scp-url-path>” The authenticity of host <my-archive-server (<server-ip-address>)> can’t be established. RSA key fingerprint is <ascii-text key>. Are you sure you want to continue connecting (yes/no)?
Para comprobar que la clave de host es auténtica, compare esta huella digital con una huella digital que obtenga del mismo host mediante una fuente de confianza. Si las huellas digitales son idénticas, escriba la clave de host en yes el indicador. A continuación, la información de la clave de host se almacena en la configuración del motor de enrutamiento y admite transferencias de datos en segundo plano mediante SCP.
Actualizar la información de la clave de host SSH
Normalmente, la información de la clave de host SSH se recupera automáticamente cuando se establece un atributo URL para SCP utilizando la archival configuration archive-sites
instrucción en el nivel de [edit system]
jerarquía. Sin embargo, si necesita actualizar manualmente la base de datos de claves de host, utilice uno de los métodos siguientes.
- Recuperar la información de la clave de host manualmente
- Importar información de clave de host desde un archivo
Recuperar la información de la clave de host manualmente
Para recuperar manualmente la información de la clave de host público SSH, configure la fetch-from-server
opción en el nivel de [edit security ssh-known-hosts]
jerarquía. Debe especificar el host del que desea recuperar la clave pública SSH.
user@host# set security ssh-known-hosts fetch-from-server <hostname>
Importar información de clave de host desde un archivo
Para importar manualmente información de clave de host SSH desde un archivo known_hosts , incluya la load-key-file
opción en el nivel de [edit security ssh-known-hosts]
jerarquía. Debe especificar la ruta de acceso al archivo desde el que desea importar la información de la clave de host.
user@host# set security ssh-known-hosts load-key-file /var/tmp/known-hosts
Configurar el servicio SSH para admitir criptografía heredada
Puede configurar Junos OS Evolved para que admita cifrados de criptografía heredados y métodos de intercambio de claves.
Junos OS Evolved admite el siguiente conjunto de cifrados de forma predeterminada:
-
chacha20-poly1305@openssh.com
-
aes128-ctr
-
aes192-ctr
-
aes256-ctr
-
aes128-gcm@openssh.com
-
aes256-gcm@openssh.com
En Junos OS Evolved, los siguientes cifrados no son compatibles de forma predeterminada, pero puede configurar el dispositivo para que los admita. Se enumeran de los más seguros a los menos seguros:
-
aes256-cbc
-
aes192-cbc
-
aes128-cbc
Junos OS Evolved admite el siguiente conjunto de métodos de intercambio de claves de forma predeterminada:
-
curve25519-sha256
-
ecdh-sha2-nistp256
-
ecdh-sha2-nistp384
-
ecdh-sha2-nistp521
-
group-exchange-sha2
-
dh-group14-sha1
En Junos OS Evolved, los siguientes métodos de intercambio de claves no son compatibles de forma predeterminada, pero puede configurar el dispositivo para que los admita:
-
group-exchange-sha1
-
dh-group1-sha1
Para configurar el servicio SSH para que admita la criptografía heredada:
Mediante la configuración de un conjunto ordenado de cifrados, métodos de intercambio de claves o códigos de autenticación de mensajes (MAC), el conjunto recién definido se aplica a los comandos de servidor y cliente. Los cambios en los valores predeterminados afectan al comando cuando se utiliza el file copy
Protocolo de copia segura (SCP).
Ver también
Configurar el servicio SSH saliente
Puede configurar un dispositivo que ejecute Junos OS evolucionado para iniciar una conexión TCP/IP con una aplicación de administración de clientes. Si la aplicación de administración no llega a un dispositivo de Juniper Networks, por ejemplo, el dispositivo es un firewall. En tales casos, outbound-ssh
se puede configurar en el dispositivo de Juniper Networks. Una outbound-ssh
configuración inicia una conexión SSH inversa del servidor al cliente y a la aplicación de administración. Esta conexión SSH saliente se cierra solo después de quitar la configuración del dispositivo.
No hay ningún comando de iniciación con SSH saliente. Después de configurar y confirmar SSH saliente, el dispositivo comienza a iniciar una conexión SSH saliente basada en la configuración confirmada. El dispositivo intenta crear esta conexión repetidamente hasta que se realiza correctamente. Si se interrumpe la conexión entre el dispositivo y la aplicación de administración de clientes, el dispositivo vuelve a intentar crear una nueva conexión SSH saliente hasta que se realice correctamente. Esta conexión se mantiene hasta que la estrofa SSH saliente se elimina de la configuración.
Para configurar el dispositivo para conexiones SSH salientes, incluya la outbound-ssh
instrucción en el nivel de [edit system services]
jerarquía:
[edit system services outbound-ssh
]
En los temas siguientes se describen las tareas para configurar el servicio SSH saliente.
- Enviar la clave de host SSH pública al cliente SSH saliente
- Configurar mensajes Keepalive para conexiones SSH salientes
- Configurar una nueva conexión SSH saliente
- Configurar el cliente SSH saliente para aceptar NETCONF como un servicio disponible
- Configurar clientes SSH salientes
- Configurar instancias de enrutamiento para clientes SSH salientes
Enviar la clave de host SSH pública al cliente SSH saliente
Cada vez que el enrutador o conmutador establece una conexión SSH saliente, primero envía una secuencia de inicio al cliente de administración. Esta secuencia identifica el enrutador o conmutador al cliente de administración. Dentro de esta transmisión está el valor de device-id.
Para configurar el identificador de dispositivo del enrutador o conmutador, incluya la device-id
instrucción en el [edit system services outbound-ssh client client-id]
nivel de jerarquía:
[edit system services outbound-ssh client client-id] device-id device-id;
La secuencia de inicio cuando secret
no está configurada:
MSG-ID: DEVICE-CONN-INFO\r\n MSG-VER: V1\r\n DEVICE-ID: <device-id>\r\n
Durante la inicialización de una conexión SSH, el cliente autentica la identidad del dispositivo mediante la clave de host SSH pública del dispositivo. Por lo tanto, antes de que el cliente pueda iniciar la secuencia SSH, el cliente necesita la clave SSH pública del dispositivo. Al configurar la secret
instrucción, el dispositivo pasa su clave SSH pública como parte de la secuencia de inicio de conexión SSH saliente.
Cuando se establece la secret
instrucción y el dispositivo establece una conexión SSH saliente, el dispositivo comunica su ID de dispositivo, su clave SSH pública y un hash SHA1 derivado en parte de la secret
instrucción. El valor de la secret
instrucción se comparte entre el dispositivo y el cliente de administración. El cliente usa el secreto compartido para autenticar la clave de host SSH pública que recibe para determinar si la clave pública proviene del dispositivo identificado por la device-id
instrucción.
El uso de la secret
instrucción para transportar la clave de host SSH pública es opcional. Puede transportar e instalar manualmente la clave pública en el sistema cliente.
Incluir la secret
instrucción significa que el dispositivo envía su clave de host SSH pública cada vez que establece una conexión con el cliente. A continuación, depende del cliente decidir qué hacer con la clave de host SSH si el cliente ya tiene una clave SSH para ese dispositivo. Le recomendamos que reemplace la copia del cliente de la clave de host SSH con la nueva clave. Las claves de host pueden cambiar por varios motivos. Al reemplazar la clave cada vez que se establece una conexión, se asegura de que el cliente tenga la clave más reciente.
Para enviar la clave de host SSH pública del enrutador o conmutador cuando el dispositivo se conecta al cliente, incluya la secret
instrucción en el nivel de [edit system services outbound-ssh client client-id]
jerarquía:
[edit system services outbound-ssh client client-id] secret password;
El dispositivo envía el siguiente mensaje cuando se configura el secret
atributo:
MSG-ID: DEVICE-CONN-INFO\r\n MSG-VER: V1\r\n DEVICE-ID: <device-id>\r\n HOST-KEY: <public-host-key>\r\n HMAC:<HMAC(pub-SSH-host-key, <secret>>)>\r\n
Configurar mensajes Keepalive para conexiones SSH salientes
Una vez que la aplicación cliente tiene la clave de host SSH pública del enrutador o conmutador, puede iniciar la secuencia SSH como si hubiera creado la conexión TCP/IP. Luego, el cliente puede autenticar el dispositivo utilizando su copia de la clave SSH del host público del enrutador o conmutador como parte de esa secuencia. El dispositivo autentica al usuario cliente mediante los mecanismos admitidos en Junos OS Evolved (cadena pública RSA/DSA o autenticación de contraseña).
Para permitir que el dispositivo envíe mensajes keepalive de protocolo SSH a la aplicación cliente, configure la keep-alive
instrucción en el nivel de [edit system services outbound-ssh client client-id]
jerarquía:
[edit system services outbound-ssh client client-id] keep-alive { retry number; timeout seconds; }
Configurar una nueva conexión SSH saliente
Cuando se desconecta, el dispositivo comienza a iniciar una nueva conexión SSH saliente. Para especificar cómo se vuelve a conectar el dispositivo al servidor después de que se interrumpa una conexión, incluya la reconnect-strategy
instrucción en el nivel de [edit system services outbound-ssh client client-id]
jerarquía:
[edit system services outbound-ssh client-id] reconnect-strategy (sticky | in-order);
También puede especificar el número de intentos de reintento y establecer la cantidad de tiempo antes de que se detengan los intentos de reconexión. Consulte Configurar mensajes Keepalive para conexiones SSH salientes.
Configurar el cliente SSH saliente para aceptar NETCONF como un servicio disponible
Para configurar la aplicación para que acepte NETCONF como un servicio disponible, incluya la services netconf
instrucción en el nivel de [edit system services outbound-ssh client client-id]
jerarquía:
[edit system services outbound-ssh client client-id] services { netconf; }
Configurar clientes SSH salientes
Para configurar los clientes disponibles para esta conexión SSH saliente, enumere cada cliente con una instrucción de dirección independiente en el nivel de [edit system services outbound-ssh client client-id]
jerarquía:
[edit system services outbound-ssh client client-id] address address { retry number; timeout seconds; port port-number; }
Las conexiones SSH salientes admiten los formatos de dirección IPv4 e IPv6.
Configurar instancias de enrutamiento para clientes SSH salientes
Para usar la instancia de enrutamiento de administración, habilite primero la instancia de mgmt_junos
enrutamiento con el set system management-instance
comando.
Para utilizar cualquier otra instancia de enrutamiento, configure primero la instancia de enrutamiento en la [edit routing-instances]
jerarquía.
Si no especifica una instancia de enrutamiento, el dispositivo establecerá la conexión SSH saliente utilizando la tabla de enrutamiento predeterminada.
Configurar conexiones NETCONF-over-SSH en un puerto TCP especificado
Junos OS Evolved le permite restringir las conexiones NETCONF entrantes a un puerto TCP especificado sin configurar un firewall. Para configurar el puerto TCP utilizado para las conexiones NETCONF a través de SSH, incluya la port
instrucción en el nivel de [edit system services netconf ssh]
jerarquía. El puerto configurado sólo acepta sesiones NETCONF-over-SSH. Se rechazan las solicitudes de sesión SSH regulares para este puerto.
Puede configurar el puerto predeterminado 830 para conexiones NETCONF a través de SSH, como se especifica en RFC 4742, Uso del protocolo de configuración de NETCONF a través de Secure Shell (SSH), o configurar cualquier puerto del 1 al 65535.
-
El puerto SSH predeterminado (22) sigue aceptando sesiones de NETCONF incluso con un puerto de servidor NETCONF configurado. Para deshabilitar el puerto SSH para que no acepte sesiones NETCONF, especifíquelo en el script de eventos de inicio de sesión.
-
No se recomienda configurar los puertos predeterminados para los servicios FTP (21) y Telnet (23) para configurar conexiones NETCONF-over-SSH.