首页 > 系统相关 >iptables 正常用法

iptables 正常用法

时间:2023-10-17 09:02:00浏览次数:30  
标签:iptables -- 端口 ACCEPT 用法 正常 规则 INPUT

#!/bin/bash
ip1=${group_host1}
ip2=${group_host2}
ip3=${group_host3}
ip4=${group_host4}
ip5=${group_host5}

iptables -F #清空所有的防火墙规则
iptables -X #删除用户自定义的空链
iptables -Z #清空计数
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -P INPUT DROP #配置默认的不让进
iptables -P FORWARD DROP #默认的不允许转发
iptables -P OUTPUT ACCEPT #默认的可以出去

iptables -A INPUT -p all -s $ip1 -j ACCEPT #允许机房内网机器可以访问
iptables -A INPUT -p all -s $ip2 -j ACCEPT #允许机房内网机器可以访问
iptables -A INPUT -p all -s $ip3 -j ACCEPT #允许机房内网机器可以访问
iptables -A INPUT -p all -s $ip4 -j ACCEPT #允许机房内网机器可以访问
iptables -A INPUT -p all -s $ip5 -j ACCEPT #允许机房内网机器可以访问
####[console 组件所在的机器配置,多配置下面几行]
iptables -A INPUT -p tcp --dport 80 -j ACCEPT #开启80端口,因为web对外都是这个端口
iptables -A INPUT -p tcp --dport 443 -j ACCEPT #开启443端口,https端口
iptables -A INPUT -p tcp --dport 5511 -j ACCEPT #开启5511端口,命令通道端口
iptables -A INPUT -p tcp --dport 8820 -j ACCEPT #开启8820端口,数据上报通道端口
iptables -A INPUT -p tcp --dport 8099 -j ACCEPT #开启8099端口,
iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT #允许被ping
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT #
cp /etc/sysconfig/iptables /etc/sysconfig/iptables.bak
iptables-save > /etc/sysconfig/iptables

 

各参数的含义为:

-L 表示查看当前表的所有规则,默认查看的是 filter 表,如果要查看 nat 表,可以加上 -t nat 参数。
-n 表示不对 IP 地址进行反查,加上这个参数显示速度将会加快。
-v 表


 删除某一条ip的端口
iptables -A INPUT -p tcp --dport 88 -s 192.168.223.134 -j DROP

iptables -A INPUT -s 192.168.1.5 -j DROP
//所有入站流量全部丢弃,包括SSH请求


iptables -A INPUT -j DROP
//所有入站流量全部丢弃,包括SSH请求

iptables -A OUTPUT -j DROP *//所有出站流量全部丢弃.

-A在指定链的末尾添加(append)一条新的规则
-j代表指定你要操作的动作


iptables -I INPUT -j DROP
iptables -I OUTPUT -j DROP

-I代表插入到开头

上述两条命令一旦执行,所有流量无法进来,所有流量无法出去,为断网状态

 

 

 

在修改规则时需要使用-R参数。
例如:把添加在第 6 行规则的 DROP 修改为 ACCEPT
 iptables -R INPUT 6 -s 192.168.1.9 -j ACCEPT
显示行数 iptables -nL --line-number

4) 删除规则
删除规则有两种方法,但都必须使用 -D 参数。
例如:删除添加的第 6 行的规则
[root@liangxu ~]# iptables -D INPUT 6 -s 194.168.1.5 -j ACCEPT
or
[root@liangxu ~]# iptables -D INPUT 6

默认的 iptables 防火墙规则会立刻生效,但如果不保存,
当计算机重启后所有的规则都会丢失,所以对防火墙规则进行及时保存的操作是非常必要的。
CentOS 7 系统中防火墙规则默认保存在 /etc/sysconfig/iptables 文件中,
使用 iptables-save 将规则保存至该文件中可以实现保存防火墙规则的作用

即:
保存在默认文件夹中(保存防火墙规则): [root@liangxu ~]# iptables-save > /etc/sysconfig/iptables
保存在其他位置(备份防火墙规则): [root@liangxu ~]# iptables-save > 文件名称


列出nat表的规则内容,命令如下:
[root@liangxu ~]# iptables-save -t nat

iptables-restore命令批量导入
iptables-restore 命令可以批量导入Linux防火墙规则,同时也需要结合重定向输入来指定备份文件的位置。
[root@liangxu ~]# iptables-restore < 文件名称

注意,导入的文件必须是使用 iptables-save工具导出来的才可以。 也就是说格式只支持iptab-save的格式

 

traceroute 做ip和端口测试(需要在root下执行)
探测192.168.1.1的TCP22端口是否能通
traceroute -n -T 192.168.1.2 -p 9100
用法:traceroute [参数] [参数] ... 主机IP
-4 使用IPv4地址
-6 使用IPv6地址
-I 使用ICMP来追踪路由
-T 指定TCP格式,默认为UDP
-n 不解析成域名
-p 指定目的地址的端口号
-U 指定UDP格式
-s 指定源地址
-w 等待时间,等待超时的时间
-q 每个跃点的探测数,也就是发包个数,默认为3

 

标签:iptables,--,端口,ACCEPT,用法,正常,规则,INPUT
From: https://www.cnblogs.com/zpzp/p/17768851.html

相关文章

  • SQL server CONVERT()函数关于data用法
    CONVERT()函数是把日期转换为新数据类型的通用函数。CONVERT()函数可以用不同的格式显示日期/时间数据。语法:CONVERT(data_type(length),data_to_be_converted,style)       data_type(length) 规定目标数据类型(带有可选的长度)。data_to_be_converte......
  • jq工具及其常用用法
    近来在工作中处理JSON处理较多,深入研究了一下jq,之前对jq的使用一直停留在JSON数据格式化的层面,实际它的能力远不止于此。在处理JSON数据时,我们经常需要在命令行中进行过滤、查询和编辑的操作。jq是一个强大的命令行JSON处理工具,它可以让我们轻松地对JSON数据进行各种操作。本文......
  • linux的expect用法,用来跳过窗口交互性
    expect的核心是spawnexpectsendset spawn调用要执行的命令expect等待命令提示信息的出现,也就是捕捉用户输入的提示:send发送需要交互的值,替代了用户手动输入内容set设置变量值interact执行完成后保持交互状态,把控制权交给控制台,这个时候就可以手工操作了。如果没有这一句登......
  • iptables学习
    一、组成iptables是一种数据包过滤系统由netfilter(内核态)和iptables(用户态)组成工作在网络层,针对IP数据包。体现在对包内的IP地址、端口等信息的处理上二、iptables/netfilter关系1.netfilter:属于“内核态”(KernelSpace,又称为内核空间)的防火墙功能体系是内核的一部......
  • Python 中 sys.argv 用法详解
    一、Pythonsys模块“sys”是“system”,是一个系统模块,该模块提供了一些接口,用户访问python解释器自身使用和维护的变量,同时模块中还提供了一些函数,而我们今天要讲解的argv就是其中一个函数。二、sys.argv上一篇文章我们讲到了引用模块,这里sys就相当于一个模块,而argv就是......
  • *【学习笔记】(7) 线段树及高级用法
    一.普通线段树线段树(SegmentTree)几乎是算法竞赛最常用的数据结构了,它主要用于维护区间信息(要求满足结合律)。与树状数组相比,它可以实现\(O(logn)\)的区间修改,还可以同时支持多种操作(加、乘),更具通用性。接下来我们用这道模板题为例,看看线段树是怎么维护区间和这一信息的。P33......
  • string用法合集
    \(string\)用法:使用索引访问:strings="123123123";则\(s[0]=1,s[1]=2\cdots\)。可以直接用运算符比较:strings1="asd";strings2="dsa";returns1<s2;//按字典序来,结果应该返回的是true字符串排序:strings="1b3rdc871yvbv";so......
  • #Python中 (map、filter、reduce)这几个内置方法的用法
    1、map 映射l=[1,2,3,4,5]res=map(lambdax:x**2,l)print(list(res))>>>[1,4,9,16,25]注:此时的res必须使用list(res)否则只会返回一个对象 2、filter过滤l=[1,2,3,4,5]res=filter(lambdax:x>3,l)print(list(res))>>>[4......
  • Sqoop不能正常导出文件到Mysql数据库的问题解决
    之前在使用sqoop输入以下命令时bin/sqoopexport\--connectjdbc:mysql://node1:3306/journal\--usernameroot\--password123456\--tabletop_courses_by_traffic\--export-dir/user/hive/warehouse/journal.db/top_courses_by_traffic--input-fields-terminated-......
  • PHP命令空间namespace及use的用法实践总结
    使用namespace的目的:团队合作项目时,避免与团队其它成员新建的类发生冲突;个人负责项目时,避免前后新建的类发生冲突; 据个人理解,用到所需要的类时,需要先require或include引入,所以会发生类重定义的错误的前提是:两个相同命名的类都有被引入。目前有些php框架会自动加载(即include)所......