linux禁止root用户远程登录,并修改ssh端口
前言
在创建一台新服务器以后,为了安全考虑,要修改ssh的端口为其它端口,同时禁止root用户远程登陆。
由于需要设置禁止root用户远程登陆,因此需要先创建一个普通用户,使用这个普通用户登陆以后,再使用su命令切换到root用户
创建新用户
例如,我们使用下面的命令创建一个名为jerry的用户
1 | sudo adduser jerry |
执行结果如下图所示,除了密码是必填的以外,其它的选项可以为空
创建了新用户以后,就可以使用这个用户来进行登陆了。如果不想要这个用户了,可以使用下面的命令来删除此用户
1 | sudo userdel -r jerry |
禁止root用户远程登陆以及修改端口
使用vim打开/etc/ssh/sshd_config文件后进入编辑模式
在配置文件中找到下面两项分别进行修改
1 | Port 22 # 将22修改为别的端口,例如修改成2222 |
修改完成后保存并重启ssh服务
1 | sudo systemctl restart sshd |
注意有些云服务(比如阿里云或者腾讯云)有安全组策略,需要在安全组策略里将上面修改后的端口添加到安全组中,否则将会无法登陆
测试
修改完毕后,可以测试一下用root用户进行登录
1 | ssh -p 2222 root@***.***.***.*** #注意把端口换成修改后的端口 |
从下图可以看出,root用户已经无法登陆了
这时候我们尝试使用jerry用户进行登陆
1 | ssh -p 2222 jerry@***.***.***.*** |
jerry可以远程登陆到服务器上
然后切换到root用户即可
如果担心这样做还不安全的话,也可以彻底禁止使用用户名密码登陆,改用使用密钥文件登陆的方式,有兴趣的可以自己去搜索怎么做
原文作者: 李小飞
原文链接: https://www.lixf.cc/2021/05/09/Linux-forbids-remote-login-of-root/
版权声明: 转载请注明出处(必须保留作者署名及链接)