游乐游手机版
首页/网络安全/文章详情

Ubuntu操作系统下iptables防火墙应对网络入侵的完整配置与安全加固指南

时间:2026-07-18 06:59
在Ubuntu环境下,iptables是抵御网络入侵的经典利器——它本质上就是Linux内核防火墙netfilter的命令行操作界面。配置得当的话,能有效屏蔽大多数恶意流量。下面就来拆解一套比较完整的防护策略,每一步都附上实际命令,方便你直接上手。 首先,确保系统是最新的,避免因旧版本漏洞被利用。

在Ubuntu环境下,iptables是抵御网络入侵的经典利器——它本质上就是Linux内核防火墙netfilter的命令行操作界面。配置得当的话,能有效屏蔽大多数恶意流量。下面就来拆解一套比较完整的防护策略,每一步都附上实际命令,方便你直接上手。

首先,确保系统是最新的,避免因旧版本漏洞被利用。

sudo apt update && sudo apt upgrade

动手调整规则之前,最好先看看当前iptables里都有什么。用这条命令就能把现有规则、计数器、接口信息都列出来:

sudo iptables -L -n -v

接下来是关键一步:把默认策略设为DROP。这意味着,除非你明确放行,否则所有流入和转发的流量都会被丢弃。输出流量通常可以放行(ACCEPT),但根据你的安全策略也可以收紧。

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

如果你需要远程管理服务器,那就得放开SSH端口(默认22)。注意,这里用conntrack模块来追踪连接状态,只允许新建和已建立的连接进入,同时允许已建立的连接回应。

sudo iptables -A INPUT -p tcp --dport 22 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 22 -m conntrack --ctstate ESTABLISHED -j ACCEPT

如果服务器提供Web服务,HTTP(80)和HTTPS(443)端口也得放开。同样,用conntrack管理连接状态。

sudo iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 443 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT
sudo iptables -A OUTPUT -p tcp --sport 443 -m conntrack --ctstate ESTABLISHED -j ACCEPT

暴力破解攻击是常见威胁,可以利用recent模块限制单个IP的尝试频率。下面这条规则针对SSH端口,限制60秒内只允许4次新连接尝试,超过则丢弃。

sudo iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --set
sudo iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent --update --seconds 60 --hitcount 4 -j DROP

本地回环接口(lo)的流量必须放行,否则很多系统服务会出问题。

sudo iptables -A INPUT -i lo -j ACCEPT
sudo iptables -A OUTPUT -o lo -j ACCEPT

为了事后排查问题,可以把被丢弃的流量记录下来。日志前缀设为“IPTables-Dropped: ”,日志级别4(warning)。

sudo iptables -A INPUT -j LOG --log-prefix "IPTables-Dropped: " --log-level 4
sudo iptables -A FORWARD -j LOG --log-prefix "IPTables-Dropped: " --log-level 4

最后,也是最容易被忽略的一步:保存规则,防止重启后失效。Ubuntu下可以用iptables-persistent包来实现。

sudo apt install iptables-persistent
sudo netfilter-persistent sa ve
sudo netfilter-persistent reload

需要留意的是,这些规则是根据通用的安全场景设计的,实际环境可能有所不同。比如你的SSH端口改了,或者有其他特殊服务,都要相应调整。强烈建议先在测试环境里验证,确认不会把自己锁在门外,再应用到生产服务器。

来源:https://www.yisu.com/ask/17430520.html
上一篇Debian系统下Dumpcap的网络入侵检测详细操作方法指南 下一篇一文看懂Linux SFTP所有常见加密方式与安全配置详解
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
Linux下如何用记事本加密文件
网络安全 · 2026-07-18

Linux下如何用记事本加密文件

关于在Linux环境下对文本编辑器进行加密的常见疑问,核心事实非常明确:像gedit这类默认的文本编辑器本身并不提供任何内置加密功能。要想安全地编辑和保存机密内容,正确的思路是先使用外部加密工具对文件进行加密,然后再用文本编辑器打开处理。下面整理了三种主流且可靠的Linux文件加密方案,从简单到全面

Debian系统漏洞风险到底有多大全面影响与安全评估
网络安全 · 2026-07-18

Debian系统漏洞风险到底有多大全面影响与安全评估

首先明确几个关键观点:Debian系统的安全漏洞风险整体上处于可控范围,与多数主流操作系统的安全水平相当。它并非天生高危的系统——用户无需过度担忧,但也不能掉以轻心。其安全性主要依赖三大支柱:开源社区的持续维护、严格的代码审查流程,以及高效的安全更新响应机制。然而,用户自身的使用习惯与系统配置环境,

Debian环境下日志加密方法详解
网络安全 · 2026-07-18

Debian环境下日志加密方法详解

在Debian环境下为日志文件实施加密,核心目标在于保障数据安全与隐私保护——这是每位运维人员都理解的共识。那么具体该如何操作呢?下面梳理了几种生产环境中常用的实战方法,从手动加密到自动化脚本方案,覆盖不同场景,总有一款适合你。 方法一:用GnuPG(GPG)加密日志文件 这是最经典的非对称加密方式

Ubuntu系统spool文件夹解密方法及操作步骤完整教程
网络安全 · 2026-07-18

Ubuntu系统spool文件夹解密方法及操作步骤完整教程

一、解密前的准备工作 在动手解密之前,有两项核心信息必须明确:加密方式与密钥。 1 确认加密方式 首先要确定spool文件具体采用了哪种加密算法(例如AES、RSA)以及使用的工具(比如GnuPG、OpenSSL、LUKS)。判断方法并不复杂,可以从以下几个角度入手: 查看文件元数据:直接使用fi

如何用Linux Exploit发起拒绝服务攻击
网络安全 · 2026-07-18

如何用Linux Exploit发起拒绝服务攻击

聊点硬核的——Linux环境下拒绝服务攻击(DoS DDoS)的常见手段和原理。这类攻击的目标很明确:把目标系统的CPU、内存、带宽或者连接数耗个精光,让正经用户连不上服务。下面就来逐个拆解,看看攻击者常用的那些Exploit方法,以及怎么防。 1 SYN Flood攻击(传输层TCP漏洞利用)