CentOS8教程
  • 更新时间:2020-06-22

一、账号安全


1、禁止root远程登录,首先创建一个普通用户,然后修改系统配置禁止root登录,因为root作为系统默认的超级管理员,权限过大,日常操作使用易导致安全风险。


1.1、首先要建立一个新的登录用户。

useradd username //增加新用户,名字为username。
passwd username //设置用户密码,系统会自动小窗提醒两次,让你输入两遍新密码。


1.2、查看新建立的用户信息,因为是缺省参数创建,默认会新增一个同名用户组,当前用户默认加入同名用户组内。

id username //查看用户信息,返回uid=1000(username) gid=1000(username) 组=1000(username),说明添加成功。


1.3、使用 su 命令切换新用户登录,两种语法,带横杠线切换用户时,包含用户的身份权限和使用环境等,推荐加上。

su - username //加上 - 同时切换登录身份和登录环境为username。
su username //不加 - 仅切换登录身份为username。


1.4、最后设置禁止root远程登录。

vi /etc/ssh/sshd_config //打开SSH配置文件。
PermitRootLogin yes //找到 PermitRootLogin 将 yes 修改为 no,不允许root账号登录。
systemctl restart sshd //重启SSH,使得服务修改生效。


2、登录端口,修改默认的SSH登录端口,端口范围是 0-65535,0-1024是系统占用,我们可使用的端口是1024-65535。

vi /etc/ssh/sshd_config //打开配置文件
Port 22 //找到Port参数,去掉注释符号#,同时修改端口号。


3、设置账号无操作指定时间过期。


3.1、通过设置 TMOUT 可以针对所有登录方式的用户起作用。

vi /etc/profile //打开配置文件
export TMOUT=0 //在文件结尾添加,0为永远不超时退出,单位是秒,例如设置5分钟无操作自动退出,值为300。


3.2、通过设置sshd_config配置文件,仅针对SSH登录的用户起作用。

vi /etc/ssh/sshd_config //打开配置文件
ClientAliveCountMax 3 //服务器端发送请求后,客户端最多的无响应次数。
ClientAliveInterval 60 //超过特定时间自动终止SSH链接,单位为分钟。


二、防火墙


开启并设置防火墙开机启动,同时按需开放外部端口,例如80(http)、443(https)、3306(mysql)等。

systemctl status firewalld //查看防火墙状态
systemctl start firewalld //开启防火墙
systemctl stop firewalld //关闭防火墙
systemctl enable firewalld //设置防火墙开机自启
firewall-cmd --zone=public --list-ports //查看所有开启的端口
firewall-cmd --reload //重启防火墙
firewall-cmd --zone=public --add-port=80/tcp --permanent //开启永久80端口
firewall-cmd --zone=public --remove-port=80/tcp --permanent //删除永久80端口


三、系统更新


系统规则千万条,安全才是第一条,试试吧 在这里提醒您,我们作为系统的使用者,同时也是维护者,那么保证系统更新对于安全非常重要,CentOS 经历很多年的沉淀,系统级的安全更新足以解决绝大多数安全漏洞,我们只需要经常升级系统即可,应用层面的更新,可以根据你使用的框架或中间组件寻求对应的官方帮助。

dnf update -y