跳转到内容

Linux 指南/安全性

来自维基教科书,开放书籍,开放世界
Clipboard

待办事项

  • iptables 的前端,使防火墙配置更简单
  • 提到 SELinux、AppArmor、LSM 和其他安全计划
  • 讨论最小权限用户帐户 (LUA) 与 root,使用 su 和 sudo
  • chroot 监狱


与其他一些流行系统相比,Linux 非常安全,这得益于其 UNIX 遗产。但是,虽然感染系统很难,但并非不可能。在安全方面,偏执的思维方式通常是最合适的。此外,病毒远不是安全问题的唯一一部分。还需要考虑适当的配置以及在具有多个客户端的多用户系统中的特殊注意事项。

保持更新

[编辑 | 编辑源代码]

没有软件是完美的。几乎总是可以在任何足够复杂的软件中找到安全漏洞。因此,务必紧跟您发行版提供的安全更新。许多发行版提供更新工具来自动检查更新。您的系统可能能够自动更新许多软件包。设置自动更新通常是一个好主意。检查您的发行版是否提供安全公告邮件列表,该邮件列表将通知您重要的更新。

反病毒

[编辑 | 编辑源代码]

病毒在 Linux 上非常罕见,通常您不必担心系统会被病毒入侵。但是,您的 Linux 系统可能会充当 Windows 客户端的文件服务器或向 Windows 客户端发送电子邮件的电子邮件服务器。在这种情况下,应确保文件和电子邮件干净,以防止您的客户端感染。

Samba 能够插入流行的免费 Linux 反病毒系统 ClamAV。您的发行版可能具有为您配置此功能的工具。有关更多信息,请咨询您发行版的文档。

简单防火墙

[编辑 | 编辑源代码]

至少您应该使用一个简单的防火墙。您将在下面找到一个示例脚本,以提供一个*简单*的防火墙。我已将此脚本用作 Slackware 和 Debian 系统上更复杂防火墙方案的基础。它是一个*非常*简单的脚本,也许其他人会觉得有必要贡献更高级和更具体的用法脚本。

#!/bin/bash
# Basic script to keep the server secured

# Flush the current tables.
iptables -F

## Default policy to drop 'everything'uyuy
iptables -P INPUT DROP
iptables -P FORWARD DROP
#iptables -P OUTPUT DROP #BLOCKS ALL 'OUTBOUND' TRAFFIC

## Allow local loopback communications (localhost).
iptables -A INPUT -s 127.0.0.0/8 -d 127.0.0.0/8 -i lo -j ACCEPT

## Allow established connections with stateful connection tracking
iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

## Drop packets of unknown origin which are not TCP/SYN related.
iptables -A INPUT -m conntrack --ctstate INVALID -j DROP

## Allow offered service clients to connect to ethernet interface.
## You may need to change your interface from eth1.
# HTTPd & SSL
#iptables -A INPUT -p tcp --dport 80 -i eth1 -j ACCEPT
#iptables -A INPUT -p tcp --dport 443 -i eth1 -j ACCEPT

#end script

首先,我们刷新当前表,这基本上意味着您的规则集将要更改。然后我们建立 2 条规则来丢弃(*不是拒绝*)所有进入或通过我们的计算机转发的流量。我们希望访问互联网,因此我们创建了另外 2 条规则,第一条规则允许与我们*自行发起*的出站请求*明确关联*的流量进入我们的计算机。第二条规则负责我们的本地主机……我们的计算机可以访问我们的计算机并可以使用网络环回接口。最后两条规则允许端口 80 http 和 443 https,它们被注释掉,因此默认情况下不会打开端口。

如果您决定使用此简单脚本作为基础参考,请为此页面和主题做出贡献。我已经将此脚本存储在多个位置,每个位置都有其组织上的优缺点。我已将此文件放在 /root/ 和 /root/bin/ 以及 /etc/firewall/ 中。

华夏公益教科书