在当今信息化时代,Linux服务器作为企业级应用的核心,其安全性至关重要。CentOS 7作为一款流行的Linux发行版,拥有稳定的性能和丰富的应用生态。本文将为您介绍如何通过实战脚本配置,对CentOS 7系统进行安全加固,打造坚不可摧的Linux服务器。
1. 系统更新与补丁管理
1.1 使用Yum进行系统更新
确保系统安装了最新的安全补丁和软件包,可以通过以下命令进行系统更新:
sudo yum update -y
1.2 定期检查系统更新
通过以下命令,您可以定期检查系统更新:
sudo yum check-updates
2. 关闭不必要的服务
关闭不必要的网络服务和应用程序,可以降低系统被攻击的风险。
2.1 使用systemctl关闭服务
sudo systemctl stop <服务名>
sudo systemctl disable <服务名>
2.2 查看正在运行的服务
sudo systemctl list-units --type=service
3. 设置防火墙
3.1 安装Firewalld
sudo yum install firewalld -y
3.2 启用和设置Firewalld
sudo systemctl start firewalld
sudo systemctl enable firewalld
3.3 添加防火墙规则
sudo firewall-cmd --permanent --add-port=22/tcp
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --reload
4. 设置SSH访问安全
4.1 修改SSH端口
sudo sed -i 's/^#Port 22/Port 2222/' /etc/ssh/sshd_config
sudo systemctl restart sshd
4.2 设置SSH密码认证
sudo passwd root
4.3 限制SSH登录用户
sudo usermod -d / /home/username
sudo systemctl restart sshd
5. 配置SELinux
SELinux(Security-Enhanced Linux)是一种内置于Linux内核的安全机制,可以提供更高级别的安全性。
5.1 查看SELinux状态
getenforce
5.2 设置SELinux为Enforcing模式
sudo setenforce 1
5.3 配置SELinux策略
sudo semanage port -a -t http_port_t -p tcp 80
sudo semanage port -a -t ssh_port_t -p tcp 2222
6. 配置SSH密钥认证
6.1 生成SSH密钥对
ssh-keygen -t rsa -b 4096
6.2 将公钥添加到服务器
ssh-copy-id -i ~/.ssh/id_rsa.pub username@server_ip
6.3 修改SSH配置文件
sudo sed -i 's/^#PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
sudo systemctl restart sshd
7. 安装并配置Fail2Ban
Fail2Ban是一款开源的入侵防御软件,可以自动检测并阻止暴力破解攻击。
7.1 安装Fail2Ban
sudo yum install fail2ban -y
7.2 配置Fail2Ban
sudo cp /etc/fail2ban/jail.d/sshd.conf /etc/fail2ban/jail.d/sshd-custom.conf
sudo vi /etc/fail2ban/jail.d/sshd-custom.conf
修改配置文件,根据实际情况调整参数。
7.3 启用Fail2Ban
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
总结
通过以上实战脚本配置,您可以为CentOS 7系统提供更加安全的环境。在后续的使用过程中,请持续关注系统安全动态,及时更新系统补丁和软件包,以确保Linux服务器的安全稳定运行。
