Linux系统禁止root用户SSH登录
AI摘要Kimi Chat
Root用户在linux系统中拥有至高无上的权力与地位,可以做任何你想做的事,因此若一旦被不怀好意的人暴力破解root用户的密码,服务器就会陷入危险境地。
(我的服务器:这么看得起我???)咳咳,虽然我的服务器不值得被其他人暴破,但流程还是要走一下的。阿里云的Linux服务器自带了一个可以在控制台无密码登录的admin用户,因此只要禁止root登录SSH即可。而我不太喜欢阿里云的远程连接界面,故又创了一个新用户。
禁止root用户登录的操作:
# 打开以下文件
sudo vi /etc/ssh/sshd_config
# 翻到文件最下面将这一项修改为no
PermitRootLogin no
# 重启sshd
sudo systemctl restart sshd.service
但这种方法过于简单粗暴,也直接限制了root的sftp登录,如果想让root用户仍可以登录sftp,则可以使用方法二。
# 这一项不修改
PermitRootLogin yes
# 添加下面两行
Match user root
ForceCommand internal-sftp
# 重启sshd
sudo systemctl restart sshd.service
以下操作用于新建用户:
# 新建一个用户(命名为user1)
sudo adduser user1
# 为其设置密码
sudo passwd user1
设置密码以后,便可以用该用户登录ssh,然后使用sudo su
来切换root用户,唯一的缺点就是需要再输一遍密码,以下操作可以避免之:
# 使用visudo命令打开sudoers文件
sudo visudo /etc/sudoers
# 添加一行
user1 ALL=(ALL) NOPASSWD:ALL
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 逸风亭!
评论
TwikooGiscus