Nota: O seguinte artigo irá ajudá-lo com: Como gerenciar chaves SSH no Cockpit para autenticação de chave SSH remota
Cockpit é uma excelente GUI baseada na web para gerenciar seus servidores Linux. A maioria dos servidores baseados em RHEL são fornecidos com o Cockpit instalado e facilitam o gerenciamento de serviços, armazenamento, rede, contêineres, atualizações, contas de usuário, logs, SELinux e muito mais.
Outro recurso menos óbvio encontrado no Cockpit é a capacidade de gerenciar chaves SSH para autenticação remota de chaves SSH. Imagine isso: você faz no Cockpit em seu servidor AlmaLinux e deseja usar o SSH para fazer em outro servidor com o recurso de terminal integrado. O que você faz?
Se você quiser trabalhar com a autenticação de chave SSH porque é mais seguro, você deve certificar-se de que o servidor remoto tenha a chave pública do servidor Cockpit adicionada. Você pode fazer tudo isso a partir da linha de comando, mas há uma maneira mais fácil – especialmente se você usar várias chaves SSH – incorporadas diretamente no Cockpit.
Deixe-me mostrar como isso funciona.
VEJA: Mais de 40 termos de código aberto e Linux que você precisa conhecer (TechRepublic )
O que você precisará
Para fazer isso funcionar, você precisará de um servidor com o Cockpit funcionando e pelo menos um outro servidor para aceitar s SSH. Mostrarei como adicionar chaves SSH de um diretório não padrão e adicionar várias chaves para diferentes propósitos. Você também precisará de um usuário com privilégios sudo no host do Cockpit.
Como habilitar o serviço Cockpit
Se você ainda não habilitou o Cockpit, veja como. Faça no servidor que hospeda o Cockpit e emita o comando:
sudo systemctl enable –now cockpit.socket
Assim que o Cockpit estiver habilitado, você pode fazer na interface baseada na web apontando um navegador para https://SERVER:9090 (onde SERVER é o servidor de hospedagem) e fazendo como usuário com privilégios sudo.
Como adicionar uma chave SSH
Uma das coisas que o Cockpit não pode fazer é gerar a chave SSH do seu servidor. Se você ainda não fez isso, vamos cuidar disso agora. Mostrarei como não apenas adicionar uma chave SSH do diretório ~/.ssh padrão, mas criar uma chave SSH e salvá-la em um diretório não padrão para facilitar o gerenciamento de suas chaves.
Faça no seu host Cockpit via SSH. Crie um novo diretório com o comando:
sudo mkdir /data
Em seguida, altere a propriedade desse diretório para seu usuário com:
sudo chown -R $.$ /data
Você pode nomear os dados como quiser; Eu apenas escolhi isso por padrão.
Gere uma nova chave SSH com o comando:
ssh-keygen
Você também pode adicionar um comentário à nova chave, para poder acompanhar qual é a chave. Digamos, por exemplo, que você queira gerar uma chave SSH que será usada para seus servidores Ubuntu. Para isso, você pode emitir o comando:
ssh-keygen -C “Servidores Ubuntu”
Quando solicitado a inserir o arquivo no qual deseja salvar a chave, digite /data/key1_rsa (você pode alterar o nome da chave para o que precisar) e pressione Enter no teclado.
Você será solicitado a digitar e verificar uma senha para a chave. Depois de cuidar disso, você deve ter um par de chaves correspondente na pasta /data (key1_rsa e key1_rsa.pub). Crie quantas chaves precisar.
Como gerenciar chaves SSH com o Cockpit
Agora que suas chaves foram criadas, vamos gerenciá-las com o Cockpit. Lembre-se, essas chaves precisarão ser copiadas para seus servidores remotos para autenticação de chave SSH. Embora o Cockpit não tenha um mecanismo integrado para automatizar esse processo, ele pelo menos oferece uma GUI bem projetada para adicionar e usar as chaves necessárias.
Faça no Cockpit como um usuário e clique no menu suspenso Sessão no canto superior direito. Nessa lista suspensa, clique em Chaves SSH (Figura A).
Figura A
Na janela resultante (Figura B), clique em Adicionar chave.
Figura B
Clique no menu suspenso de localização e selecione /data na lista (Figura C).
Figura C
Se você clicar no menu suspenso de localização uma segunda vez, as chaves contidas nesse diretório aparecerão (Figura D).
Figura D
Selecione a chave que você acabou de criar e clique em Adicionar. Você será solicitado a fornecer a senha da chave (Figura E).
Figura E
Digite a senha para a chave e clique em Desbloquear e a chave será adicionada.
Como usar suas chaves SSH no Cockpit
Agora, vamos copiar nossa chave SSH recém-adicionada no Cockpit e adicioná-la a um servidor remoto. No gerenciador de chaves Cockpit SSH, expanda a entrada da chave que você deseja usar e clique na guia Chave pública. Nessa aba (Figura F), clique no ícone da área de transferência para copiar a chave.
Figura F
Agora, clique na entrada Terminal na barra lateral esquerda e SSH no servidor no qual você deseja copiar a chave. Depois de logado, emita o comando:
nano .ssh/authorized_keys
Com esse arquivo aberto, cole a chave copiada e salve e feche o arquivo. Saia da sessão SSH e faça novamente.
Com a chave SSH no lugar, você não deve ser solicitado a fornecer a senha da máquina remota. Como salvamos nossas chaves SSH em um diretório não padrão, seu comando SSH ficaria assim:
ssh -i /data/key1_rsa 192.168.1.30
E isso é tudo que você precisa para gerenciar suas chaves SSH com o Cockpit. Lembre-se, você pode adicionar quantas chaves precisar ao sistema, cada uma das quais pode ser usada para uma finalidade diferente e, com a ajuda do Cockpit, você não deverá ter problemas para ar e usar essas chaves.