Ir para o conteúdo

Acesso de Clientes Linux à máquinas Linux com ssh e certificado de chave pública

Para acessar uma máquina Linux via SSH usando um certificado de chave pública, você pode seguir estas etapas:

  1. Na máquina cliente (pode ser Mac, Linux ou Windows), abra um terminal ou prompt de comando.

  2. Se você ainda não tiver um par de chaves, gere um par de chaves pública/privada executando o seguinte comando:

    Mac/Linux:

    ssh-keygen -t rsa -b 4096
    

    Isso irá gerar um par de chaves RSA de 4096 bits. Siga as instruções para escolher um local para salvar a chave e, opcionalmente, uma senha para protegê-la.

  3. Copie a chave pública para a máquina remota usando o seguinte comando, substituindo pelo seu nome de usuário e pelo endereço IP da máquina remota:

    Mac/Linux:

    ssh-copy-id -i ~/.ssh/id_rsa.pub seu_usuario@ip_da_maquina
    

    Exemplo no Mac:

    $ ssh-copy-id -i ~/.ssh/id_rsa.pub seu_usuario@192.168.0.1
    
    /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/Users/seu_usuario/.ssh/id_rsa.pub"
    /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
    /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
    seu_usuario@192.168.0.1's password: 
    
    Number of key(s) added:        1
    
    Now try logging into the machine, with:   "ssh 'seu_usuario@192.168.0.1'"
    and check to make sure that only the key(s) you wanted were added.
    
    4. Agora você pode tentar se conectar à máquina remota usando a chave pública, executando o seguinte comando:

    $ ssh -i ~/.ssh/id_rsa seu_usuario@ip_da_maquina
    

    ou

    $ ssh seu_usuario@ip_da_maquina
    

    Isso tentará autenticar usando a chave privada correspondente à chave pública que você copiou para a máquina remota. Se a autenticação for bem-sucedida, você será conectado à máquina remota via SSH.

    Nota

    Certifique-se de substituir seu_usuario pelo seu nome de usuário e ip_da_maquina pelo endereço IP da máquina remota em todos os comandos acima.