[分享] luks 加密系统分区后,引导过程中 ssh 远程输入密码

Web、Mail、Ftp、DNS、Proxy、VPN、Samba、LDAP 等基础网络服务
回复
zhangjint5
帖子: 292
注册时间: 2011-01-02 12:31
送出感谢: 43 次
接收感谢: 12 次

[分享] luks 加密系统分区后,引导过程中 ssh 远程输入密码

#1

帖子 zhangjint5 » 2022-12-07 10:58

自用脚本!测试过 Debian 11 和 Ubuntu 22.04.1 ,其它没测试过,有问题自行修改!

使用 authorized_keys 进行登陆验证,请事先准备好 ssh 登陆 key !

默认使用 DHCP 取得 IP 地址,手动分配 IP ,在引导内核参数上指派 IP 和网关等参数。

脚本会导入和转换已经安装的 OpenSSH 服务器 Key 到 dropbear 中,所以与正常的登陆时的服务器有相同的 fingerprint

#!/bin/sh

#20221207

set -e

if [ ! -d /etc/dropbear-initramfs ]; then
mkdir /etc/dropbear-initramfs
fi

cp -f ~/.ssh/authorized_keys /etc/dropbear-initramfs/authorized_keys
chown root:root /etc/dropbear-initramfs/authorized_keys

##########

apt-get -y install dropbear-bin

echo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
echo The key file does not support setting a password, press Enter to skip !
echo @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

cp -af /etc/ssh/ssh_host_ecdsa_key /dev/shm/ssh_host_ecdsa_key
cp -af /etc/ssh/ssh_host_ecdsa_key.pub /dev/shm/ssh_host_ecdsa_key.pub
ssh-keygen -p -m PEM -f /dev/shm/ssh_host_ecdsa_key
dropbearconvert openssh dropbear /dev/shm/ssh_host_ecdsa_key /etc/dropbear-initramfs/dropbear_ecdsa_host_key
#####
cp -af /etc/ssh/ssh_host_ed25519_key /dev/shm/ssh_host_ed25519_key
cp -af /etc/ssh/ssh_host_ed25519_key.pub /dev/shm/ssh_host_ed25519_key.pub
ssh-keygen -p -m PEM -f /dev/shm/ssh_host_ed25519_key
dropbearconvert openssh dropbear /dev/shm/ssh_host_ed25519_key /etc/dropbear-initramfs/dropbear_ed25519_host_key
#####
cp -af /etc/ssh/ssh_host_rsa_key /dev/shm/ssh_host_rsa_key
cp -af /etc/ssh/ssh_host_rsa_key.pub /dev/shm/ssh_host_rsa_key.pub
ssh-keygen -p -m PEM -f /dev/shm/ssh_host_rsa_key
dropbearconvert openssh dropbear /dev/shm/ssh_host_rsa_key /etc/dropbear-initramfs/dropbear_rsa_host_key

##########

apt-get -y install dropbear-initramfs

update-initramfs -u -k all

########## The default state uses DHCP addresses ##########

echo ssh root@[SERVER_[DHCP]ADDRESS]

echo cryptroot-unlock [PASSWORD]
回复