国外的主流云计算平台为了实例的安全,在控制台只允许用户设置SSH密钥登陆并且禁止root账户登陆SSH。但很多时候,创建实例只是为了测试某一项任务所以对安全性要求不高,反而对登陆的简易程度有要求,所以写一篇文章介绍一下如何开启root远程密码登陆,此操作会大大降低实例登陆的安全性。(事实上,如果常备一个SSH登陆密钥,使用密钥登陆也是很简单的事情。)
实际操作
- 按照本博客惯例,以Centos7为默认系统
- 打开GCE控制台:https://console.cloud.google.com/compute/instances,选择需要进行操作的实例,在浏览器中打开SSH会话(Chrome会默认拦截弹出窗口,记得加入白名单)
- 打开ssh配置文件
sudo vi /etc/ssh/sshd_config
- 找到PermitRootLogin和PasswordAuthentication进行修改
# Authentication:
LoginGraceTime 120
PermitRootLogin yes //默认为no,将本行注释掉或者修改为yes即可root登陆SSH
StrictModes yes
# Change to no to disable tunnelled clear text passwords
PasswordAuthentication yes //默认为no,将本行注释掉或者修改为yes即可远程密码登陆SSH
- 设置root密码
sudo passwd root
- 重启SSH服务
sudo service sshd restart
一键脚本
- 虽然是个很简单的事情,但没有什么比几行脚本更简单的事情了
sudo yum install wget -y
wget https://resource.irain.in/03.Linux_Shell/linux_ssh_passwd_root/do.sh
sh do.sh
#脚本默认最后修改root密码,自己输入就行了,脚本默认SSH端口为22不修改
转载请标注来源