J'utilise des paires de clés publique/privée depuis longtemps maintenant. Et à peu près au même moment, je me demande encore et encore quelle extension de fichier je devrais utiliser. Il semble que du moins pour les clés publiques et privées (openssh) n’est pas une convention du tout?
Je veux dire dans PuTTY, il existe une extension spéciale .ppk
pour "PuTTY Private Key" et la clé publique est stockée soit sans extension, soit avec .pub
. Personnellement, je préfère ne pas utiliser .pub
, car Microsoft utilise déjà cette extension pour MS Publisher. Donc, pour PuTTY, je stocke les deux clés avec le même nom et ajoute .ppk
à la clé privée et rien à la clé publique. Et pour ce cas, je peux vivre avec ça. Je peux identifier quelle clé est publique et quelle clé privée et celle privée sont uniquement destinées à PuTTY.
Mais que dois-je faire avec la clé privée openssh? Juste stocker sans extension? Ou utilisez quelque chose comme .openssh
? Aussi, s'il n'y a pas vraiment de convention, si quelqu'un y réfléchissait et choisissait une sorte de concept pour lui-même, j'apprécierais aussi que ...
Merci d'avance!
Tout d'abord, il n'y a pas vraiment de convention officielle pour nommer les clés. Les noms de fichiers ne comptent pas. Ils ne sont importants que pour vous, qui doit les gérer. Le logiciel ne concerne que le contenu des fichiers.
Cela étant dit, les fichiers de clé OpenSSH ne sont que des fichiers texte, vous pouvez donc les nommer avec une extension .txt
.
Je respecte généralement la convention utilisée par l'outil ssh-keygen
, à savoir id_{key_algorithm}
(c.-à-d. id_rsa
ou id_dsa
) pour la clé privée, puis le nom de clé privée + .pub
pour la clé publique (id_rsa.pub
ou id_dsa.pub
). Si je dois conserver plusieurs clés, je vais ajouter un identifiant supplémentaire à la fin du nom pour obtenir des noms tels que id_rsa_myhost
et id_rsa_myhost.pub
.
J'ai donc pensé à certains concepts de nommage et je me suis retrouvé comme ça maintenant. Je sais qu'il n'y a pas de convention à part .ppk
(clé privée PuTTY) dans PuTTY - ce n'est donc pas un "Vous devez le faire comme ceci" , c'est plutôt un idée à quoi un concept de nommage pourrait ressembler . J'ai donc pensé à le partager avec vous de toute façon - cela aiderait peut-être au moins quelqu'un à construire son propre concept.
Le nom doit donc contenir les informations suivantes:
Comme heavy mentionné, je pense que c'est vraiment une bonne idée de s'en tenir à la syntaxe de l'outil ssh-keygen
. J'utilise donc ceci (à l'exception du .pub
pour les clés publiques, car cette extension de fichier est utilisée par Microsoft Publisher et pourrait être interprétée de manière incorrecte sur les systèmes Windows - il existe également une icône pour MS Publisher) et je la combine avec la convention de PuTTY ( .ppk
) et les conditions ci-dessus. Par conséquent, un schéma de noms possible pourrait être:
id_<key_algorithm>_<servername>_<purpose>.<format_information>
Avec les règles suivantes:
<servername>
<purpose>
<purpose>
ou <servername>
) doit être contenue dans le nomPuTTY utilise .ppk
pour les clés privées et l'outil ssh-keygen
est livré avec .pub
pour les clés publiques, que je ne souhaite pas utiliser à cause de MS Publisher. Par conséquent, je m'en tiens à PuTTys .ppk
, diffère juste un peu de ssh-keygen
s .pub
et utilise les deux "conventions" comme base pour construire les autres à proximité de ce nom. Donc, cette information est ajoutée en tant que "extension de fichier" :
Name of OpenSSH private key: .pk an alternative could be .opk or .ospk
Name of OpenSSH public key: .pubk an alternative could be .opubk or .ospubk
Name of PuTTY private key: .ppk
Name of PuTTY Public Key: .ppubk
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