Oracle VM实例利用 cloud-init 脚本来开启SSH+密码登录教程

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
喜欢就支持以下吧
点赞11赞赏
分享
评论 抢沙发

请登录后发表评论