dropbear ssh 設定
因為安裝系統時設定了加密硬碟(使用 LUK)結果要開機之前都要先輸入密碼才能開機,所以無法遠端 ssh 登入系統,因為……硬碟沒有解密,就開不了機…… @@"
工作環境:
ubuntu server LTS >22
md-crypt_0 LUK 加密硬碟
open-ssh server
裝 dropbear-initramfs 在開機階段讓遠端能夠連進來
sudo apt install dropbear-initramfs
設定 dropbear 參數
sudo nano /etc/dropbear/initramfs/
產生 ssh 金鑰:
sudo ssh-keygen -t rsa 或是使用 windows 中的 PUTTYGEN.exe > generate > 一直移動滑鼠 > save public key (authorized_keys) > save private key (authorized_keys.ppk)
會長得像這樣
ssh-rsa AAAA.... rsa-key-notes
配置 dropbear 使用金鑰連線 -c 的參數讓你連線就執行硬碟解密的指令
DROPBEAR_OPTIONS="-s -j -k -p 2222 -c cryptroot-unlock"
配置 dropbear 使用金鑰
/etc/dropbear/initramfs/authorized_keys 把剛才的 ssh 金鑰內容貼進去
配置 ssh 使用者的金鑰
~/.ssh/authorized_keys 把剛才的 ssh 金鑰內容貼進去
或是直接複制剛才的檔案過來
sudo cp /etc/dropbear/initramfs/authorized_keys ~/.ssh/
配置 putty 使用金鑰連線
connection > SSH > Auth > Authentication parameters > Allow agent forwarding > Private key for authentication > Browse > 剛才存的 .ppk > Session > Host Name 你的伺服器 IP > Port 2222 > Open
先用 root 登入哦,一連進去就問你硬碟解密的密碼了
設一下權限
chmod 600 /anywhere/authorized_keys
chmod 700 /anywhere
收工!
============== 一些撞到的牆 ================
claude 說把 authorized_keys 放在 /etc/initramfs/root/.ssh/authorized_keys 下是錯的
Error: server refused our key
no supported authentication methods available (server sent: publickey)
不論 user/sudo user/root 都無法登入
留言
張貼留言