美文网首页
在Linux上使用Iptables

在Linux上使用Iptables

作者: zychen143 | 来源:发表于2017-06-12 16:59 被阅读0次

本指南将尝试解释如何在易于理解的语言中使用linux上的iptables。

概览

iptables是一个基于规则的防火墙,它将按顺序处理每个规则,直到找到匹配的规则。Todo:包括这里的例子

用法

iptables实用程序通常预先安装在您的linux发行版上,但实际上并没有运行任何规则。大多数发行版都会发现这个实用程序:

/sbin/iptables

阻止单个IP地址

您可以使用-s参数阻止IP,将10.10.10.10替换为您要阻止的地址。在这个例子中你会注意到,我们使用-I参数(或者-insert也是这样),而不是追加,因为我们要确保这个规则首先出现在任何允许规则之前。

/sbin/iptables -I INPUT -s 10.10.10.10 -j DROP

允许来自IP地址的所有流量

您可以通过使用与上述相同的命令来交替地允许来自IP地址的所有流量,但用ACCEPT替换DROP。在任何DROP规则之前,您需要确保此规则首先出现。

/sbin/iptables -A INPUT -s 10.10.10.10 -j ACCEPT

阻止所有地址的端口

您可以通过使用-dport开关并添加要阻止的服务的端口来完全阻止端口通过网络访问。在这个例子中,我们将阻止mysql端口:

/sbin/iptables -A INPUT -p tcp --dport 3306 -j DROP

允许从单个IP单个端口

您可以添加-s命令以及-dport命令来进一步将规则限制在特定端口:

/sbin/iptables -A INPUT -p tcp -s 10.10.10.10 --dport 3306 -j ACCEPT

查看当前规则

您可以使用以下命令查看当前规则:

/sbin/iptables -L

这应该给你一个类似于以下内容的输出:

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  192.168.1.1/24  anywhere            
ACCEPT     all  --  10.10.10.0/24       anywhere             
DROP       tcp  --  anywhere             anywhere            tcp dpt:ssh 
DROP       tcp  --  anywhere             anywhere            tcp dpt:mysql

当然,实际的输出会更长一些。

清除当前规则

您可以使用flush参数清除所有当前的规则。如果您需要将规则放在正确的顺序中,或者当您进行测试时,这非常有用

/sbin/iptables --flush

分配特定

虽然大多数Linux发行版都包含一种iptables形式,但其中的一些也包括使管理更容易的包装。这些“插件”通常采用初始化脚本的形式,这些脚本在启动时可以初始化iptables,尽管一些发行版还包括尝试简化常见情况的全面封装应用程序。

Gentoo

Gentoo上的iptables初始化脚本能够处理许多常见的情况。对于初学者,它允许您配置iptables在启动时加载(通常是您想要的):

rc-update add iptables default

使用init脚本,可以使用易于记忆的命令加载和清除防火墙:

/etc/init.d/iptables start
/etc/init.d/iptables stop

init脚本处理在启动/停止时持久保留当前防火墙配置的详细信息。因此,您的防火墙始终处于您离开的状态。如果需要手动保存新的规则,init脚本也可以处理这个:

/etc/init.d/iptables save

此外,您可以将防火墙还原到先前保存的状态(对于您正在尝试使用规则,现在要恢复以前的工作配置):

/etc/init.d/iptables reload

最后,init脚本可以将iptables置于“panic”模式,其中所有传入和传出的流量都被阻止。我不知道为什么这种模式是有用的,但所有的Linux防火墙似乎都有

/etc/init.d/iptables panic

警告:如果通过SSH连接到服务器,请不要启动紧急模式;你将被断开连接!您应该将iptables置于恐慌模式中的唯一时间是您身体在电脑前。

原文地址

相关文章

  • 在Linux上使用Iptables

    本指南将尝试解释如何在易于理解的语言中使用linux上的iptables。 概览 iptables是一个基于规则的...

  • iptables命令详解

    linux命令之iptables 1、iptables命令简介 iptables命令是Linux上常用的防火墙软件...

  • 强大的安全防护盾

    # Shell命令 » 硬件·内核·监测 » iptables iptables 命令是 Linux 上常用的防火...

  • iptables nat

    Linux系统中使用iptables实现nat地址转换 iptables nat 原理 同filter表一样,na...

  • Linux iptables 开放和屏蔽端口

    title: Linux iptables 开放和屏蔽端口tags: [Linux, iptables]date:...

  • 使用linux的iptables配置端口转发

    在本文中,我们将引导您在Linux中使用iptables进行端口转发。首先,您需要检查服务器上是否启用了端口转发。...

  • iptables 防火墙

    Linux System Environment iptables简介 iptables是Linux系统自带的采用...

  • 关于iptables

    什么是iptables 常见于Linux系统下应用层防火墙工具 使用场景 场景:模拟使用iptables控制并发h...

  • ip route / ip rule /iptables 配置策

    Linux 使用 ip route , ip rule , iptables 配置策略路由 要求192.168.0...

  • linux iptables的简单用法

    Iptables 是标准的 Linux防火墙应用程序,在没有硬件防火墙的情况下,使用iptables也是一种简单经...

网友评论

      本文标题:在Linux上使用Iptables

      本文链接:https://www.haomeiwen.com/subject/omglqxtx.html