Mac上面用Ed25519:Edwards-curve Digital Signature Algorithm (EdDSA) ,並選用 SHA-512 (SHA-2) 與 Curve25519,產生256-bits金鑰的指令如下:
- ssh-keygen -t ed25519 -C "COMMENT" -f KEYNAME
這樣會在~/.ssh/下面產生兩個檔案:
- KEYNAME:私鑰,用---開頭的行是註解,首行跟末行都是註解
- KEYNAME.pub:公鑰,內容如下:
- ssh-ed25519:公鑰演算法名稱
- AAAAC3NzaC1lZDI1NTE5AAAAINP/Kq3qGUxeSt8gzjiO1wC8AYTKJV/2YtjLnMQbZTgI:公鑰經過base64處理過的編碼。這邊的公鑰是示範,每次產生的都不一樣
- COMMENT:註解
產完公私鑰之後,用下面的指令把公鑰塞到遠端的機器:
- ssh-copy-id -i ~/.ssh/KEYNAME.pub USERNAME@REMOTE
之後就可以用下面的指令免密碼透過SSH key登入遠端機器:
- ssh -v -i ~/.ssh/KEYNAME.pub USERNAME@REMOTE
若覺得還要敲那麼長的指令很麻煩,那可以加~/.ssh/config
Host REMOTE
User USERNAME
IdentityFile ~/.ssh/KEYNAME
LogLevel VERBOSE
這樣之後就可用比較短的指令登入:
- ssh USERNAME@REMOTE
參考資料與相關資料
- Mac用ssh-keygen生成SSH金鑰對:用RSA搭配4096-bit創金鑰
- SSH使用的加密種類與推薦的金鑰長度:幾種常用的加密方式說明
- Windows用MobaXterm產生SSH金鑰:Windows上產金鑰的一種方式
_EOF_
沒有留言:
張貼留言