在当今的信息安全环境中,Linux系统因其稳定性和灵活性被广泛使用。然而,默认的Linux安装并不一定是最安全的。本文将以Centos系统为例介绍一些有效的Linux系统安全加固措施,以提高系统的安全性。

1. 更新和升级系统

确保系统始终处于最新状态是安全的基础。使用以下命令更新系统:

sudo yum update -y

2. 配置防火墙

CentOS默认使用firewalld作为防火墙工具。可以通过以下命令启动和配置防火墙:

sudo systemctl start firewalld
sudo systemctl enable firewalld

添加SSH服务并重新加载防火墙:

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

3. 禁用不必要的服务

检查并禁用未使用的系统服务,以减少攻击面。使用以下命令列出当前运行的服务:

sudo systemctl list-units --type=service --state=running

禁用不必要的服务:

sudo systemctl disable 服务名

4. 强化SSH安全

SSH是远程管理CentOS的重要工具。以下是一些强化SSH安全的建议:

  • 更改默认端口:将SSH端口更改为不常用的端口。
  • 禁用root登录:防止使用root账户直接登录。

编辑SSH配置文件 /etc/ssh/sshd_config,进行以下修改:

Port 2222  #端口改为2222,也可以是其他端口
PermitRootLogin no  #禁用root账号(重启SSH服务之前请先确认创建了其他用户,避免远程连接不上)
PasswordAuthentication no  #不允许使用密码登录(重启SSH服务之前确保生成并添加了密钥登录)

重启SSH服务以应用更改:

sudo systemctl restart sshd

详情请点击查看:Linux使用SSH密钥认证

5. 使用SELinux

SELinux是CentOS的安全模块,可以提供额外的安全层。确保SELinux处于启用状态:

sestatus

如果未启用,可以通过编辑/etc/selinux/config文件,将以下行设置为enforcing:

SELINUX=enforcing

重启系统以应用更改。

6. 定期审计和监控

利用auditd进行系统审计,监控文件和用户活动。安装auditd:

sudo yum install audit -y

启动并启用auditd服务:

sudo systemctl start auditd
sudo systemctl enable auditd

详情请点击查看:CentOS中的Auditd详解

7. 使用复杂密码和定期更换

强制用户使用复杂密码,并定期更换密码。可以使用pam模块来实现:

编辑/etc/security/pwquality.conf,设置密码复杂度:

minlen = 12
dcredit = -1
ucredit = -1
ocredit = -1
lcredit = -1

在/etc/pam.d/system-auth中确认使用pam_pwquality.so:

password required pam_pwquality.so retry=3

结论

通过实施上述措施,可以显著提高CentOS系统的安全性。安全是一项持续的任务,定期检查和更新安全策略对于保护您的系统至关重要。保持警惕,监控系统活动,以确保数据的安全和完整性。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注