Mac生成ssh|Mac生成ssh key,通过ssh-keygen命令

刚刚开始接触VPS,觉得每次通过账户密码的方式很麻烦。在各类文章浏览中发现有key这样的登陆方式。奈何很多人都是把命令一丢,也不作解释。洋洋洒洒丢一些代码出来好像很高深的样子,让人看的不明所以不说,如果直接照搬,在日后维护管理也会非常不便。
在写教程这一点上,发现喜欢写博客的日本人更加详细,都会附上说明。
转自SSH Key 生成 for Mac @marimon - Qiita,截选并自行翻译。
とりあえず何を使えばって場合はこれで 首先看一下最基础的命令

ssh-keygen -b 4096 -t rsa
▼オプション補足
▼描述补充


-b: 鍵のビット数(設定しない場合は、デフォルトの1024ビット)
-b:密钥的bit数(不写的情况下,默认1024bit)
-t: 鍵の種類(dsa, ecdsa, ed25519, rsa, rsa1)
-t:密钥的种类(dsa,ecdsa,ed22519,rsa,rsa1)补充:不写的情况下,默认rsa


※そのほかのオプションについては、下記を参考にしてください。
人によっては、-Cオプションでコメントをつける場合もあるようです。
其他的选项可以参考OpenSSH Manual注:原文附上的为日文版链接,且已失效,在此附上的为英文原版手册。
【Mac生成ssh|Mac生成ssh key,通过ssh-keygen命令】根据喜好,-c描述可以添加注释注:看国内的一些文章,会有人附上自己的邮箱。非必要选项。


ssh key生成の手順
ssh key生成顺序
ファイル名で見る公開鍵、秘密鍵の違い
根据文件名分辨公钥,密钥
?id_rsa.pub = 公開鍵(公钥)
?id_rsa = 秘密鍵(私钥)


既存のkeyを確認
确认是否存在已有密钥(key)

输入:
ls -al ~/.ssh
返回:
UserNames-MacBook-Pro:~ UserName$ ls -al ~/.ssh
total 8
drwx------3 UserNamestaff9627 11:42 .
drwxr-xr-x+ 35 UserNamestaff11202 23 11:23 ..
-rw-r--r--1 UserNamestaff20927 11:42 known_hosts


「id_rsa.pub」も「id_rsa」もないので、既存のkeyは無いことが確認できました。
因为没有「id_rsa.pub」和「id_rsa」,所以可知不存在已有的key。


keyの生成
key的生成 オプション設定しない場合の鍵生成 没有添加描述的情况 输入:
ssh-keygen
返回:
UserNames-MacBook-Pro:~ UserName$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/UserName/.ssh/id_rsa): (不指定保存位置的话请按Enter)
Enter passphrase (empty for no passphrase):(输入密码(口令?暗号?此处不知道passphrase的意思和作用,日后弄清楚了再行编辑)无密请留空)
Enter same passphrase again: (确认密码)
Your identification has been saved in /Users/UserName/.ssh/id_rsa.
Your public key has been saved in /Users/UserName/.ssh/id_rsa.pub.
The key fingerprint is:
(省略)
The key's randomart image is:
(省略)
+----[SHA256]-----+
UserNames-MacBook-Pro:~ UserName$ ls -al ~/.ssh
total 24
drwx------5 UserNamestaff1602 27 12:03 .
drwxr-xr-x+ 35 UserNamestaff11202 23 11:23 ..
-rw-------1 UserNamestaff17662 27 12:03 id_rsa
-rw-r--r--1 UserNamestaff4182 27 12:03 id_rsa.pub
-rw-r--r--1 UserNamestaff20927 11:42 known_hosts
「id_rsa.pub」も「id_rsa」のどちらも生成されてますね。
「id_rsa.pub」和「id_rsa」都生成好了。
オプション設定しない場合の暗号度合い
没有添加描述的情况下确认加密程度(查看密钥文件) 输入:
ssh-keygen -l -f ~/.ssh/id_rsa.pub
返回:
UserNames-MacBook-Pro:~ UserName$ ssh-keygen -l -f ~/.ssh/id_rsa.pub
2048 SHA256:(省略) (RSA)
通常、2048あれば十分と言われていますので、あくまでも確認程度です。(暗号方式も確認できますね。)
通常情况下2048位已经足够了,这里仅仅是确认。(在这个示例当中,加密方式也可以确认是RSA。)


オプション設定した場合の鍵生成 在添加了描述的情况下生成密钥 运行:
ssh-keygen -b 4096 -t rsa
返回:
UserNames-MacBook-Pro:~ UserName$ ssh-keygen -b 4096 -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/UserName/.ssh/id_rsa): (不指定保存位置的话请按Enter)
Enter passphrase (empty for no passphrase): (输入密码)
Enter same passphrase again: (输入密码)
Your identification has been saved in /Users/UserName/.ssh/id_rsa.
Your public key has been saved in /Users/UserName/.ssh/id_rsa.pub.
The key fingerprint is:
(省略)
The key's randomart image is:
(省略)
UserNames-MacBook-Pro:~ UserName$ ls -al ~/.ssh
total 24
drwx------5 UserNamestaff1602 27 12:14 .
drwxr-xr-x+ 35 UserNamestaff11202 23 11:23 ..
-rw-------1 UserNamestaff33262 27 12:14 id_rsa
-rw-r--r--1 UserNamestaff7622 27 12:14 id_rsa.pub
-rw-r--r--1 UserNamestaff20927 11:42 known_hosts
「id_rsa.pub」も「id_rsa」のどちらも生成されてますね。
「id_rsa.pub」和「id_rsa」都生成好了。


オプション設定した場合の暗号度合い
在添加了描述的情况下确认加密程度(查看密钥文件) 输入:
ssh-keygen -l -f ~/.ssh/id_rsa.pub
返回:
UserNames-MacBook-Pro:~ UserName$ ssh-keygen -l -f ~/.ssh/id_rsa.pub
4096 SHA256:(省略)(RSA)
オプションで設定した通り、4096ビットで生成されました。
こちらの方が強度がありますね。
根据描述,生成了4096bit的密钥。
有了更深的加密强度。

    推荐阅读