Então eu pensei em alguns conceitos de nomenclatura e acabei assim agora. Eu sei que não há nenhuma convenção exceto por .ppk
(PuTTy Private Key) em PuTTy - então este não é um "Você tem que fazer assim" , é bastante idéia de como conecptos de nomenclatura podem ser parecidos com . Então eu pensei em compartilhar com você de qualquer maneira - talvez isso ajude alguém, pelo menos, a construir seu próprio conceito.
O que eu quero / não quero
- Eu quero usar os keypairs OpenSSH e PuTTy
- Eu quero que as chaves sejam imediatamente identificáveis e não consigam se confundir - portanto, quero identificar
- o algoritmo
- se for uma chave privada ou pública
- se for o formato OpenSSH ou PuTTy
- Eu quero que o nome seja Windows e Unix "compatível / compatível" (por exemplo, não quero espaços no Linux - mesmo que não seja uma política oficial)
- Eu não quero mudar todas as chaves em todos os servidores, se alguma coisa (talvez algum tipo de problema de segurança) acontecer, então eu posso
- não quer usar o mesmo par de chaves para vários servidores
- deseja usar um par de chaves para apenas uma finalidade (o objetivo pode ser um usuário, um serviço ou uma tarefa, por exemplo)
Portanto, o nome deve conter as seguintes informações:
- Informações de finalidade, se forem (nome de usuário ou nome da tarefa, por exemplo)
- O nome do servidor, se for uma chave específica do servidor
- O algoritmo
- É uma chave privada ou pública?
- O formato OpenSSH ou PuTTy?
Um esquema de nome possível
Como heavyd mencionado, acho que é realmente uma boa ideia seguir a sintaxe do ssh-keygen
tool. Então eu uso isso (exceto para o .pub
para chaves públicas, porque esta extensão de arquivo é usada pelo Microsoft Publisher e pode ser interpretada incorretamente em sistemas Windows - há também um ícone próprio para o MS Publisher) e combiná-lo com a convenção do POTTY ( .ppk
) e as condições acima. Portanto, um possível esquema de nomes poderia ser:
id_<key_algorithm>_<servername>_<purpose>.<format_information>
Com as seguintes regras:
- Se não for para um servidor específico, remova
<servername>
- Se não for para um propósito específico, remova
<purpose>
- Pelo menos uma das informações (
<purpose>
ou <servername>
) deve estar contida no nome
A informação de formato (OpenSSH / PuTTy e privada / pública)
O PuTTy usa .ppk
para chaves privadas e a ferramenta ssh-keygen
vem com .pub
para chaves públicas aqui, o que não desejo usar por causa do MS Publisher. Portanto, eu mantenho PuTTys .ppk
, diferem apenas um pouco de ssh-keygen
s .pub
e usam ambas "convenções" como base para construir as outras próximas a esses nomes. Então, essa informação é adicionada como "extensão do arquivo" :
Name of OpenSSH private key: .pk an alternaitve could be .opk or .ospk
Name of OpenSSH public key: .pubk an alternaitve could be .opubk or .ospubk
Name of PuTTY private key: .ppk
Name of PuTTy Public Key: .ppubk
Alguns exemplos:
id_rsa_foo_bar.ppk
id_dsa_foo.pk
id_rsa_server01_rsync.pk
id_rsa_server01_rsync.pubk
id_rsa_server01_rsync.ppk
id_rsa_server01_rsync.ppubk