配置 iptables 以增强 Ubuntu/Debian 系统的安全性

配置 iptables 是确保服务器安全的关键步骤。iptables 是 Linux 中用于管理网络数据包的强大工具,它允许您过滤流量、限制访问并保护系统免受未经授权的访问。

为什么使用 iptables 很重要?

  • 流量过滤:允许管理进出连接。
  • 访问限制:限制对重要服务和端口的访问。
  • 防止攻击:帮助保护服务器免受各种网络攻击,如 DDoS 攻击。

前提条件

  • 运行 Ubuntu 或 Debian 的服务器:确保您拥有一个安装了 Ubuntu 或 Debian 操作系统的服务器。
  • SSH 访问:需要通过 SSH 进行配置。

基本的 iptables 命令

在开始配置之前,请了解一些基本的 iptables 命令:

  • iptables -A — 添加规则。
  • iptables -I — 插入规则。
  • iptables -D — 删除规则。
  • iptables -L — 查看规则列表。
  • iptables -F — 删除所有规则。

步骤 1:安装 iptables

在大多数 Ubuntu/Debian 系统上,iptables 默认已安装。若要检查或安装,请运行:

bash
sudo apt update && sudo apt install iptables

步骤 2:清除现有规则

在开始配置之前,建议清除现有规则:

bash
sudo iptables -F && sudo iptables -X && sudo iptables -t nat -F && sudo iptables -t nat -X && sudo iptables -t mangle -F && sudo iptables -t mangle -X

步骤 3:配置基础规则

阻止所有传入连接

首先,阻止所有传入连接,除了我们明确允许的连接:

bash
sudo iptables -P INPUT DROP && sudo iptables -P FORWARD DROP && sudo iptables -P OUTPUT ACCEPT

允许本地连接

允许本地 loopback 接口的连接:

bash
sudo iptables -A INPUT -i lo -j ACCEPT

允许已建立的连接

允许所有从内部发起的已建立连接:

bash
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT

步骤 4:允许 SSH

要远程访问服务器,需要允许 SSH 连接(端口 22):

bash
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT

步骤 5:允许其他重要服务

添加规则以允许其他必要的服务,例如 HTTP(端口 80)和 HTTPS(端口 443):

bash
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT && sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT

步骤 6:防止 DDoS 攻击

添加规则以防止 DDoS 攻击:

bash
sudo iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT && sudo iptables -A INPUT -p tcp --dport 443 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT

步骤 7:保存配置

配置完成后,保存规则,以便在重启后应用:

bash
sudo sh -c "iptables-save > /etc/iptables/rules.v4"

对于 Debian/Ubuntu,可以通过 iptables-persistent 包保存规则:

bash
sudo apt install iptables-persistent && sudo netfilter-persistent save

步骤 8:检查规则

使用以下命令检查应用的规则:

bash
sudo iptables -L -v

配置 iptables 是保护服务器的重要步骤。按照这些说明,您可以设置基本规则来过滤流量并防御网络攻击。如果遇到问题或有疑问,QCKL 支持团队随时准备帮助您。

配置 iptables 可以帮助您控制服务器的访问,保护您的数据和系统免受未经授权的操作,从而确保系统的安全性。

  • vps, ubuntu, iptables
  • 0 Users Found This Useful
這篇文章有幫助嗎?

相關文章

Корпоративная почта на базе собственного домена

Корпоративная почта на собственном домене не только придаёт профессиональный...

Установка и настройка Rclone

Rclone — это мощный инструмент командной строки для управления файлами на облачных хранилищах....

Apache vs Nginx:有什么区别,如何安装,选择哪个?

当您为项目选择Web服务器时,Apache和Nginx往往是关注的焦点。这两种服务器都非常流行,并在全球范围内广泛使用,但它们各有其特点、优势和适用领域。让我们来看看它们之间的主要区别、可安装的...

HTTP 错误:常见原因及修复方法

错误 403: Forbidden描述: 服务器理解请求,但拒绝执行。通常与访问权限有关。 原因: 文件或目录的访问权限不正确。 IP 地址限制访问。 .htaccess 配置错误。...

使用 Let's Encrypt 无控制面板进行

Let's Encrypt SSL 证书安装指南:使用 Certbot 自动化设置 Let's Encrypt 提供免费且自动化的网站加密服务。本指南将介绍如何在没有控制面板的情况下,通过...

Powered by WHMCompleteSolution