共计 1549 个字符,预计需要花费 4 分钟才能阅读完成。
装置 CentOS 8 / RHEL 8 服务器后,十分有必要做一些平安设置,以避免未经受权的拜访和入侵。
1) 配置防火墙
默认状况下,Centso8 / RHEL 8 零碎自带 firewalld 防火墙,启动并启用服务
$ sudo systemctl start firewalld
$ sudo systemctl enable firewalld
查看防火墙容许的服务
$ sudo firewall-cmd --list all
关上防火墙的端口,比方 443 端口,应用以下命令
$ sudo firewall-cmd --add-port=443/tcp --zone=public --permanent
To allow a service e.g ssh , use the command:
容许一个服务,比方 ssh,应用以下命令
$ sudo firewall-cmd --add-service=ssh --zone=public --permanent
要删除端口和服务,请别离应用 remove-port 和 remove-service 选项
为使更改失效,从新加载防火墙
$ sudo firewall-cmd --reload
2) 禁用未应用 / 不良服务
通常倡议敞开服务器上不应用或不必要的服务。这是因为运行的服务数量越多,零碎上凋谢的端口数量就越多,攻击者就能够利用这些端口进入您的零碎。此外,不要应用旧的和不平安的服务,比方 telnet(它发送纯文本数据)
最佳平安实际倡议禁用未应用的服务,并革除零碎上运行的所有不平安服务。您能够应用 nmap 工具 扫描您的零碎,并查看哪些端口是凋谢的和正在被监听。
3) 爱护重要文件
锁定重要文件以避免意外删除或编辑至关重要,比方:/etc/passwd 和 /etc/gshadow 文件,为了使文件不变(即避免批改或意外删除)应用 chattr 命令,如下所示:
$ sudo chattr +i /etc/passwd
$ sudo chattr +i /etc/shadow
这确保黑客不能更改任何或删除用户的明码导致回绝登录零碎。
4) 设置 SSH
SSH 协定是一种罕用的近程登录协定,默认状况下,该协定有可能被黑客利用的固有弱点。
默认状况下,SSH 容许 root 用户近程登录。这是一个潜在的破绽,如果黑客取得了你零碎的 root 明码,那么你的服务器只能靠菩萨保佑了。为了避免这种状况,倡议回绝 root 近程登录,创立具备 sudo 特权的惯例用户登录零碎。
批改 SSH 配置文件 /etc/ssh/sshd_config 禁用 root 近程登录
PermitRootLogin no
另一种爱护 SSH 的办法是应用 SSH 密钥设置 SSH 无明码身份验证。
首先,生成密钥对,如下所示:
$ ssh-keygen
这会生成一对公钥和私钥,公钥复制到近程零碎或服务器,私钥保留于客户机上。
接下来,批改 /etc/ssh/sshd_config 配置文件,更改如下参数
PasswordAuthentication no
重启 SSH 服务,以使更改失效
$ sudo systemctl restart sshd
5 ) 限度明码尝试次数
为了进一步增强服务器,能够思考在通过 SSH 登录时限度明码尝试次数,以避免暴力攻打。
批改 /etc/ssh/sshd_config 配置文件,更改如下参数
MaxAuthTries 3
6) 配置入侵进攻零碎 (IPS)
Fail2ban 是一个收费开源的入侵进攻零碎,它通过在肯定次数的登录尝试后禁止 IP 地址来爱护服务器免受暴力攻打,一旦被阻止,歹意或未经受权的用户甚至不能发动 SSH 登录尝试。
7) 定期更新服务器
确保您的服务器取得最新的性能和安全更新,这对于解决现有的平安问题至关重要。
我的开源我的项目
- course-tencent-cloud(酷瓜云课堂 – gitee 仓库)
- course-tencent-cloud(酷瓜云课堂 – github 仓库)