命令:
ssh-keygen -t rsa -f ~/.ssh/id_rsa -N shoufeng -C shoufeng
ssh-keygen
常用參數說明:
-t: 密鑰類型, 可以選擇 dsa | ecdsa | ed25519 | rsa; 省略的情況下默認是rsa -f: 密鑰目錄位置,指定生成密鑰的保存路徑和文件名。省略的情況下, 默認為當前用戶home路徑下的.ssh隱藏目錄, 也就是~/.ssh/, 同時默認密鑰文件名以id_rsa開頭.
-f省略的情況下,默認目錄就是~/.ssh/,不會再次提醒輸入。但是會再次提是你輸入文件名,如果不輸入直接回車,則默認的密鑰文件名就是id_rsa
-C: 指定此密鑰的備注信息, 需要配置多個免密登錄時, 建議攜帶;生成的公鑰會在最后面顯示此備注信息 -N: 指定此密鑰對的密碼, 如果指定此參數, 則命令執行過程中就不會出現交互確認密碼的信息了.如果省略此參數,會提示你輸入密碼和密碼確認。一般情況下不用輸入,直接回車就行。
如果輸入密碼之后,以后每次都要輸入密碼。這里請根據你的安全需要決定是否需要密碼,如果不需要,直接回車:
一般情況下,簡單的執行ssh-keygen,並按回車就可以生成密鑰對了
ssh-keygen
這時就會在 ~/.ssh目錄下生成兩個文件id_rsa和id_rsa.pub,前者為私鑰,后者為公鑰
實例
[vagrant@localhost .ssh]$ cd ~ [vagrant@localhost ~]$ cd .ssh [vagrant@localhost .ssh]$ ll total 4 -rw-------. 1 vagrant vagrant 389 Sep 12 06:01 authorized_keys [vagrant@localhost .ssh]$ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/home/vagrant/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/vagrant/.ssh/id_rsa. Your public key has been saved in /home/vagrant/.ssh/id_rsa.pub. The key fingerprint is: SHA256:DI6VWWlGpw5g76EB/rYBxVz9nHqwcwKLM6bDAwXNc94 vagrant@localhost.localdomain The key's randomart image is: +---[RSA 2048]----+ | o.o+..oo.. | |..+++o +=o | | .o+..Oo.o . | | .o.BE*. + | | . *.ooS+ | |. .=o. = o | | o o.o = | | = | | o | +----[SHA256]-----+ [vagrant@localhost .ssh]$ ll total 12 -rw-------. 1 vagrant vagrant 389 Sep 12 06:01 authorized_keys -rw------- 1 vagrant vagrant 1675 Oct 3 07:52 id_rsa -rw-r--r-- 1 vagrant vagrant 411 Oct 3 07:52 id_rsa.pub [vagrant@localhost .ssh]$