CentOS 创建新用户赋予 root 权限并禁止 root 登陆
需求
最近遇到了阿里云 ECS 服务器被 DDoS 攻击的问题,说明我们的服务器安全性有待提高。从 ssh 登陆方面考虑,可以给 linux 系统设置子用户,禁止 root 登陆,能够提升一定的安全性。
本文你将会学习到
- 如何给 linux 系统、CentOS 系统创建新用户,并设置密码
- 如何给 CentOS 新用户授予权限控制
- 如何禁止 root 登陆提升服务器 ssh 远程连接安全
- 如何重启 sshd 服务
- 如何查看文件权限及修改文件权限
用户管理
创建用户,设置密码
先创建一个用户,起个名字,比如
lwebapp
adduser lwebapp
为用户
lwebapp
设置密码,会触发交互,输入密码即可passwd lwebapp # 触发交互,输入密码 lwebappwd
授予 root 权限 修改
sudoers
,为新创建的用户赋予 root 权限,这样每次只需要用新用户lwebapp
登录,就能完成所有服务器操作了。sudoers
文件在/etc
目录下,首先修改下这个文件的权限为允许修改chmod 777 /etc/sudoers
然后用
vim
打开敲击
i
进入编辑模式vim /etc/sudoers
接着在
root ALL=(ALL) ALL
这句话后面换行,输入lwebapp ALL=(ALL) ALL # 为lwebapp赋予所有权限,和上面的root一样
敲击
Esc
,输入冒号:
进入 vim 命令模式,再输入wq
,敲击Enter
保存退出保存完文件再把文件权限设置回来
chmod 444 /etc/sudoers
禁止 root 登入 因为有了新用户,就把 root 用户登陆的权限给禁止掉,这样黑客就没办法通过破解 root 登陆才操作服务器,至少我们的新用户名变了,给黑客攻击增加了一层难度
找到并编辑
sshd_config
文件vim /etc/ssh/sshd_config
找到
PermitRootLogin yes
,把yes
改成no
,意思就是不允许 root 账户登陆PermitRootLogin no
重启 sshd 最后重启 sshd 才能生效
systemctl restart sshd.service
扩展学习
文件权限
查看文件权限
stat -c '%A %a %n' *
让某个文件夹内所有文件都有 777 权限
chmod 777 -R ./webapps
vim 基本操作
打开一个文件
vim file.txt
进入编辑模式
敲击i
,终端界面底部显示-- INSERT --
即为编辑模式进入命令模式
输入:
,终端界面底部显示:
和光标退出编辑模式或者命令模式
敲击Esc
保存退出
命令模式下,输入wq
,敲击确定Enter
即完成保存退出强制退出
命令模式下,输入q!
,敲击确定Enter
即完成强制退出
sshd 服务
查看 sshd 服务状态
systemctl status sshd.service
会显示一系列服务状态,比如
running
就表示是启动成功的状态启动 sshd 服务
systemctl start sshd.service
重启 sshd 服务
systemctl restart sshd.service
设置为开机启动
systemctl enable sshd.service
评论