从预置文件安装 openssh-server 包

从预置文件安装 openssh-server 包

因此,我设法使用预置文件创建自定义 ISO,该文件会自动安装操作系统,一切正常,但是无法安装 openssh-server 包……我不知道该做什么。

在我的预置文件中,有以下几行:

#Add package
d-i pkgsel/include string openssh-server build-essential

但是当我登录时,软件包尚未安装。我还需要启用以 root 身份登录,出于其他目的,我需要修改 sshd_config 文件,我也尝试了以下两个选项,但我猜它们不起作用,因为 openssh-server 软件包首先没有安装:

ubiquity ubiquity/success_command string sed -i '/PermitRootLogin/c\PermitRootLogin yes' /etc/ssh/sshd_config

d-i preseed/late_command string sed -i '/PermitRootLogin/c\PermitRootLogin yes' /etc/ssh/sshd_config

首先,添加 ssh 服务器包,然后修改 sshd_config 文件,最好的方法是什么?这样当操作系统启动时,ssh 服务就会启动并运行

答案1

我们使用并测试了以下方法以及 Ubuntu 的网络启动映像。

d-i passwd/root-login boolean true
d-i passwd/root-password-crypted password <password>
d-i passwd/make-user boolean false
d-i pkgsel/include string openssh-server
d-i preseed/late_command string \
  in-target sh -c 'sed -i "s/^#PermitRootLogin.*\$/PermitRootLogin yes/g" /etc/ssh/sshd_config';

使用以下命令生成密码:

printf "please-change-password" | mkpasswd -s -m sha-512

这里你会发现一个更复杂的方法,使用 ssh 公钥作为默认设置。它仍然包含预播种关于密码登录的文件。

相关内容