Oracle 实例和谷歌一样,默认没有开启 ssh 密码登录功能,而且也没有提供网页 ssh,仅提供 ssh 密钥的方式建立连接,在探索后发现可以在创建实例的时候利用 cloud-init 脚本就可以了。(此方法也适合 gcp,功能和原理都是一样的)
通用型:
模糊查找,亲测有效,理论上适合大部分操作系统。
#!/bin/bash
echo root:123456789 |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 service sshd restart
debian:
精准查找,亲测 debian 10
#!/bin/bash
echo root:123456789 |sudo chpasswd root
sudo sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/g' /etc/ssh/sshd_config;
sudo sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config;
sudo service sshd restart
centos:
精准查找,亲测 centos 7
#!/bin/bash
echo root:123456789 |sudo chpasswd root
sudo sed -i 's/PermitRootLogin no/PermitRootLogin yes/g' /etc/ssh/sshd_config;
sudo sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config;
sudo service sshd restart
ubuntu:
精准查找,亲测 ubuntu 16
#!/bin/bash
echo root:123456789 |sudo chpasswd root
sudo sed -i 's/PermitRootLogin prohibit-password/PermitRootLogin yes/g' /etc/ssh/sshd_config;
sudo sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/g' /etc/ssh/sshd_config;
sudo service sshd restart
工作原理:
工作原理就是在新实例开机的时候自动执行该脚本修改 sshd_config
这个配置文件,从而达到我们的目的,其中 123456789
是我们需要修改的 root 密码,PermitRootLogin
和 PasswordAuthentication
是ssh 密码登录的关键,并且必须是 yes
值才能正常 ssh 密码登录。
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容