在自动安装上设置 ssh ssh 密码

在自动安装上设置 ssh ssh 密码

我已经看到,ubuntu-server 自动安装程序设置了一个随机 ssh 密码和密钥,以便能够通过安装阶段进行连接。但我现在想设置一个无头系统,所以我看不到随机密码。有没有办法配置这个密码或自己的公钥?

答案1

是的。下面是可以添加到自动安装user-data文件中的代码片段。它将为用户设置密码installer并为用户安装授权密钥installer。此配置必须在根级别添加。与autoinstall:密钥相同的级别,不是部分的一部分autoinstall:

# set password to r00tme
chpasswd:
    expire: false
    list:
        - installer:$6$.c38i4RIqZeF4RtR$hRu2RFep/.6DziHLnRqGOEImb15JT2i.K/F9ojBkK/79zqY30Ll2/xx6QClQfdelLe.ZjpeVYfE8xBBcyLspa/
ssh_authorized_keys:
    - ssh-rsa FILLINYOUROWNKEYHERE installer

怎么运行的

当安装程序启动时,它会用来cloud-init配置安装程序环境。自动安装user-data文件实际上只是cloud-init用于配置此环境的配置。

在安装程序中,默认 cloud-init 配置installer将默认生成一个用户

   default_user:
     name: installer
     lock_passwd: false
     gecos: Ubuntu
     groups: [adm, audio, cdrom, dialout, dip, floppy, lxd, netdev, plugdev, sudo, video]
     sudo: ["ALL=(ALL) NOPASSWD:ALL"]
     shell: /usr/bin/subiquity-shell

并为installer用户分配一个随机密码

chpasswd:
    expire: false
    list:
        - installer:RANDOM

通过在自动安装文件中提供配置,它将覆盖默认配置。

另一种方法是在自动安装文件中提供用户信息。这将让您更明确地控制所创建用户的属性。

相关内容