Netfilter组件

  • 内核空间,集成在linux内核中

  • 官网文档:https://netfilter.org/documentation/

  • 扩展各种网络服务的结构化底层框架

  • 内核中选取五个位置放了五个hook(勾子) function

    INPUT (input 输入)

    OUTPUT (output 输出)

    FORWARD (forward 转发)

    PREROUTING (prerouting预路由)

    POSTROUTING (postrouting后路由)

    而这五个hook function向用户开放,用户可以通过一个命令工具(iptables)向其写入规则

  • 由信息过滤表(table)组成,包含控制IP包处理的规则集(rules),规则被分组放在链(chain)上

  • 三种报文流向:

    • 流入本机:prerouting --> input-->用户空间进程
    • 流出本机:用户空间进程 -->output--> postrouting
    • 转发:prerouting --> forward --> postrouting

iptables的组成

  • iptables由五个表和五个链以及一些规则组成

  • 五个表table:filter、nat、mangle、raw、security

    • filter表:过滤规则表,根据预定义的规则过滤符合条件的数据包

    • nat表:network address translation 地址转换规则表

    • mangle:修改数据标记位规则表

    • raw:关闭NAT表上启用的连接跟踪机制,加快封包穿越防火墙速度

    • security:用于强制访问控制(MAC)网络规则,由Linux安全模块(如SELinux)实现

      优先级由高到低的顺序为:security -->raw-->mangle-->nat-->filter

  • 五个内置链chain

    INPUT (input 输入)

    OUTPUT (output 输出)

    FORWARD (forward 转发)

    PREROUTING (prerouting预路由)

    POSTROUTING (postrouting后路由)

四表

iptables的四个表iptable_filter,iptable_mangle,iptable_nat,iptable_raw,默认表是filter(没有指定表的时候就是filter表)。

  • filter 表:用来对数据包进行过滤,具体的规则要求决定如何处理一个数据包。

    对应的内核模块为:iptable_filter,其表内包括三个链:input、forward、output;

  • nat 表:nat 全称:network address translation 网络地址转换,主要用来修改数据包的 IP 地址、端口号信息。

    对应的内核模块为:iptable_nat,其表内包括三个链:prerouting、postrouting、output;

  • mangle 表:主要用来修改数据包的服务类型,生存周期,为数据包设置标记,实现流量整形、策略路由等。

    对应的内核模块为:iptable_mangle,其表内包括五个链:prerouting、postrouting、input、output、forward;

  • raw 表:主要用来决定是否对数据包进行状态跟踪。

    对应的内核模块为:iptable_raw,其表内包括两个链:output、prerouting;

表和链对应关系

数据包过滤匹配流程

IPTABLES和路由

路由功能发生的时间点

  • 报文进入本机后

    • 判断目标主机是否为本机

      • 是:INPUT
      • 否:FORWARD
  • 报文离开本机之前
    • 判断由哪个接口送往下一跳

内核中数据包的传输过程

内核中数据包的传输过程

  • 当一个数据包进入网卡时,数据包首先进入prerouting链,内核根据数据包目的IP判断是否需要转送出去
  • 如果数据包就是进入本机的,数据包就会沿着图向下移动,到达input链。数据包到达input链后,任何进程都会收到它。本机上运行的程序可以发送数据包,这些数据包经过output链,然后到达postrouting链输出
  • 如果数据包是要转发出去的,且内核允许转发,数据包就会向右移动,经过forward链,然后到达postrouting链输出

iptables规则

规则rule:根据规则的匹配条件尝试匹配报文,对匹配成功的报文根据规则定义的处理动作作出处理

  • 匹配条件:默认为与条件,同时满足

    • 基本匹配:IP,端口,TCP的Flags(SYN,ACK等)
    • 扩展匹配:通过复杂高级功能匹配
  • 处理动作:称为target,跳转目标
    • 内建处理动作:ACCEPT(允许),DROP(丢弃),REJECT(拒绝),SNAT(源nat),MARK(标记),LOG(日志)...
    • 自定义处理动作:自定义链chain,利用分类管理复杂情形
  • 规则要添加在链上,才生效;添加在自定义上不会自动生效
  • 链chain:
    • 内置链:每个内置链对应于一个钩子函数
    • 自定义链:用于对内置链进行扩展或补充,可实现更灵活的规则组织管理机制;只有Hook钩子调用自定义链时,才生效

ptables添加要点

iptables规则添加时考量点

  • 要实现哪种功能:判断添加在哪张表上
  • 报文流经的路径:判断添加在哪个链上
  • 报文的流向:判断源和目的
  • 匹配规则:业务需要

实验环境准备:

需要关闭防火墙

  • Centos7:systemctl stop firewalld.service

    ​ systemctl disable firewalld. service

  • Centos6:service iptables stop

    ​ chkconfig iptables off

iptables命令

规则格式

iptables [-t table] SUBCOMMAND chain [-m matchname [per-match-options]] -j targetname [per-target-options]

-t table

指定表 不指定-t选项,就是默认的filter表

raw, mangle, nat, [filter]默认

SUBCOMMAND:

1、链管理:

  • -N:new, 自定义一条新的规则链
  • -X-F-Z:delete,删除自定义的空的规则链,但是无法删除默认策略,也就是-P定义的策略
  • -P:Policy,设置默认策略;对filter表中的链而言,其默认策略有:
    • ACCEPT:接受
    • DROP:丢弃
  • -E:重命名自定义链;引用计数不为0的自定义链不能够被重命名,也不能被删除

2、查看:

  • -L:list, 列出指定鏈上的所有规则,本选项须置后

  • -n:numberic,以数字格式显示地址和端口号

  • -v:verbose,详细信息

    • -vv 更详细
  • -x:exactly,显示计数器结果的精确值,而非单位转换后的易读值

  • --line-numbers:显示规则的序号

    常用组合:

    • -vnL
    • -vvnxL --line-numbers
  • -S selected,以iptables-save 命令格式显示链上规则

3、规则管理:

  • -A:append,追加

  • -I:insert, 插入,要指明插入至的规则编号,默认为第一条

  • -D:delete,删除

    • (1) 指明规则序号
    • (2) 指明规则本身
  • -R:replace,替换指定链上的指定规则编号

  • -F:flush,清空指定的规则链

  • -Z:zero,置零

    iptables的每条规则都有两个计数器

    • (1) 匹配到的报文的个数
    • (2) 匹配到的所有报文的大小之和

chain

INPUT (input 输入)

OUTPUT (output 输出)

FORWARD (forward 转发)

PREROUTING (prerouting预路由)

POSTROUTING (postrouting后路由)

匹配条件

  • 基本:通用的,PARAMETERS
  • 扩展:需加载模块,MATCH EXTENTIONS

1、基本匹配条件

无需加载模块,由iptables/netfilter自行提供

  • -s, --source address[/mask][,...]:源IP地址或范围

  • -d, --destination address[/mask][,...]:目标IP地址或范围

  • -p, --protocol protocol:指定协议,可使用数字如0(all)

    • protocol:

      tcp, udp, icmp, icmpv6, udplite,esp, ah, sctp, mh or“all“

      参看:/etc/protocols

  • -i, --in-interface name:报文流入接口

    只能应用于数据报文流入环节

    只应用于INPUT、FORWARD、PREROUTING链

  • -o, --out-interface name:报文流出接口

    只能应用于数据报文流出的环节

    只应用于FORWARD、OUTPUT、POSTROUTING链

2、扩展匹配条件

需要加载扩展模块(/usr/lib64/xtables/*.so),方可生效

  • 查看帮助 man iptables-extensions
(1)隐式扩展

在使用-p选项指明了特定的协议时,无需再用-m选项指明扩展模块的扩展机制,不需要手动加载扩展模块

  • tcp协议的扩展选项

    • --source-port, --sport port[:port]:匹配报文源端口,可为端口范围

    • --destination-port,--dport port[:port]:匹配报文目标端口,可为范围

    • --tcp-flags mask comp

      mask 需检查的标志位列表,用,分隔

      ​ 例如 SYN,ACK,FIN,RST

      comp 在mask列表中必须为1的标志位列表,无指定则必须为0,用,分隔

    • --syn:用于匹配第一次握手

      相当于:--tcp-flags SYN,ACK,FIN,RST SYN

  • udp

    • --source-port, --sport port[:port]:匹配报文的源端口或端口范围
    • --destination-port,--dport port[:port]:匹配报文的目标端口或端口范围
  • icmp

    • --icmp-type

      type/code:

      ​ 0/0 echo-reply icmp应答

      ​ 8/0 echo-request icmp请求

(2)显式扩展

必须使用-m选项指明要调用的扩展模块的扩展机制,要手动加载扩展模块

[-m matchname [per-match-options]]

  • 1、multiport扩展

    以离散方式定义多端口匹配,最多指定15个端口

    • --source-ports,--sports port[,port|,port:port]...

      指定多个源端口

    • --destination-ports,--dports port[,port|,port:port]...

      指定多个目标端口

    • --ports port[,port|,port:port]...多个源或目标端口

      示例:

      iptables -A INPUT -s 172.16.0.0/16 -d 172.16.100.10 -p tcp -m multiport --dports 20:22,80 -j ACCEPT

  • 2、iprange扩展

    指明连续的(但一般不是整个网络)ip地址范围

    • --src-range from[-to] 源IP地址范围

    • --dst-range from[-to] 目标IP地址范围

      示例:

      iptables -A INPUT -d 172.16.1.100 -p tcp --dport 80 -m iprange --src-range 172.16.1.5-172.16.1.10 -j DROP

  • 3、mac扩展

    指明源MAC地址

    适用于:prerouting, forward,input 链

    • --mac-source XX:XX:XX:XX:XX:XX

      示例:

      iptables -A INPUT -s 172.16.0.100 -m mac --mac-source 00:50:56:12:34:56 -j ACCEPT

      iptables -A INPUT -s 172.16.0.100 -j REJECT

  • 4、string扩展

    对报文中的应用层数据做字符串模式匹配检测

    --algo {bm|kmp} 字符串匹配检测算法

    • bm:Boyer-Moore
    • kmp:Knuth-Pratt-Morris

    --from offset 开始偏移

    --to offset 结束偏移

    • --string pattern 要检测的字符串模式
    • --hex-string pattern要检测字符串模式,16进制格式

    示例:

    iptables -A OUTPUT -s 172.16.100.10 -d 0/0 -p tcp --sport 80 -m string --algo bm --string “google" -j REJECT

  • 5、time扩展

    根据将报文到达的时间与指定的时间范围进行匹配

    • --datestart YYYY[-MM[-DD[Thh[:mm[:ss]]]]] 日期
    • --datestop YYYY[-MM[-DD[Thh[:mm[:ss]]]]]
    • --timestart hh:mm[:ss] 时间
    • --timestop hh:mm[:ss]
      • --monthdays day[,day...] 每个月的几号
      • --weekdays day[,day...] 星期几,1 – 7 分别表示星期一到星期日

        --kerneltz:内核时区,不建议使用,CentOS7系统默认为UTC

        注意: centos6 不支持kerneltz ,--localtz指定本地时区(默认)

        示例:

        iptables -A INPUT -s 172.16.0.0/16 -d 172.16.100.10 -p tcp --dport 80 -m time --timestart 14:30 --timestop 18:30 --weekdays Sat,Sun --kerneltz -j DROP
  • 6、connlimit扩展

    根据每客户端IP做并发连接数数量匹配

    可防止Dos(Denial of Service,拒绝服务)攻击

    • --connlimit-upto #:连接的数量小于等于#时匹配

    • --connlimit-above #:连接的数量大于#时匹配

      通常分别与默认的拒绝或允许策略配合使用

      示例:

      iptables -A INPUT -d 172.16.100.10 -p tcp --dport 22 -m connlimit --connlimit-above 2 -j REJECT

  • 7、limit扩展

    基于收发报文的速率做匹配

    令牌桶过滤器

    • --limit #[/second|/minute|/hour|/day]

    • --limit-burst number

      示例:

      iptables -I INPUT -d 172.16.100.10 -p icmp --icmp-type 8 -m limit --limit 10/minute --limit-burst 5 -j ACCEPT

  • 8、state扩展

    根据”连接追踪机制“去检查连接的状态,较耗资源

    conntrack机制:追踪本机上的请求和响应之间的关系

    状态有如下几种:

    • NEW:新发出请求;连接追踪信息库中不存在此连接的相关信息条目,因此,将其识别为第一次发出的请求

    • ESTABLISHED:NEW状态之后和连接失效之前,期间所进行的通信状态

    • RELATED:新发起的,但与已有连接相关联的连接,如:ftp协议中的数据连接与命令连接之间的关系

    • INVALID:无效的连接,如flag标记不正确

    • UNTRACKED:未进行追踪的连接,如raw表中关闭追踪

    --state state

    示例:

    iptables -A INPUT -d 172.16.1.10 -p tcp -m multiport --dports 22,80 -m state --state NEW,ESTABLISHED -j ACCEPT

    iptables -A OUTPUT -s 172.16.1.10 -p tcp -m multiport --sports 22,80 -m state --state ESTABLISHED -j ACCEPT


    已经追踪到的并记录下来的连接信息库

    /proc/net/nf_conntrack

    调整连接追踪功能所能够容纳的最大连接数量

    /proc/sys/net/nf_conntrack_max

    不同的协议的连接追踪时长

    /proc/sys/net/netfilter/

    iptables的链接跟踪表最大容量为/proc/sys/net/nf_conntrack_max,各种状态的超

    时链接会从表中删除;当模板满载时,后续连接可能会超时

    解决方法两个:

    • (1) 加大nf_conntrack_max 值

      vi /etc/sysctl.conf

      net.nf_conntrack_max = 393216

      net.netfilter.nf_conntrack_max = 393216
    • (2) 降低 nf_conntrack timeout时间

      vi /etc/sysctl.conf

      net.netfilter.nf_conntrack_tcp_timeout_established = 300

      net.netfilter.nf_conntrack_tcp_timeout_time_wait = 120

      net.netfilter.nf_conntrack_tcp_timeout_close_wait = 60

      net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 120

      iptables -t nat -L -n

处理动作:

  • -j targetname [per-target-options]

    • 简单:ACCEPT,DROP
    • 扩展:REJECT:--reject-with:icmp-port-unreachable默认
      • RETURN:返回调用链
      • REDIRECT:端口重定向
      • LOG:记录日志,dmesg
      • MARK:做防火墙标记
      • DNAT:目标地址转换
      • SNAT:源地址转换
      • MASQUERADE:地址伪装

        ...
      • 自定义链:

Target:

ACCEPT, DROP

REJECT, RETURN ,LOG, SNAT, DNAT, REDIRECT, MASQUERADE,..

  • LOG:非中断target,本身不拒绝和允许,放在拒绝和允许规则前,并将日志记录在/var/log/messages系统日志中

    • --log-level level 级别: debug,info,notice, warning, error, crit, alert,emerg

    • --log-prefix prefix 日志前缀,用于区别不同的日志,最多29个字符

      示例:

      iptables -I INPUT -s 10.0.1.0/24 -p tcp -m multiport --dports 80,21,22,23 -m state --state NEW -j LOG --log-prefix "new connections: "

设置技巧

任何不允许的访问,应该在请求到达时给予拒绝

规则在链接上的次序即为其检查时的生效次序

基于上述,规则优化

  • 1 安全放行所有入站和出站的状态为ESTABLISHED状态连接
  • 2 谨慎放行入站的新请求
  • 3 有特殊目的限制访问功能,要在放行规则之前加以拒绝
  • 4 同类规则(访问同一应用),匹配范围小的放在前面,用于特殊处理
  • 5 不同类的规则(访问不同应用),匹配范围大的放在前面
  • 6 应该将那些可由一条规则能够描述的多个规则合并为一条
  • 7 设置默认策略,建议白名单(只放行特定连接)
    • 1) iptables -P,不建议
    • 2) 建议在规则的最后定义规则做为默认策略

规则有效期限

使用iptables命令定义的规则,手动删除之前,其生效期限为kernel存活期限

  • 保存规则:

    保存规则至指定的文件

    • CentOS 7

      iptables-save > /PATH/TO/SOME_RULES_FILE

    • CentOS 6

      service iptables save

      将规则覆盖保存至/etc/sysconfig/iptables文件中

  • CentOS 7 重新载入预存规则文件中规则:

    iptables-restore < /PATH/FROM/SOME_RULES_FILE

    • -n, --noflush:不清除原有规则
    • -t, --test:仅分析生成规则集,但不提交
  • CentOS 6:

    service iptables restart

    会自动从/etc/sysconfig/iptables 重新载入规则

开机自动重载规则

开机自动重载规则文件中的规则:

  • (1) 用脚本保存各iptables命令;让此脚本开机后自动运行

    /etc/rc.d/rc.local文件中添加脚本路径

    /PATH/TO/SOME_SCRIPT_FILE

  • (2) 用规则文件保存各规则,开机时自动载入此规则文件中的规则

    /etc/rc.d/rc.local文件添加

    iptables-restore < /PATH/FROM/IPTABLES_RULES_FILE

  • (3)自定义Unit File,进行iptables-restore

CentOS 7 可以安装 iptables-services 实现iptables.service

yum install iptables-services

iptables-save > /etc/sysconfig/iptables

systemctl enable iptables.service

NAT

  • NAT: network address translation

    PREROUTING,INPUT,OUTPUT,POSTROUTING

    请求报文:修改源/目标IP,由定义如何修改

    响应报文:修改源/目标IP,根据跟踪机制自动实现

  • SNAT:source NAT

    POSTROUTING, INPUT

    让本地网络中的主机通过某一特定地址访问外部网络,实现地址伪装

    请求报文:修改源IP

  • DNAT:destination NAT

    PREROUTING , OUTPUT

    把本地网络中的主机上的某服务开放给外部网络访问(发布服务和端口映射),但隐藏真实IP

    请求报文:修改目标IP

  • PNAT: port nat,端口和IP都进行修改

SNAT

nat表的target:

作用:局域网主机共享单个公网IP地址接入Internet,让公网ip帮忙转发

SNAT:固定IP

  • --to-source [ipaddr[-ipaddr]][:port[-port]]
  • --random

iptables -t nat -A POSTROUTING -s LocalNET ! -d LocalNet -j SNAT --to-source ExtIP

示例:

iptables -t nat -A POSTROUTING -s 10.0.1.0/24 ! –d 10.0.1.0/24 -j SNAT --to-source 172.18.1.6-172.18.1.9

nat表的出路由源地址为10.0.1.0/24而目的地址不是10.0.1.0/24的修改源地址为172.18.1.6-172.18.1.9

DNAT

作用:将位于企业局域网中的服务器进行发布至互联网,重新定义目标地址

  • --to-destination [ipaddr[-ipaddr]][:port[-port]]

iptables -t nat -A PREROUTING -d ExtIP -p tcp|udp --dport PORT -j DNAT --to-destination InterSeverIP[:PORT]

示例:

iptables -t nat -A PREROUTING -s 0/0 -d 172.18.100.6 -p tcp --dport 22 -j DNAT --to-destination 10.0.1.22

将目标地址为172.18.100.6:80的数据转发到10.0.1.22上

iptables -t nat -A PREROUTING -s 0/0 -d 172.18.100.6 -p tcp --dport 80 -j DNAT --to-destination 10.0.1.22:8080

REDIRECT:

NAT表

可用于:PREROUTING OUTPUT 自定义链

通过改变目标IP和端口,将接受的包转发至不同端口

  • --to-ports port[-port]

示例:

改变端口

iptables -t nat -A PREROUTING -d 172.16.100.10 -p tcp --dport 80 -j REDIRECT --to-ports 8080

总结与例子

一、查看规则集

iptables -L -nv // 加一个-n以数字形式显示IP和端口,看起来更舒服

二、配置默认规则

iptables -P INPUT DROP  // 不允许进
iptables -P FORWARD DROP // 不允许转发
iptables -P OUTPUT ACCEPT // 允许出

三、增加规则

iptables -A INPUT -s 192.168.0.0/24 -j ACCEPT
//允许源IP地址为192.168.0.0/24网段的包流进(包括所有的协议,这里也可以指定单个IP)
iptables -A INPUT -d 192.168.0.22 -j ACCEPT
//允许所有的IP到192.168.0.22的访问
iptables -A INPUT -s 59.151.98.56 -j DROP
//拒绝指定IP访问
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
//开放本机80端口
iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT
//开放本机的ICMP协议

四、删除规则

iptables -D INPUT -s 192.168.0.21 -j ACCEPT
//删除刚才建立的第一条规则
iptables -t filter -D INPUT 1

五、规则的保存

iptables -F
//清空规则缓冲区(这个操作会将上面的增加操作全部清空,若须保留建议先执行一下句:保存)
service iptables save
//将规则保存在/etc/sysconfig/iptables文件里
service iptables restart
//重启Iptables服务

最后说明一下,iptables防火墙的配置文件存放于:/etc/sysconfig/iptables

初次推荐设置

#安装 iptables-services 实现iptables.service
$ yum install iptables-services
$ iptables-save > /etc/sysconfig/iptables
$ systemctl enable iptables.service #如果有配置的话,根据需要把需要的表的链的默认设置都设置ACCEPT,并清空规则
#nat表的所有链
$ iptables -t nat -P PREROUTING ACCEPT
$ iptables -t nat -P POSTROUTING ACCEPT
$ iptables -t nat -P OUTPUT ACCEPT
$ iptables -t nat -F
$ iptables -t nat -X #mangle表的所有链
$ iptables -t mangle -P PREROUTING ACCEPT
$ iptables -t mangle -P INPUT ACCEPT
$ iptables -t mangle -P FORWARD ACCEPT
$ iptables -t mangle -P OUTPUT ACCEPT
$ iptables -t mangle -P POSTROUTING ACCEPT
$ iptables -t mangle -F
$ iptables -t mangle -X #filter表的所有链
$ iptables -P FORWARD ACCEPT
$ iptables -P INPUT ACCEPT
$ iptables -P OUTPUT ACCEPT
$ iptables -F
$ iptables -X #raw表的所有链
$ iptables -t raw -F
$ iptables -t raw -X
$ iptables -t raw -P PREROUTING ACCEPT
$ iptables -t raw -P OUTPUT ACCEPT #上面的清空一般指清空filter表的
#给filter表配置策略
#允许ssh icmp 以及主动发起的连接的相关连接
$ iptables -t filter -I INPUT -p tcp --dprot 22 -j ACCEPT
$ iptables -t filter -I INPUT -p icmp -j ACCEPT
$ iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT #这条很重要
#最后修改默认策略
$ iptables -t filter -P INPUT DROP
#保存策略
$ service iptables save

Linux软件防火墙iptables的更多相关文章

  1. [转] Linux下防火墙iptables用法规则详及其防火墙配置

    from: http://www.cnblogs.com/yi-meng/p/3213925.html 备注: 排版还不错,建议看以上的链接. iptables规则 规则--顾名思义就是规矩和原则,和 ...

  2. 【iptables】linux网络防火墙-iptables基础详解(重要)

    一:前言   防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种.无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘.而我们的任务就是需要去定义到底防 ...

  3. Linux下防火墙iptables用法规则详及其防火墙配置

    转:http://www.linuxidc.com/Linux/2012-08/67952.htm iptables规则 规则--顾名思义就是规矩和原则,和现实生活中的事情是一样的,国有国法,家有家规 ...

  4. linux下防火墙iptables原理及使用

    iptables简介 netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火 ...

  5. 转:linux关闭防火墙iptables

    ref:https://jingyan.baidu.com/article/066074d64f433ec3c21cb000.html Linux系统下面自带了防火墙iptables,iptables ...

  6. linux网络防火墙-iptables基础详解

    一:前言 防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种.无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘.而我们的任务就是需要去定义到底防火墙 ...

  7. Linux的防火墙–Iptables

    导读 Iptable已经集成在Linux 2.4及以上版本的内核中,同Windows下的众多“傻瓜”防火墙不同的是,Iptables需要用户自己定制相关规则.下面我就给大家简单介绍一下关于防火墙的基本 ...

  8. Linux的防火墙iptables配置示例

    注:内容来自网络 一.关闭防火墙 1.重启后永久性生效: 开启:chkconfig iptables on 关闭:chkconfig iptables off 2.即时生效,重启后失效: 开启:ser ...

  9. Linux之防火墙iptables

    一.检查iptables服务状态 1.首先检查iptables服务的状态 [root@bogon ~]# service iptables status iptables: Firewall is n ...

  10. linux平台下防火墙iptables原理(转)

    原文地址:http://www.cnblogs.com/ggjucheng/archive/2012/08/19/2646466.html iptables简介 netfilter/iptables( ...

随机推荐

  1. Windows 分辨率改变引起WPF的适应问题

    系统分辨率变化,全屏WPF的UI出现没更新和白底之类的现象记录. 您可以使用SystemParameters.WorkArea.最初设置MainWindow的MaxHeight. 在MainWindo ...

  2. 快速上手SpringBoot

    快速上手SpringBoot SpringBoot是用来简化Spring应用的初始化搭建以及开发过程 三个不需要,这是springboot使用mvc区别于其它框架的特点 tomcatd的端口 下一行是 ...

  3. REST开发(1)

    REST风格 REST简介 Rest(Representational State Transfer),表现形式状态转换(访问网络资源的形式) 传统风格资源描述形式 http://localhost/ ...

  4. jsp <img src="“> src 相对路径的问题

    图片所在路径 jsp所在路径 调用处 相对路径 以调用处JSP位置为参考 每一个../代表上一级  4个 正好找到到webRoot 目录拼接后 webRoot /kernel/_static/img/ ...

  5. win10输入法微软拼音被禁用

    远程桌面到win10系统后,再次回到被远程的win10,会发现输入法被禁用,无法输入汉字无法切换输入法只能使用英文输入 方法1 可以把相关的应用程序关闭后重新打开(不实用) 方法2 任务计划,micr ...

  6. Gitblit的windows安装(java编写)

    准备工作: 1.jdk(大于等于1.8版本)2.GitBlit压缩包:jdk下载地址:https://www.java.com/zh-CN/Gitblit下载地址:http://www.gitblit ...

  7. usb 2.0 request

  8. 2022年JMUCTF WP

    2022年JMUCTF WP crypto 2,Are you ok Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. ...

  9. Java8函数式编程(A)

    将行为作为数据传递 函数编程的最直接的表现,莫过于将函数作为数据自由传递,结合泛型推导能力,使代码表达能力获得飞一般的提升. Java8怎么支持函数式编程? 主要有三个核心概念: 函数接口(Funct ...

  10. Security Bulletin: IBM WebSphere Application Server is vulnerable to a remote code execution vulnerability (CVE-2023-23477)

    Skip to content     Support     DownloadsDocumentationForumsCasesMonitoringManage support account   ...