14个Linux系统安全小妙招,总有一招用的上!

原创
ithorizon 6个月前 (10-17) 阅读数 40 #Linux

14个Linux系统平安小妙招,总有一招用的上!

在维护Linux系统的平安方面,有很多小技巧和最佳实践可以帮助我们节约系统的平安性。以下是一些实用的Linux系统平安小妙招,总有一招会对你有所帮助。

1. 使用强密码策略

确保所有用户账户都使用强密码。强密码应该包含大小写字母、数字和特殊字符,并且长度至少为8个字符。可以使用以下命令来检查密码策略:

bash

cat /etc/login.defs | grep -i 'PASSWORD_MIN_LEN'

如果发现密码长度不够,可以修改`/etc/login.defs`文件中的`PASSWORD_MIN_LEN`值。

2. 定期更新系统

保持系统软件的更新是防止平安漏洞的关键。可以使用以下命令来更新系统:

bash

sudo apt-get update

sudo apt-get upgrade

对于Red Hat系发行版,可以使用:

bash

sudo yum update

3. 安装平安软件包

安装一些平安相关的软件包,如`fail2ban`和`unbound`等,可以帮助越来越系统平安。

bash

sudo apt-get install fail2ban unbound

4. 使用SELinux

SELinux(平安越来越型Linux)可以提供更高级别的平安保护。启用SELinux可以通过编辑`/etc/selinux/config`文件来实现:

bash

sudo vi /etc/selinux/config

将`SELINUX=disabled`改为`SELINUX=enforcing`,然后重启系统。

5. 局限SSH访问

只允许特定的IP地址或IP段通过SSH访问服务器。编辑`/etc/ssh/sshd_config`文件:

bash

sudo vi /etc/ssh/sshd_config

添加以下行:

AllowUsers username

AllowGroups groupname

或者使用`AllowUsers`和`AllowGroups`来指定允许访问的用户和组。

6. 禁用不必要的端口

关闭不必要的网络端口可以缩减攻击面。可以使用`iptables`或`firewalld`来管理端口。

bash

sudo iptables -A INPUT -p tcp --dport 80 -j DROP

对于使用`firewalld`的系统,可以使用以下命令:

bash

sudo firewall-cmd --permanent --add-port=80/tcp

sudo firewall-cmd --reload

7. 使用公钥认证

使用SSH密钥对进行认证比使用密码更平安。生成SSH密钥对:

bash

ssh-keygen -t rsa -b 2048

然后将公钥添加到远程服务器的`~/.ssh/authorized_keys`文件中。

8. 使用Fail2Ban自动防御暴力破解

Fail2Ban可以监控登录尝试并自动阻止连续落败的登录尝试。配置Fail2Ban:

bash

sudo vi /etc/fail2ban/jail.conf

添加或修改以下行:

enabled = true

filter = sshd

logpath = /var/log/auth.log

maxretry = 3

findtime = 600

bantime = 3600

9. 使用AppArmor越来越进程平安

AppArmor是一种平安模块,可以局限进程访问特定的文件和系统资源。为Apache服务器启用AppArmor:

bash

sudo vi /etc/apparmor.d/apache2

添加以下行:

/profile /usr/sbin/apache2 flags=(root) /usr/sbin/apache2

然后重新加载AppArmor:

bash

sudo apparmor_parser -R /etc/apparmor.d/usr/sbin/apache2

10. 定期备份系统

定期备份系统数据是防止数据丢失的重要措施。可以使用`rsync`或`tar`等工具进行备份。

bash

sudo rsync -a /var/www /backup/

或者:

bash

sudo tar -czvf /backup/system_backup_$(date +%Y%m%d%H%M%S).tar.gz /var/www

11. 使用systemd-cron越来越定时任务平安性

systemd-cron提供了一种更平安的方法来设置定时任务。创建一个`@reboot`服务:

bash

sudo vi /etc/systemd/system/reboot.service

添加以下内容:

[Unit]

Description=Reboot service

[Service]

ExecStart=/usr/bin/some_command

[Install]

WantedBy=multi-user.target

然后启用并启动服务:

bash

sudo systemctl enable reboot.service

sudo systemctl start reboot.service

12. 使用ACL保护

本文由IT视界版权所有,禁止未经同意的情况下转发

文章标签: Linux


热门