修改openstack镜像--支持root密码登陆

时间:2021-05-19 15:58:17

使用openstack镜像我们发现,无论是ubuntu,centos还是redhat官网提供的openstack镜像都是只支持key登陆的,如果你的需求是创建使用root密码登陆vm,那么我们可以通过对镜像进行修改,使其支持root密码登陆。

我使用guestfish修改镜像,对cloud-init的配置文件进行修改,cloud-init是专为云平台虚拟机初始化的工具(配置主机名、获取用户数据等等),步骤如下:


1、打开一个要修改的镜像(以redhat linux为例)

[root@cloud]# guestfish --rw -a rhel-server-7.4-beta-1-x86_64.qcow2 

 

Welcome to guestfish, the guestfilesystem shell for

editing virtual machinefilesystems and disk images.

 

Type: 'help' for help on commands

     'man' to read themanual

     'quit' to quit theshell


2、 运行这个镜像

><fs> run


3、列出文件系统

><fs> list-filesystems

/dev/sda1: xfs


4、挂载到根目录

><fs> mount /dev/sda1 /


5、打开cloud-init的配置文件cloud.cfg,进行修改

><fs> vi /etc/cloud/cloud.cfg


6、在cloud.cfg文件中添加

disable_root: 0

ssh_pwauth:   1

chpasswd:

  list: |

    root:redhat     <-----自定义root密码

  expire:False


7、退出guestfish

><fs> quit


8、将修改好的镜像上传openstack即可使用


注:对于ubuntu系统还要修改:

1、cloud.cfg:

disable_root: false


2、/etc/ssh/sshd_config:

#PermitRootLogin prohibit-password

PermitRootLogin yes


至此,修改好的镜像就支持root密码登陆了。