Quero poder especificar as chaves em dois arquivos separados, um controlado pelo usuário e outro gerado automaticamente por uma ferramenta.
Como posso fazer com que um arquivo como ~/.ssh/authorized_keys_generated
também seja verificado quanto a chaves no login?
Responder1
Basta anexar o nome do arquivo ao lado do antigo.
AuthorizedKeysFile ~/.ssh/authorized_keys ~/.ssh/authorized_keys_generated
Responder2
Esta não é exatamente a sua pergunta, mas você também pode usarAuthorizedKeysCommand
no arquivo de configuração ssh. sshd
iniciará o comando com o usuário como o primeiro parâmetro e o stdout do script deve ser um authorized_keys
formato de correspondência de string.
Você poderia usar um script como:
#!/bin/bash
for file in /home/$1/.ssh/*.pub; do
cat $file;
done
Isso ecoa todos os arquivos em chave pública ~/.ssh
, concedendo acesso a todas as chaves nele contidas.
Mas há mais do que isso, AuthorizedKeysCommand
pode ser usado para chamar um servidor de autorização que conceda acesso com base na sua lógica de negócios, por exemplo. É uma ferramenta poderosa.