Linux上iptables防火墙的基本应用教程

摘要:
http://www.vpser.net/security/linux-iptables.htmlIptables是Linux上常用的防火墙软件。接下来,vps侦探将向您介绍iptables的基本应用程序,例如安装iptables、清除iptables规则、仅打开指定端口、阻止和解封指定的ip和ip段以及删除添加的iptables。1.安装iptables防火墙(如果没有)

http://www.vpser.net/security/linux-iptables.html iptables是Linux上常用的防火墙软件,下面vps侦探给大家说一下iptables的安装、清除iptables规则、iptables只开放指定端口、iptables屏蔽指定ip、ip段及解封、删除已添加的iptables规则等iptables的基本应用。

1、安装iptables防火墙

如果没有安装iptables需要先安装,CentOS执行:

yum install iptables

Debian/Ubuntu执行:

apt-get install iptables

2、清除已有iptables规则

iptables -F
iptables -X
iptables -Z

3、开放指定的端口

#允许本地回环接口(即运行本机访问本机)
iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
# 允许已建立的或相关连的通行
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#允许所有本机向外的访问
iptables -A OUTPUT -j ACCEPT
# 允许访问22端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#允许访问80端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
#允许FTP服务的21和20端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
#如果有其他端口的话,规则也类似,稍微修改上述语句就行
#禁止其他未允许的规则访问
iptables -A INPUT -j REJECT  (注意:如果22端口未加入允许规则,SSH链接会直接断开。)
iptables -A FORWARD -j REJECT

4、屏蔽IP

#如果只是想屏蔽IP的话“3、开放指定的端口”可以直接跳过。
#屏蔽单个IP的命令是
iptables -I INPUT -s 123.45.6.7 -j DROP
#封整个段即从123.0.0.1到123.255.255.254的命令
iptables -I INPUT -s 123.0.0.0/8 -j DROP
#封IP段即从123.45.0.1到123.45.255.254的命令
iptables -I INPUT -s 124.45.0.0/16 -j DROP
#封IP段即从123.45.6.1到123.45.6.254的命令是
iptables -I INPUT -s 123.45.6.0/24 -j DROP

4、查看已添加的iptables规则

iptables -L -n

v:显示详细信息,包括每条规则的匹配包数量和匹配字节数
x:在 v 的基础上,禁止自动单位换算(K、M) vps侦探
n:只显示IP地址和端口号,不将ip解析为域名

5、删除已添加的iptables规则

将所有iptables以序号标记显示,执行:

iptables -L -n --line-numbers

比如要删除INPUT里序号为8的规则,执行:

iptables -D INPUT 8

6、iptables的开机启动及规则保存

CentOS上可能会存在安装好iptables后,iptables并不开机自启动,可以执行一下:

chkconfig --level 345 iptables on

将其加入开机启动。

CentOS上可以执行:service iptables save保存规则。

另外更需要注意的是Debian/Ubuntu上iptables是不会保存规则的。

需要按如下步骤进行,让网卡关闭是保存iptables规则,启动时加载iptables规则:

创建/etc/network/if-post-down.d/iptables 文件,添加如下内容:

#!/bin/bash
iptables-save > /etc/iptables.rules

执行:chmod +x /etc/network/if-post-down.d/iptables 添加执行权限。

创建/etc/network/if-pre-up.d/iptables 文件,添加如下内容:

#!/bin/bash
iptables-restore < /etc/iptables.rules

执行:chmod +x /etc/network/if-pre-up.d/iptables 添加执行权限。

关于更多的iptables的使用方法可以执行:iptables --help或网上搜索一下iptables参数的说明。

 
 

免责声明:文章转载自《Linux上iptables防火墙的基本应用教程》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇python打包代码做.exe文件跨域请求方式之Jsonp形式下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Shell基本命令

Linux命令行的组成结构 [root@oldboy_python ~]# [root@oldboy_python ~]# [root@oldboy_python ~]# [root@oldboy_python ~]# [root@oldboy_python ~]# Linux系统命令操作语法格式 命令 空格 参数 空格 【文件或路径】需要...

如何配置sqlserver 以允许远程连接

在尝试从远程计算机连接到 Microsoft SQL Server 2005 实例时,可能会接收到错误消息。在使用任何程序连接到 SQL Server 时都可能会发生此问题。例如,在使用 SQLCMD 实用工具连接到 SQL Server 时收到以下错误消息: Sqlcmd:错误:Microsoft SQL Native Client:建立到服务器的连...

Linux IO中BIO和DIO【转】

转自:https://blog.csdn.net/notbaron/article/details/77823158 转自: http://linuxperformance.top/index.php/archives/89/ Linux IO中BIO和DIO 作者: yanyun  时间: September 3, 2017  分类: Storage...

Windows 11和 Linux 漏洞赋予攻击者最高系统权限

微软的 Windows 10 和即将推出的 Windows 11 版本被发现存在一个新的本地提权漏洞,该漏洞允许具有低级别权限的用户访问 Windows 系统文件,进而使他们能够揭开操作系统安装密码的掩码,甚至解密私钥. CERT 协调中心 (CERT/CC) 在周一发布的漏洞说明中表示:“从 Windows 10 build 1809 开始,非管理用户...

Linux为普通用户挂载磁盘

问题 都知道mount/umount命令需要root权限 有时候希望将U盘挂载文件夹的所有者设为普通用户方便读写 解决 gnome 使用gnome的系统内置gio mount 挂载 $ gio mount -d /dev/sdb1 Mounted /dev/sdb1 at /media/ubuntu/5459-2B27 卸载 $ gio mount -u...

Linux的硬盘使用情况、挂载、SSD挂载(查看df -h不能看到的卷)

Linux的硬盘使用情况、挂载、SSD挂载(查看df -h不能看到的卷) 解决AWS 挂载、解决挂载完重启就消失等问题 linux上的盘和window的有区别,磁盘空间必须挂载在目录上,要不然没用 对与新增的硬盘、SSD固态硬盘、挂载到linux上的操作如下:  df -h         #显示目前在Linux系统上的文件系统的磁盘使用情况统计。  ls...