脚本介绍

将下面代码中的第一句中的vcQGwH79I70dLRzS改为自己将要设置的密码.
否则默认root密码为vcQGwH79I70dLRzS

#切换到root
sudo -i
#从$变成#即为切换到root

脚本

创建instance时,点击add launch script,将下列代码复制进去(注意更改root密码).

#!/bin/bash
echo root:vcQGwH79I70dLRzS |sudo chpasswd root
sudo sed -i 's/^#\?PermitRootLogin.*/PermitRootLogin yes/g' /etc/ssh/sshd_config;
sudo sed -i 's/^#\?PasswordAuthentication.*/PasswordAuthentication yes/g' /etc/ssh/sshd_config;
sudo reboot

脚本-开启root密码登陆

sed -i 's/^.*PasswordAuthentication.*/PasswordAuthentication yes/g' /etc/ssh/sshd_config;
service sshd restart;
/etc/init.d/ssh restart;

备注

对于EC2,GCE等机器也可以使用.
不能添加代码的机器,可以登录进ssh,再执行上面的代码.
也可以开启root登陆.
以上代码在Debian/Ubuntu上通过测试.
其他发行版自行测试.

其他

在有些机器上开启后登陆依然提示,是因为没有删除密钥前面的判断

vim /root/.ssh/authorized_keys

删除在ssh-rsa前面的全部内容,然后保存重启