免密登入 ssh

創建鑰匙

ssh-keygen -t rsa -b 4096  # 不建議使用
ssh-keygen -t dsa  # 不建議使用
ssh-keygen -t ecdsa -b 521
ssh-keygen -t ed25519

將公要導入遠端主機

ssh-copy-id -i ~/.ssh/tatu-key-ecdsa user@host

如果只有私鑰沒有公鑰 可以生成 公鑰

ssh-keygen -y -f ~/.ssh/id_ed25519 > ~/.ssh/id_ed25519.pub

在server上設定 如果沒有在遠端主機註冊過公鑰

mkdir -p ~/.ssh && touch ~/.ssh/authorized_keys

更改遠端主機讀取公鑰的權限

chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys

修改遠端伺服器 sshd 的設定文件 啟動 公鑰驗證

sudo nano /etc/ssh/sshd_config
PubkeyAuthentication yes

重新啟動遠端伺服器的sshd

sudo systemctl restart sshd
Written on October 13, 2020