ssh-keygen -t rsa
這樣會在當前目錄生成名爲id_rsa的私鑰文件和名爲id_rsa.pub的公鑰文件,-t表示密鑰類型是rsa. 若是你只輸入ssh-keygen生成的RSA密鑰長度爲2048,若是你對安全性要求比較高能夠指定4096位的長度:linux
ssh-keygen -b 4096 -t rsa
這裏-b就是多少位,固然你對這些參數感興趣可使用--help參數看看具體的含義和解釋。當你在生成SSHKEY的時候在命令行下會提示你Enter file in which to save the key,讓你確認密鑰文件保存的路徑,通常回車便可(通常默認會在當前用戶家目錄下的.ssh目錄下)。第二個提示是 Enter passphrase (empty for no passphrase) 讓你輸入一個密鑰的密碼,若是不輸入則留空;回車生成公私鑰完畢 😃git
此時你可使用cat命令看下本身的公私鑰。github
方法一:shell
~/.ssh/authorized_keys
這個文件,touch ~/.ssh/authorized_keys
cat -n ~/.ssh/rsa.pub ~/.ssh/authorized_keys
這樣就將公鑰內容追加到authorized_keys中了,而後須要注意配置權限了,不然SSH不會工做的.vim
方法二:windows
ssh-copy-id
複製公鑰ssh-copy-id username@remote-server -p prot
它會將本地的全部公鑰都傳到服務器.安全
ssh user@host -p22
~/.ssh/config
,沒有config則本身建立Host yourserverName #設置的別名 HostName xx.xx.xx.xx #服務器IP Port 22 #端口號 User username #登錄用戶名 IdentitiesOnly yes #IdentitiesOnly yes固有配置,多個配置則no IdentityFile ~/.ssh/id_rsa#對應服務器公鑰的本地私鑰文件路徑,能夠不寫,我不寫也能正常鏈接
ssh key Key is invalid服務器
密鑰錯誤,或者配置錯誤ssh
github ssh key Key is invalid. Ensure you’ve copied the file correctly命令行
在github上添加新key時,沒有正確拷貝 ~/.ssh/id_rsa.pub 內容所致。
通常發生在linux下,由於windows下用notepa++打開這個文件並複製通常是沒有問題的,
而linux下使用vim打開再複製就會由於vim添加了回車而致使key添加失敗。
解決辦法是:使用cat命令將 ~/.ssh/id_rsa.pub 內容輸出到終端,再拷貝。
參考資料: