Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Establecer una conexión SSH para una sesión NETCONF

Establecer una conexión SSH para una sesión NETCONF

Puede utilizar el protocolo SSH para establecer conexiones entre un servidor de administración de configuración y un dispositivo Junos. Utilice un servidor de administración de configuración para configurar el dispositivo Junos de forma remota.

Puede utilizar las siguientes opciones para establecer una conexión SSH entre el servidor de administración de configuración y el dispositivo Junos.

  • SSH: el servidor de administración de configuración inicia una sesión SSH con el dispositivo Junos.

  • SSH saliente: utilice esta opción cuando el servidor de administración de configuración no pueda iniciar una conexión SSH debido a restricciones de red (como un firewall). En esta situación, configure el dispositivo Junos para iniciar, establecer y mantener una conexión SSH con un conjunto predefinido de servidores de administración de configuración.

Requisitos previos para establecer una conexión SSH para sesiones de NETCONF

Antes de que el servidor de administración de configuración establezca una conexión SSH con un dispositivo Junos, debe cumplir los requisitos descritos en las secciones siguientes.

Instalar software SSH en el servidor de administración de configuración

El servidor de administración de configuración controla la conexión SSH con el dispositivo Junos. Por lo tanto, el software SSH debe instalarse localmente en el servidor de administración de configuración. Para obtener información acerca de cómo obtener e instalar software SSH, consulte http://www.ssh.com y http://www.openssh.com.

Habilitar el servicio NETCONF a través de SSH

Para establecer sesiones de NETCONF en un dispositivo Junos, debe habilitar el servicio NETCONF. Puede configurar el servidor NETCONF para aceptar sesiones de NETCONF en los siguientes puertos:

  • Puerto NETCONF predeterminado (830) o un puerto definido por el usuario

  • Puerto SSH predeterminado (22)

Le recomendamos que utilice el puerto NETCONF predeterminado porque permite que el dispositivo identifique y filtre fácilmente el tráfico de NETCONF. Como alternativa, puede configurar el dispositivo para que acepte sesiones de NETCONF en un puerto específico en lugar del puerto NETCONF predeterminado. El puerto definido solo acepta sesiones NETCONF a través de SSH y rechaza las solicitudes de sesión SSH regulares. Si también habilita los servicios SSH en el servidor, el dispositivo acepta sesiones de NETCONF tanto en el puerto SSH predeterminado como en el puerto NETCONF configurado (puerto predeterminado o definido por el usuario). Para mayor seguridad, puede configurar políticas de eventos que utilicen UI_LOGIN_EVENT información para deshabilitar eficazmente el puerto predeterminado o restringir aún más el acceso al servidor NETCONF en un puerto.

Para habilitar el servicio NETCONF a través de SSH en un dispositivo Junos:

  1. Habilite el servicio NETCONF en el puerto NETCONF predeterminado (830) o en un puerto definido por el usuario:

    • Para utilizar el puerto NETCONF predeterminado (830), incluya la netconf ssh instrucción en el nivel de [edit system services] jerarquía:

    • Para utilizar un puerto específico, configure la port instrucción con el número de puerto deseado en el nivel de jerarquía [edit system services netconf ssh].

      La port-number lata varía de 1 a 65535. El puerto configurado solo acepta sesiones NETCONF a través de SSH y rechaza las solicitudes de sesión SSH regulares.

      Nota:

      Aunque las sesiones de NETCONF-over-SSH se pueden configurar en cualquier puerto del 1 al 65535, debe evitar configurar el acceso en un puerto que normalmente está asignado para otro servicio. Esta práctica evita posibles conflictos de recursos. Si configura un puerto asignado para otro servicio, como FTP, y ese servicio está habilitado, a no revela un commit check conflicto de recursos ni emite ningún mensaje de advertencia a tal efecto.

  2. (Opcional) Para habilitar también el acceso al subsistema SSH de NETCONF mediante el puerto SSH predeterminado (22), incluya la ssh instrucción en el nivel de [edit system services] jerarquía.

    Esta configuración permite el acceso SSH al dispositivo para todos los usuarios y aplicaciones.

    Nota:

    En las versiones en las que el comportamiento predeterminado es restringir el uso del servicio SSH por parte del usuario raíz, debe configurar la root-login allow instrucción en el nivel de jerarquía para permitir que el [edit system services ssh] usuario raíz abra sesiones de NETCONF a través de SSH.

  3. (Opcional) Configure el dispositivo para desconectar los clientes NETCONF que no responden.

    Especifique el intervalo de tiempo de espera (en segundos) después del cual, si no se han recibido datos del cliente, el proceso sshd solicita una respuesta. Además, especifique el umbral de respuestas vivas del cliente perdidas que desencadenan una desconexión.

    Nota:

    Las instrucciones configuradas en el nivel de jerarquía sólo se aplican a las sesiones de NETCONF que se conectan a través del puerto predeterminado (830) o a través del puerto definido por el usuario que está configurado en el mismo nivel de [edit system services netconf ssh] jerarquía.

  4. Confirme la configuración:

  5. Repita los pasos anteriores en cada dispositivo que ejecute Junos OS donde la aplicación cliente establezca sesiones de NETCONF.

Configurar una cuenta de usuario para la aplicación cliente en dispositivos Junos

El servidor de administración de configuración debe iniciar sesión en el dispositivo Junos para establecer una sesión de NETCONF. Por lo tanto, el servidor de administración de configuración necesita una cuenta de usuario en cada dispositivo donde establece una sesión NETCONF. Las siguientes instrucciones explican cómo crear una cuenta de usuario local en dispositivos Junos. Alternativamente, puede omitir esta sección y habilitar la autenticación a través de RADIUS o TACACS+.

Para crear una cuenta de usuario local:

  1. Configure la user instrucción en el nivel jerárquico y especifique un nombre de [edit system login] usuario. Incluya la instrucción y especifique una clase de inicio de sesión que tenga los permisos necesarios para que la class aplicación realice todas las acciones.
  2. Opcionalmente, incluya las full-name instrucciones y uid en el nivel jerárquico [edit system login user username] .
  3. Confirme la configuración para activar la cuenta de usuario en el dispositivo.
  4. Repita los pasos anteriores en cada dispositivo que ejecute Junos OS donde la aplicación cliente establezca sesiones de NETCONF.

Configurar un par de claves pública y privada o una contraseña para la cuenta de usuario de Junos OS

El servidor de administración de configuración necesita un par de claves pública y privada SSH, una contraseña basada en texto o ambas para poder autenticarse con el servidor NETCONF. Un par de claves pública/privada es suficiente si la cuenta se usa solo para conectarse al servidor NETCONF a través de SSH. Si la cuenta también se utiliza para acceder al dispositivo de otras maneras (para iniciar sesión en la consola, por ejemplo), debe tener una contraseña basada en texto. La contraseña también se utiliza (el servidor SSH la solicita) si la autenticación basada en claves está configurada pero falla.

Nota:

Puede omitir esta sección si ha elegido habilitar la autenticación a través de RADIUS o TACACS+.

Para crear una contraseña basada en texto:

  1. Incluya la plain-text-password instrucción o encrypted-password en el [edit system login user username authentication] nivel jerárquico.

    Para escribir una contraseña como texto, emita el siguiente comando. Se le pedirá la contraseña, que se cifra antes de almacenarse.

    Para almacenar una contraseña que haya creado y cifrado previamente mediante Message Digest 5 (MD5) o Secure Hash Algorithm 1 (SHA-1), emita el siguiente comando:

  2. Confirme la configuración.
  3. Repita los pasos anteriores en cada dispositivo donde la aplicación cliente establezca sesiones NETCONF.

Para crear un par de claves pública y privada SSH, realice los pasos siguientes:

  1. En el servidor de administración de configuración donde se ejecuta la aplicación cliente, emita el comando en el ssh-keygen shell de comandos estándar y proporcione los argumentos adecuados.

    Para obtener más información acerca ssh-keygen de las opciones, consulte la página del manual del ssh-keygen comando.

  2. Asocie la clave pública con la cuenta de inicio de sesión de Junos OS.

    Junos OS copia el contenido del archivo especificado en el dispositivo que ejecuta Junos OS. URL es la ruta de acceso al archivo que contiene una o varias claves públicas. El ssh-keygen comando almacena de forma predeterminada cada clave pública en un archivo en el subdirectorio . ssh del directorio principal del usuario; el nombre de archivo depende de la codificación y la versión SSH. Para obtener información acerca de cómo especificar URL, consulte la Guía del usuario de CLI.

    Nota:

    Como alternativa, puede incluir la ssh-rsa instrucción en el nivel jerárquico [edit system login user account-name authentication] . Sin embargo, se recomienda usar la instrucción, ya que elimina la necesidad de escribir o cortar y pegar la clave pública en la load-key-file línea de comandos.

  3. Confirme la configuración.

  4. Repita los pasos 2 y 3 en cada dispositivo Junos en el que la aplicación cliente establezca sesiones de NETCONF.

Acceda a las claves o contraseña con la aplicación cliente

La aplicación cliente debe poder tener acceso a las claves públicas o privadas configuradas o a la contraseña y proporcionarla cuando el servidor NETCONF la solicite.

Existen varios métodos para permitir que la aplicación acceda a la clave o contraseña:

  • Si se utilizan claves públicas/privadas, el programa ssh-agent se ejecuta en el dispositivo donde se ejecuta la aplicación cliente y controla la clave privada.

  • Cuando un usuario inicia la aplicación, la aplicación le pide la contraseña y la almacena temporalmente de forma segura.

  • La contraseña se almacena de forma cifrada en una ubicación de disco local segura o en una base de datos segura.

Requisitos previos para establecer una conexión SSH saliente para sesiones de NETCONF

Para permitir que un servidor de administración de configuración establezca una conexión SSH saliente con el servidor NETCONF, debe cumplir los requisitos descritos en las secciones siguientes:

Instalar software SSH en el cliente

Una vez que el dispositivo establece la conexión SSH con el servidor de administración de configuración, el servidor de administración de configuración toma el control de la sesión SSH. Por lo tanto, el software cliente SSH debe instalarse localmente en el servidor de administración de configuración. Para obtener información acerca de cómo obtener e instalar software SSH, consulte http://www.ssh.com/ y http://www.openssh.com/ .

Habilitar el servicio NETCONF a través de SSH

Para establecer sesiones de NETCONF en un dispositivo Junos, debe habilitar el servicio NETCONF. Puede configurar el servidor NETCONF para aceptar sesiones de NETCONF en los siguientes puertos:

  • Puerto NETCONF predeterminado (830) o un puerto definido por el usuario

  • Puerto SSH predeterminado (22)

Le recomendamos que utilice el puerto NETCONF predeterminado porque permite que el dispositivo identifique y filtre fácilmente el tráfico de NETCONF. Como alternativa, puede configurar el dispositivo para que acepte sesiones de NETCONF en un puerto específico en lugar del puerto NETCONF predeterminado. El puerto definido solo acepta sesiones NETCONF a través de SSH y rechaza las solicitudes de sesión SSH regulares. Si también habilita los servicios SSH en el servidor, el dispositivo acepta sesiones de NETCONF tanto en el puerto SSH predeterminado como en el puerto NETCONF configurado (puerto predeterminado o definido por el usuario). Para mayor seguridad, puede configurar políticas de eventos que utilicen UI_LOGIN_EVENT información para deshabilitar eficazmente el puerto predeterminado o restringir aún más el acceso al servidor NETCONF en un puerto.

Para habilitar el servicio NETCONF a través de SSH en un dispositivo Junos:

  1. Habilite el servicio NETCONF en el puerto NETCONF predeterminado (830) o en un puerto definido por el usuario:

    • Para utilizar el puerto NETCONF predeterminado (830), incluya la netconf ssh instrucción en el nivel de [edit system services] jerarquía:

    • Para utilizar un puerto específico, configure la port instrucción con el número de puerto deseado en el nivel de jerarquía [edit system services netconf ssh].

      La port-number lata varía de 1 a 65535. El puerto configurado solo acepta sesiones NETCONF a través de SSH y rechaza las solicitudes de sesión SSH regulares.

      Nota:

      Aunque las sesiones de NETCONF-over-SSH se pueden configurar en cualquier puerto del 1 al 65535, debe evitar configurar el acceso en un puerto que normalmente está asignado para otro servicio. Esta práctica evita posibles conflictos de recursos. Si configura un puerto asignado para otro servicio, como FTP, y ese servicio está habilitado, a no revela un commit check conflicto de recursos ni emite ningún mensaje de advertencia a tal efecto.

  2. (Opcional) Para habilitar también el acceso al subsistema SSH de NETCONF mediante el puerto SSH predeterminado (22), incluya la ssh instrucción en el nivel de [edit system services] jerarquía.

    Esta configuración permite el acceso SSH al dispositivo para todos los usuarios y aplicaciones.

    Nota:

    En las versiones en las que el comportamiento predeterminado es restringir el uso del servicio SSH por parte del usuario raíz, debe configurar la root-login allow instrucción en el nivel de jerarquía para permitir que el [edit system services ssh] usuario raíz abra sesiones de NETCONF a través de SSH.

  3. (Opcional) Configure el dispositivo para desconectar los clientes NETCONF que no responden.

    Especifique el intervalo de tiempo de espera (en segundos) después del cual, si no se han recibido datos del cliente, el proceso sshd solicita una respuesta. Además, especifique el umbral de respuestas vivas del cliente perdidas que desencadenan una desconexión.

    Nota:

    Las instrucciones configuradas en el nivel de jerarquía sólo se aplican a las sesiones de NETCONF que se conectan a través del puerto predeterminado (830) o a través del puerto definido por el usuario que está configurado en el mismo nivel de [edit system services netconf ssh] jerarquía.

  4. Confirme la configuración:

  5. Repita los pasos anteriores en cada dispositivo que ejecute Junos OS donde la aplicación cliente establezca sesiones de NETCONF.

Configurar el dispositivo Junos para SSH saliente

Para configurar el dispositivo Junos para SSH saliente:

  1. En el nivel jerárquico, establezca el [edit system services ssh] SSH protocol-version en v2:
  2. Genere u obtenga un par de claves pública/privada para el dispositivo que ejecuta Junos OS. Este par de claves se utilizará para cifrar los datos transferidos a través de la conexión SSH.
  3. Si va a instalar manualmente la clave pública en el servidor de administración de configuración, transfiera la clave pública al servidor de administración de configuración.
  4. En el nivel de jerarquía, incluya la jerarquía de [edit system services] outbound-ssh configuración y las instrucciones necesarias.

    Las opciones son las siguientes:

    address

    (Requerido) Nombre de host o dirección IPv4 o IPv6 del servidor de administración. Puede enumerar varios clientes agregando la dirección IP o el nombre de host de cada cliente junto con los siguientes parámetros de conexión.

    • port port-number: puerto SSH saliente para el cliente. El valor predeterminado es el puerto 22.

    • retry number– Número de veces que el dispositivo intenta establecer una conexión SSH saliente. El valor predeterminado es tres intentos.

    • timeout seconds: cantidad de tiempo, en segundos, que el dispositivo que ejecuta Junos OS intenta establecer una conexión SSH saliente. El valor predeterminado es de 15 segundos por intento.

      Nota:

      A partir de Junos OS versión 15.1, Junos OS admite conexiones SSH salientes con dispositivos que tienen direcciones IPv6.

    client client-id

    (Requerido) Identifica la estrofa de outbound-ssh configuración en el dispositivo. Cada outbound-ssh estrofa representa una única conexión SSH saliente. Este atributo no se envía al cliente.

    device-id device-id

    (Requerido) Identifica el dispositivo que ejecuta Junos OS en el cliente durante la secuencia de inicio.

    keep-alive

    (Opcional) Especifique que el dispositivo envíe mensajes keepalive al servidor de administración. Para configurar el mensaje keepalive, debe establecer los timeout atributos y retry . Para configurar el mensaje keepalive, debe configurar las timeout instrucciones y retry .

    • retry number: número de mensajes keepalive que el dispositivo envía sin recibir una respuesta del servidor de administración antes de que finalice la conexión SSH actual. El valor predeterminado es tres intentos.

    • timeout seconds—Cantidad de tiempo, en segundos, que el servidor espera los datos antes de enviar una señal keepalive. El valor predeterminado es de 15 segundos.

    reconnect-strategy (sticky | in-order)

    (Opcional) Especifique el método que utiliza el dispositivo que ejecuta Junos OS para restablecer una conexión SSH saliente desconectada. Hay dos métodos disponibles:

    • in-order: especifique que el enrutador o conmutador primero intente establecer una sesión SSH saliente basada en la lista de direcciones del servidor de administración. El enrutador o conmutador intenta establecer una sesión con el primer servidor de la lista. Si esta conexión no está disponible, el enrutador o conmutador intenta establecer una sesión con el siguiente servidor, y así sucesivamente en la lista hasta que se establezca una conexión.

    • sticky: especifique que el enrutador o conmutador primero intente volver a conectarse al servidor de administración al que se conectó por última vez. Si la conexión no está disponible, intenta establecer una conexión con el siguiente cliente de la lista y así sucesivamente hasta que se establezca una conexión.

    secret password

    (Opcional) Clave de host SSH pública del dispositivo. Si se agrega a la outbound-ssh instrucción, durante la inicialización del servicio SSH saliente, el enrutador o conmutador pasa su clave pública al servidor de administración. Este es el método recomendado para mantener una copia actual de la clave pública del dispositivo.

    services netconf

    (Requerido) Especifica los servicios disponibles para la sesión. Actualmente, NETCONF es el único servicio disponible.

  5. Confirme la configuración:

Recibir y administrar la secuencia de iniciación SSH saliente en el cliente

Cuando se configura para SSH saliente, el dispositivo Junos intenta mantener una conexión constante con un servidor de administración de configuración. Cuando no se establece una sesión SSH saliente, el dispositivo envía una secuencia de iniciación SSH saliente a un servidor de administración de configuración que aparece en la lista de servidores de administración de configuración del dispositivo. Antes de establecer una conexión con el dispositivo, cada servidor de administración de configuración debe configurarse para recibir esta secuencia de inicio, establecer una conexión TCP con el dispositivo y transmitir la identidad del dispositivo al dispositivo.

La secuencia de inicio adopta una de dos formas, dependiendo de cómo haya elegido manejar la clave pública del servidor de Junos OS.

Si la clave pública se instala manualmente en el servidor de administración de configuración, la secuencia de inicio adopta la forma siguiente:

Si el dispositivo reenvía la clave pública al servidor de administración de configuración durante la secuencia de inicialización, la secuencia adopta la siguiente forma:

Tabla de historial de cambios

La compatibilidad con las funciones viene determinada por la plataforma y la versión que esté utilizando. Utilice el Explorador de características para determinar si una característica es compatible con su plataforma.

Lanzamiento
Descripción
15.1
A partir de Junos OS versión 15.1, Junos OS admite conexiones SSH salientes con dispositivos que tienen direcciones IPv6.