Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Estabeleça uma conexão SSH para uma sessão netconf

Estabeleça uma conexão SSH para uma sessão netconf

Você pode usar o protocolo SSH para estabelecer conexões entre um servidor de gerenciamento de configuração e um dispositivo Junos. Você usa um servidor de gerenciamento de configuração para configurar o dispositivo Junos remotamente.

Você pode usar as seguintes opções para estabelecer uma conexão SSH entre o servidor de gerenciamento de configuração e o dispositivo Junos.

  • SSH — O servidor de gerenciamento de configuração inicia uma sessão de SSH com o dispositivo Junos.

  • SSH de saída — Use essa opção quando o servidor de gerenciamento de configuração não puder iniciar uma conexão SSH devido a restrições de rede (como um firewall). Nessa situação, você configura o dispositivo Junos para iniciar, estabelecer e manter uma conexão SSH com um conjunto predefinido de servidores de gerenciamento de configuração.

Pré-requisitos para estabelecer uma conexão SSH para sessões netconf

Antes que o servidor de gerenciamento de configuração estabeleça uma conexão SSH com um dispositivo Junos, você deve satisfazer os requisitos discutidos nas seções a seguir.

Instale software SSH no servidor de gerenciamento de configuração

O servidor de gerenciamento de configuração lida com a conexão SSH com o dispositivo Junos. Portanto, o software SSH deve ser instalado localmente no servidor de gerenciamento de configuração. Para obter e instalar o software SSH, consulte http://www.ssh.com e http://www.openssh.com.

Habilite o serviço NETCONF no SSH

Para estabelecer sessões netconf em um dispositivo Junos, você deve habilitar o serviço NETCONF. Você pode configurar o servidor NETCONF para aceitar sessões netconf nas seguintes portas:

  • Porta NETCONF padrão (830) ou uma porta definida pelo usuário

  • Porta SSH padrão (22)

Recomendamos que você use a porta NETCONF padrão porque ela permite que o dispositivo identifique e filtre facilmente o tráfego NETCONF. Como alternativa, você pode configurar o dispositivo para aceitar sessões netconf em uma porta específica em vez da porta NETCONF padrão. A porta definida aceita apenas sessões NETCONF-over-SSH e rejeita solicitações regulares de sessão de SSH. Se você também habilitar serviços SSH no servidor, o dispositivo aceita sessões NETCONF tanto na porta SSH padrão quanto na porta NETCONF configurada (porta padrão ou definida pelo usuário). Para maior segurança, você pode configurar políticas de eventos que utilizam UI_LOGIN_EVENT informações para desabilitar efetivamente a porta padrão ou restringir ainda mais o acesso do servidor NETCONF em uma porta.

Para habilitar o serviço NETCONF sobre SSH em um dispositivo Junos:

  1. Habilite o serviço NETCONF na porta NETCONF padrão (830) ou em uma porta definida pelo usuário:

    • Para usar a porta NETCONF padrão (830), inclua a netconf ssh declaração no nível de [edit system services] hierarquia:

    • Para usar uma porta específica, configure a port declaração com o número de porta desejado no nível [edit system services netconf ssh] de hierarquia.

      A port-number pode variar de 1 a 65535. A porta configurada aceita apenas sessões NETCONF-over-SSH e rejeita solicitações regulares de sessão de SSH.

      Nota:

      Embora as sessões NETCONF-over-SSH possam ser configuradas em qualquer porta de 1 a 65535, você deve evitar configurar o acesso em uma porta que normalmente é atribuída a outro serviço. Essa prática evita possíveis conflitos de recursos. Se você configurar uma porta designada para outro serviço, como o FTP, e esse serviço estiver habilitado, não revelará commit check um conflito de recursos ou emitirá qualquer mensagem de aviso nesse sentido.

  2. (Opcional) Para também permitir o acesso ao subsistema NETCONF SSH usando a porta SSH padrão (22), inclua a ssh declaração no nível de [edit system services] hierarquia.

    Essa configuração permite o acesso SSH ao dispositivo para todos os usuários e aplicativos.

    Nota:

    Em versões em que o comportamento padrão é restringir o usuário raiz de usar o serviço SSH, você deve configurar a root-login allow declaração no nível de [edit system services ssh] hierarquia para permitir que o usuário raiz abra sessões netconf no SSH.

  3. (Opcional) Configure o dispositivo para desconectar clientes NETCONF sem resposta.

    Especifique o intervalo de tempo limite (em segundos) após o qual, se nenhum dados tiver sido recebido do cliente, o processo sshd solicita uma resposta. Além disso, especifique o limite de respostas perdidas com vida do cliente que desencadeiam uma desconexão.

    Nota:

    As declarações configuradas no nível de [edit system services netconf ssh] hierarquia aplicam-se apenas às sessões netconf que se conectam através da porta padrão (830) ou através da porta definida pelo usuário que está configurada no mesmo nível de hierarquia.

  4. Confirmar a configuração:

  5. Repita as etapas anteriores em cada dispositivo que executa o Junos OS, onde o aplicativo cliente estabelece sessões NETCONF.

Configure uma conta de usuário para o aplicativo cliente em dispositivos Junos

O servidor de gerenciamento de configuração deve fazer login no dispositivo Junos para estabelecer uma sessão NETCONF. Assim, o servidor de gerenciamento de configuração precisa de uma conta de usuário em cada dispositivo onde estabelece uma sessão NETCONF. As instruções a seguir explicam como criar uma conta de usuário local em dispositivos Junos. Como alternativa, você pode pular esta seção e habilitar a autenticação por RADIUS ou TACACS+.

Para criar uma conta de usuário local:

  1. Configure a user declaração no nível de [edit system login] hierarquia e especifique um nome de usuário. Inclua a class declaração e especifique uma aula de login que tenha as permissões necessárias para que todas as ações sejam realizadas pelo aplicativo.
  2. Opcionalmente, inclua as declarações e uid as full-name declarações no nível hierárquicos[edit system login user username].
  3. Comprometa a configuração para ativar a conta do usuário no dispositivo.
  4. Repita as etapas anteriores em cada dispositivo que executa o Junos OS, onde o aplicativo cliente estabelece sessões NETCONF.

Configure um par ou senha de chave pública/privada para a conta do usuário do Junos OS

O servidor de gerenciamento de configuração precisa de um par de chave SSH público/privado, uma senha baseada em texto ou ambos antes que ele possa ser autenticado com o servidor NETCONF. Um par de chave pública/privada é suficiente se a conta for usada apenas para se conectar ao servidor NETCONF por meio de SSH. Se a conta também for usada para acessar o dispositivo de outras maneiras (para fazer login no console, por exemplo), ela deve ter uma senha baseada em texto. A senha também é usada (o servidor SSH solicita isso) se a autenticação baseada em chave estiver configurada, mas falhar.

Nota:

Você pode pular esta seção se tiver escolhido habilitar a autenticação por RADIUS ou TACACS+.

Para criar uma senha baseada em texto:

  1. Inclua a declaração ou encrypted-password a plain-text-password declaração no nível hierárquico[edit system login user username authentication].

    Para inserir uma senha como texto, emita o seguinte comando. Você é solicitado para obter a senha, que é criptografada antes de ser armazenada.

    Para armazenar uma senha criada e hashed anteriormente usando o Message Digest 5 (MD5) ou o Secure Hash Algorithm 1 (SHA-1), emita o seguinte comando:

  2. Confirmar a configuração.
  3. Repita as etapas anteriores em cada dispositivo onde o aplicativo cliente estabelece sessões NETCONF.

Para criar um par de chave SSH público/privado, execute as seguintes etapas:

  1. No servidor de gerenciamento de configuração onde o aplicativo cliente é executado, emita o ssh-keygen comando no shell de comando padrão e forneça os argumentos apropriados.

    Para obter mais informações sobre ssh-keygen opções, consulte a página manual para o ssh-keygen comando.

  2. Associe a chave pública com a conta de login do Junos OS.

    O Junos OS copia o conteúdo do arquivo especificado no dispositivo que executa o Junos OS. URL é o caminho para o arquivo que contém uma ou mais chaves públicas. O ssh-keygen comando por padrão armazena cada chave pública em um arquivo no subdiretório .ssh do diretório doméstico do usuário; o nome do arquivo depende da codificação e versão SSH. Para obter informações sobre como especificar URLs, consulte o Guia do usuário da CLI.

    Nota:

    Como alternativa, você pode incluir a ssh-rsa declaração no nível de [edit system login user account-name authentication] hierarquia. No entanto, recomendamos usar a load-key-file declaração porque ela elimina a necessidade de digitar ou cortar e colar a chave pública na linha de comando.

  3. Confirmar a configuração.

  4. Repita a Etapa 2 e a Etapa 3 em cada dispositivo Junos, onde o aplicativo do cliente estabelece sessões NETCONF.

Acesse as chaves ou a senha com o aplicativo do cliente

O aplicativo cliente deve ser capaz de acessar as chaves ou senhas públicas/privadas configuradas e fornecê-la quando o servidor NETCONF solicitar.

Existem vários métodos para permitir que o aplicativo acesse a chave ou a senha:

  • Se forem usadas chaves públicas/privadas, o programa ssh-agent será executado no dispositivo onde o aplicativo cliente é executado e lida com a chave privada.

  • Quando um usuário inicia o aplicativo, o aplicativo solicita a senha ao usuário e a armazena temporariamente de forma segura.

  • A senha é armazenada em forma criptografada em um local seguro de disco local ou em um banco de dados seguro.

Pré-requisitos para estabelecer uma conexão SSH de saída para sessões NETCONF

Para permitir que um servidor de gerenciamento de configuração estabeleça uma conexão SSH de saída com o servidor NETCONF, você deve satisfazer os requisitos discutidos nas seguintes seções:

Instale software SSH no cliente

Assim que o dispositivo estabelecer a conexão SSH com o servidor de gerenciamento de configuração, o servidor de gerenciamento de configuração assume o controle da sessão de SSH. Portanto, o software cliente SSH deve ser instalado localmente no servidor de gerenciamento de configuração. Para obter e instalar o software SSH, consulte http://www.ssh.com/ e http://www.openssh.com/ .

Habilite o serviço NETCONF no SSH

Para estabelecer sessões netconf em um dispositivo Junos, você deve habilitar o serviço NETCONF. Você pode configurar o servidor NETCONF para aceitar sessões netconf nas seguintes portas:

  • Porta NETCONF padrão (830) ou uma porta definida pelo usuário

  • Porta SSH padrão (22)

Recomendamos que você use a porta NETCONF padrão porque ela permite que o dispositivo identifique e filtre facilmente o tráfego NETCONF. Como alternativa, você pode configurar o dispositivo para aceitar sessões netconf em uma porta específica em vez da porta NETCONF padrão. A porta definida aceita apenas sessões NETCONF-over-SSH e rejeita solicitações regulares de sessão de SSH. Se você também habilitar serviços SSH no servidor, o dispositivo aceita sessões NETCONF tanto na porta SSH padrão quanto na porta NETCONF configurada (porta padrão ou definida pelo usuário). Para maior segurança, você pode configurar políticas de eventos que utilizam UI_LOGIN_EVENT informações para desabilitar efetivamente a porta padrão ou restringir ainda mais o acesso do servidor NETCONF em uma porta.

Para habilitar o serviço NETCONF sobre SSH em um dispositivo Junos:

  1. Habilite o serviço NETCONF na porta NETCONF padrão (830) ou em uma porta definida pelo usuário:

    • Para usar a porta NETCONF padrão (830), inclua a netconf ssh declaração no nível de [edit system services] hierarquia:

    • Para usar uma porta específica, configure a port declaração com o número de porta desejado no nível [edit system services netconf ssh] de hierarquia.

      A port-number pode variar de 1 a 65535. A porta configurada aceita apenas sessões NETCONF-over-SSH e rejeita solicitações regulares de sessão de SSH.

      Nota:

      Embora as sessões NETCONF-over-SSH possam ser configuradas em qualquer porta de 1 a 65535, você deve evitar configurar o acesso em uma porta que normalmente é atribuída a outro serviço. Essa prática evita possíveis conflitos de recursos. Se você configurar uma porta designada para outro serviço, como o FTP, e esse serviço estiver habilitado, não revelará commit check um conflito de recursos ou emitirá qualquer mensagem de aviso nesse sentido.

  2. (Opcional) Para também permitir o acesso ao subsistema NETCONF SSH usando a porta SSH padrão (22), inclua a ssh declaração no nível de [edit system services] hierarquia.

    Essa configuração permite o acesso SSH ao dispositivo para todos os usuários e aplicativos.

    Nota:

    Em versões em que o comportamento padrão é restringir o usuário raiz de usar o serviço SSH, você deve configurar a root-login allow declaração no nível de [edit system services ssh] hierarquia para permitir que o usuário raiz abra sessões netconf no SSH.

  3. (Opcional) Configure o dispositivo para desconectar clientes NETCONF sem resposta.

    Especifique o intervalo de tempo limite (em segundos) após o qual, se nenhum dados tiver sido recebido do cliente, o processo sshd solicita uma resposta. Além disso, especifique o limite de respostas perdidas com vida do cliente que desencadeiam uma desconexão.

    Nota:

    As declarações configuradas no nível de [edit system services netconf ssh] hierarquia aplicam-se apenas às sessões netconf que se conectam através da porta padrão (830) ou através da porta definida pelo usuário que está configurada no mesmo nível de hierarquia.

  4. Confirmar a configuração:

  5. Repita as etapas anteriores em cada dispositivo que executa o Junos OS, onde o aplicativo cliente estabelece sessões NETCONF.

Configure o dispositivo Junos para SSH de saída

Para configurar o dispositivo Junos para SSH de saída:

  1. No nível de [edit system services ssh] hierarquia, definir o SSH protocol-version para v2:
  2. Gere ou obtenha um par de chave público/privado para o dispositivo que executa o Junos OS. Esse par chave será usado para criptografar os dados transferidos pela conexão SSH.
  3. Se você estiver instalando manualmente a chave pública no servidor de gerenciamento de configuração, transfira a chave pública para o servidor de gerenciamento de configuração.
  4. No nível de [edit system services] hierarquia, inclua a hierarquia de outbound-ssh configuração e quaisquer declarações necessárias.

    As opções são as seguintes:

    address

    (Necessário) Nome de host ou endereço IPv4 ou IPv6 do servidor de gerenciamento. Você pode listar vários clientes adicionando o endereço IP ou nome de host de cada cliente, juntamente com os seguintes parâmetros de conexão.

    • port port-number— Porta SSH de saída para o cliente. O padrão é a porta 22.

    • retry number– Quantidade de vezes que o dispositivo tenta estabelecer uma conexão SSH de saída. O padrão é de três tentativas.

    • timeout seconds— Quantidade de tempo, em segundos, que o dispositivo que executa o Junos OS tenta estabelecer uma conexão SSH de saída. O padrão é de 15 segundos por tentativa.

      Nota:

      A partir do Junos OS Release 15.1, o Junos OS oferece suporte a conexões SSH de saída com dispositivos que têm endereços IPv6.

    client client-id

    (Necessário) Identifica a outbound-ssh estrofe de configuração no dispositivo. Cada outbound-ssh estrofe representa uma única conexão SSH de saída. Este atributo não é enviado ao cliente.

    device-id device-id

    (Necessário) Identifica o dispositivo que executa o Junos OS para o cliente durante a sequência de iniciação.

    keep-alive

    (Opcional) Especifique que o dispositivo envie mensagens keepalive para o servidor de gerenciamento. Para configurar a mensagem keepalive, você deve definir os atributos e retry os timeout atributos. Para configurar a mensagem keepalive, você deve configurar as declarações e retry as timeout declarações.

    • retry number— Número de mensagens keepalive que o dispositivo envia sem receber uma resposta do servidor de gerenciamento antes que a conexão SSH atual seja terminada. O padrão é de três tentativas.

    • timeout seconds— Quantidade de tempo, em segundos, que o servidor espera por dados antes de enviar um sinal keepalive. O padrão é de 15 segundos.

    reconnect-strategy (sticky | in-order)

    (Opcional) Especifique o método que o dispositivo que executa o Junos OS usa para restabelecer uma conexão SSH de saída desconectada. Dois métodos estão disponíveis:

    • in-order— Especifique que o roteador ou switch primeira tentativa de estabelecer uma sessão de SSH de saída com base na lista de endereços do servidor de gerenciamento. O roteador ou switch tenta estabelecer uma sessão com o primeiro servidor da lista. Se essa conexão não estiver disponível, o roteador ou switch tenta estabelecer uma sessão com o próximo servidor, e assim por diante na lista até que uma conexão seja estabelecida.

    • sticky— Especifique que o roteador ou switch primeiro tenta se reconectar ao servidor de gerenciamento ao qual foi conectado pela última vez. Se a conexão não estiver disponível, ela tenta estabelecer uma conexão com o próximo cliente da lista e assim por diante até que uma conexão seja feita.

    secret password

    (Opcional) A chave de host SSH pública do dispositivo. Se adicionado à outbound-ssh declaração, durante a inicialização do serviço SSH de saída, o roteador ou switch passa sua chave pública para o servidor de gerenciamento. Este é o método recomendado para manter uma cópia atual da chave pública dos dispositivos.

    services netconf

    (Necessário) Especifica os serviços disponíveis para a sessão. Atualmente, o NETCONF é o único serviço disponível.

  5. Confirmar a configuração:

Receba e gerencie a sequência de iniciação de SSH de saída no cliente

Quando configurado para SSH de saída, o dispositivo Junos tenta manter uma conexão constante com um servidor de gerenciamento de configuração. Sempre que uma sessão de SSH de saída não é estabelecida, o dispositivo envia uma sequência de iniciação SSH de saída para um servidor de gerenciamento de configuração listado na lista de servidores de gerenciamento de configuração do dispositivo. Antes de estabelecer uma conexão com o dispositivo, cada servidor de gerenciamento de configuração deve ser configurado para receber essa sequência de iniciação, estabelecer uma conexão TCP com o dispositivo e transmitir a identidade do dispositivo de volta para o dispositivo.

A sequência de iniciação requer um dos dois formulários, dependendo de como você escolheu lidar com a chave pública do servidor Junos OS.

Se a chave pública for instalada manualmente no servidor de gerenciamento de configuração, a sequência de iniciação toma o seguinte formulário:

Se a chave pública for encaminhada ao servidor de gerenciamento de configuração pelo dispositivo durante a sequência de inicialização, a sequência toma o seguinte formulário:

Tabela de histórico de mudanças

O suporte de recursos é determinado pela plataforma e versão que você está usando. Use o Feature Explorer para determinar se um recurso é suportado em sua plataforma.

Lançamento
Descrição
15.1
A partir do Junos OS Release 15.1, o Junos OS oferece suporte a conexões SSH de saída com dispositivos que têm endereços IPv6.