👉点击这里申请火山引擎VIP帐号,立即体验火山引擎产品>>>
我要在VeLinux上配置一个用户的公钥登录,如何使用cloud-init 和用户数据完成?
要完成配置,执行以下操作: 1.创建新用户。 2.将 SSH 公钥附加到 authorized_keys 文件。
1、使用SSH连接到实例。 2、运行以下命令,查看cloud-init是否安装,如下:
root@i-2udbbtytcx3gv6bvmhzb:~# apt list | grep cloud-init cloud-init/oldstable 20.2-2~deb10u2 all cloud-initramfs-dyn-netconf/oldstable 0.18.debian7 all cloud-initramfs-growroot/oldstable 0.18.debian7 all cloud-initramfs-rescuevol/oldstable 0.18.debian7 all
3、创建新用户,如下:
root@i-2udbbtytcx3gv6bvmhzb:~# adduser test Adding user `test' ... Adding new group `test' (1001) ... Adding new user `test' (1001) with group `test' ... Creating home directory `/home/test' ... Copying files from `/etc/skel' ... New password:
4、生成ssh所需公钥、私钥,如下:
root@iv-ybmpz656q12udbnkjbmr:~# ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: ...
5、进入ECS控制台,找到要配置的实例,依次选择右上角...-实例设置-更改自定义数据,然后将如下内容粘贴:
#cloud-config cloud_final_modules: - [users-groups,always] users: - name: test groups: [ wheel ] sudo: [ "ALL=(ALL) NOPASSWD:ALL" ] shell: /bin/bash ssh-authorized-keys: - ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAA
将name后修改为您新建的用户,将ssh—rsa后修改为您生成的公钥内容,默认为:/root/.ssh/id_rsa.pub。 6、进行测试,如下:
root@iv-ybmpz656q12udbnkjbmr:~/.ssh# ssh -i id_rsa test@192.168.xx.xx .... test@i-2udbbtytcx3gv6bvmhzb:~$