Skip to main content

Linux SSH KEY 免密碼登入

建立Key

ssh-keygen

複製到Server上

ssh-copy-id -i your_key_path username@server_host

手動複製

cat ~/.ssh/id_rsa.pub | ssh user@192.168.0.100 'mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys'

驗證ssh username@server_host可直接登入

若登入失敗修正權限

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0777 for '/var/services/homes/user/.ssh/id_rsa' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "/var/services/homes/user/.ssh/id_rsa": bad permissions


因為 私鑰 (id_rsa) 權限太寬 (0777),SSH 出於安全性會直接拒絕使用這把 key

# 設定 .ssh 資料夾權限
chmod 700 ~/.ssh

# 設定私鑰權限 (只能自己讀寫)
chmod 600 ~/.ssh/id_rsa

# 公鑰可讀
chmod 644 ~/.ssh/id_rsa.pub