欢迎来到我的个人博客,有Python技术,自媒体,创业,APP开发问题随时讨论交流

Linux系统的基本安全设置

linux sitin 2个月前 (06-05) 108次浏览 已收录 0个评论
Linux系统的基本安全设置Linux系统的基本安全设置

保护Linux系统的安全性是系统管理员的首要任务之一。在本文中,将提供详细的步骤和示例代码,来帮助您进行基本的Linux系统安全设置,以降低潜在的威胁和风险。

更新系统

确保Linux系统处于最新状态,安装所有可用的安全更新。

使用以下命令:

# 更新包列表
sudo apt update    # 对于Ubuntu/Debian
sudo yum update    # 对于CentOS/RHEL
# 安装安全更新
sudo apt upgrade    # 对于Ubuntu/Debian
sudo yum upgrade    # 对于CentOS/RHEL

使用强密码

强密码是系统安全的第一道防线。确保用户使用足够复杂的密码。可以通过以下方式强制要求用户设置强密码:

# 安装密码策略工具
sudo apt install libpam-pwquality    # 对于Ubuntu/Debian
sudo yum install libpwquality        # 对于CentOS/RHEL
# 配置密码策略
sudo nano /etc/security/pwquality.conf

# 在文件中添加以下行来定义密码策略
minlen = 12
minclass = 3

然后,编辑PAM配置文件以应用密码策略:

# 编辑PAM配置文件
sudo nano /etc/security/pwquality.conf

# 在文件的合适位置添加以下行
password requisite pam_pwquality.so retry=3

禁用不必要的服务

检查并禁用不必要的网络服务,以降低攻击面。使用以下命令列出当前运行的服务:

# 列出当前运行的服务
sudo systemctl list-units --type=service --state=running

要禁用不需要的服务,使用以下命令:

# 禁用服务
sudo systemctl disable <service-name>

配置防火墙

使用防火墙来限制入站和出站流量,以确保只有授权的流量能够进入系统。可以使用以下命令配置防火墙:

针对Ubuntu/Debian

# 安装ufw(Uncomplicated Firewall)
sudo apt install ufw

# 启用防火墙
sudo ufw enable

# 允许SSH流量
sudo ufw allow OpenSSH

# 允许其他必要的服务或端口
sudo ufw allow <port>

针对CentOS/RHEL

# 安装firewalld
sudo yum install firewalld

# 启用并启动firewalld服务
sudo systemctl enable firewalld
sudo systemctl start firewalld

# 允许SSH流量
sudo firewall-cmd --permanent --add-service=ssh

# 允许其他必要的服务或端口
sudo firewall-cmd --permanent --add-port=<port>/tcp

配置SSH安全性

SSH是远程访问Linux系统的主要方式,因此要确保其安全性:

更改SSH默认端口

编辑SSH配置文件以更改默认端口(默认是22):

# 编辑SSH配置文件
sudo nano /etc/ssh/sshd_config

# 更改端口号
Port <new-port>

禁用root登录

在SSH配置文件中,禁用root用户登录:

# 禁用root登录
PermitRootLogin no

使用SSH密钥

使用SSH密钥对替代密码登录,提高安全性。生成SSH密钥对并将公钥复制到目标系统:

# 生成SSH密钥对(在本地系统)
ssh-keygen -t rsa

将公钥复制到目标系统:

# 复制公钥到目标系统
ssh-copy-id <username>@<remote-host>

监控系统日志

监控系统日志以及时检测潜在的问题和入侵尝试。使用以下命令查看系统日志:

# 查看系统日志
sudo cat /var/log/syslog    # 对于Ubuntu/Debian
sudo cat /var/log/messages  # 对于CentOS/RHEL

还可以使用工具如Logwatch或Fail2ban来自动监控并报告系统活动和安全事件。

配置用户权限

合理配置用户权限是系统安全的一个关键方面。确保每个用户只能访问其需要的文件和目录,并限制他们对系统的访问。

用户和组管理

  • 创建和管理用户和组:使用useraddgroupadd命令创建新用户和组,使用usermodgroupmod命令管理现有用户和组。示例:
# 创建新用户
sudo useradd newuser

# 创建新组
sudo groupadd newgroup

# 将用户添加到组
sudo usermod -aG newgroup newuser

文件和目录权限

  • 更改文件和目录权限:使用chmod命令更改文件和目录的权限,使用chown命令更改所有者和组。示例:
# 更改文件权限为只读
chmod 400 file.txt

# 更改目录权限,允许用户读、写和执行
chmod 700 mydirectory

# 更改文件的所有者和组
chown newuser:newgroup file.txt

访问控制列表(ACL)

  • 使用ACL控制访问:ACL是一种高级权限管理工具,允许更精细地控制文件和目录的访问。示例:
# 添加ACL条目,允许用户读取文件
setfacl -m u:newuser:read_data file.txt

# 查看文件的ACL设置
getfacl file.txt

启用SELinux

Security-Enhanced Linux(SELinux)是一个强制访问控制(MAC)系统,可以提供更强大的安全性。可以通过以下步骤启用SELinux:

针对CentOS/RHEL

# 安装SELinux工具
sudo yum install policycoreutils selinux-policy-targeted

# 启用SELinux并重启系统
sudo setenforce 1
sudo systemctl reboot

针对Ubuntu/Debian

# 安装SELinux工具
sudo apt install selinux-utils

# 启用SELinux并重启系统
sudo selinux-activate
sudo reboot

定期备份数据

定期备份系统数据是系统安全的重要方面。使用备份工具如rsynctar或专业备份解决方案来创建定期的系统备份。

使用rsync备份数据

# 使用rsync备份数据到远程服务器
rsync -avz /path/to/source user@remote:/path/to/backup

监控系统安全

定期监控系统安全性,以检测潜在的问题和入侵尝试。使用安全监控工具如AIDE(Advanced Intrusion Detection Environment)来检查系统文件的完整性。

安装和配置AIDE

# 安装AIDE
sudo apt install aide   # 对于Ubuntu/Debian
sudo yum install aide   # 对于CentOS/RHEL

# 初始化AIDE数据库
sudo aideinit

总结

通过执行这些进一步的Linux系统安全设置,可以进一步提高系统的安全性,降低潜在的威胁和风险。这些步骤包括配置用户权限、启用SELinux、定期备份数据和监控系统安全性。系统管理员应定期审查和更新这些设置,以确保系统保持在安全状态,并且能够快速应对潜在的威胁和问题。通过综合考虑这些安全最佳实践,可以更好地保护Linux系统免受潜在的威胁和攻击。

喜欢 (0)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址