博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux 防火墙软件(iptables)
阅读量:7075 次
发布时间:2019-06-28

本文共 2450 字,大约阅读时间需要 8 分钟。

hot3.png

学前了解:

什么是防火墙?

    介于计算机和它所连接的网络之间的软件。
防火墙的作用?
    加强系统和网路的安全,防止攻击,对端口扫描,禁止某类服务、协议……
防火墙的分类?
    软件防火墙和硬件防火墙

四张表 ;  

filter 包过滤
    INPUT  OUTPUT  FORWARD
nat 网络地址转换 network address translation   允许一个内网地址块,通过NAT转换成公网IP,实现对公网的访问,解决IP地址不够的问题
    PREROUTING POSTROUTING  OUTPUT
mangle   可以对数据包进行修改,以实现特殊的应用,比如set mark(设置标志位)
  TTL (生存时间)   TOS (type of services)  
    INPUT  OUTPUT  FORWARD  PREROUTING POSTROUTING  
raw  对原始数据包的处理
        PREROUTING OUTPUT   # ??
 
五个链:
INPUT  网络数据包流向服务器
OUTPUT 网络数据包流出服务器
FORWARD  网络数据包经过服务器路由
PREROUTING  网络数据包到达服务器时可以被修改
POSTROUTING 网络数据包在马上要从服务器发出时可以被修改

1.iptables 常用参数

    -t    指定表
    -L     list
    -S, --list-rules
    -n    以数值显示
    -v    显示统计数据,与-L结合使用
    -A    增加一条新的规则,默认是在最后追加
    -D    删除规则
    -I    增加一条新的规则,但是是加上最前面
    -p    小写p 后接协议
    -P    大写P 定义默认策略
    -j    后接动作
    -s    source源地址
    -d    destionation 目地地址
    -i    in-interface  后接网卡设备,表示进入网卡   
    -o    out-interface 后接网卡设备,表示出去网卡
    --sport    源端口
    --dport    目标端口
 
    -F    清空链,删除链上所有的规则
    -X    删除自定义链
    -Z    将所有表的所有链的字节和数据包计数器清零     
 
    动作的类型
    ACCEPT    允许
    DROP    丢弃
    REJECT    拒绝,与DROP的区别是,还要返回一个错误信息
    SNAT    源地址转换
    DNAT    目标地址转换
    MASQUERADE  IP地址伪装 使用NAT转换成外网IP,也属于SNAT;区别是SNAT要手动指向转换的IP地址,是固定的;MASQUERADE是动态自动转换,用于外网IP不固定的情况(pppoe拔号)

2.常用例题:

2.1  显示filter 表格的数字编号 这里有利于使用iptables -D INPUT number 进行删除 

[root@openvpn-client named]# iptables -t filter -L --line-numbers   显示 filter 表格的数字编号 这里有利于使用iptables -D INPUT number 进行删除  等价于 iptables -L --line-numbers

Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)

num  target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)

num  target     prot opt source               destination

2.2. 禁止ping

[root@openvpn-client named]# iptables -t filter -A INPUT -p icmp -j DROP

验证:

[root ~]# ping 192.168.119.129

PING 192.168.119.129 (192.168.119.129) 56(84) bytes of data.
^C
--- 192.168.119.129 ping statistics ---
3 packets transmitted, 0 received, 100% packet loss, time 2102ms

2.3.只允许192.168.119.128 能ping 通我

1.[root@openvpn-client named]# iptables -t filter -A INPUT -p icmp -j DROP

2.[root@openvpn-client named]# iptables -t filter -I INPUT -p icmp -s 192.168.119.1128 -j ACCEPT

这样能互相ping提

2.4端口打开(服务端):

iptables -t nat -I PREROUTING -d 192.168.242.129 -p tcp --dport 6020 -j DNAT --to 172.16.10.14:22

iptables -t nat -I POSTROUTING -d 172.16.10.14 -p tcp --dport 22 -j SNAT --to 192.168.242.129

 

vim /etc/sysctl.conf

 net,ipv4.ip_forward =1

2.5内网的客户机能上外网(客户端和服务端都要打开):

  iptables -t nat -I PREROUTING -s 172.16.10.14 /24  -j DNAT --to 192.168.119.128

  iptables -t nat -I POSTROUTING -s 172.16.10.14 -o  -j SNAT --to 192.168.242.129

 

 

 

转载于:https://my.oschina.net/hdlp520/blog/760320

你可能感兴趣的文章
Java+Windows+ffmpeg实现视频转换
查看>>
JAVA实现发送电子邮件
查看>>
极简反传(BP)神经网络
查看>>
阿里巴巴面试题集合
查看>>
Android视频直播解决方案(rstp、udp)
查看>>
HTML5实战与剖析之媒体元素(6、视频实例)
查看>>
NTFS For Mac 的特点有哪些
查看>>
新技能,利用Reflector来修改dll引用
查看>>
Java编程的逻辑 (1) - 数据和变量
查看>>
我的屌丝giser成长记-研一篇(下)
查看>>
raft 分布式协议 -- mongodb
查看>>
[TypeScript] Using Lodash in TypeScript with Typings and SystemJS
查看>>
ASP.Net MVC开发基础学习笔记(1):走向MVC模式
查看>>
虚函数可不可以是内联函数
查看>>
据说看完这21个故事的人,30岁前都成了亿万富翁
查看>>
HDOJ-4505 小Q系列故事——电梯里的爱情
查看>>
【转】Navigation Drawer(导航抽屉)
查看>>
Linux Shell常用技巧(十)
查看>>
【从零之三(更)】自定义类中调用讯飞语音包错误解决办法
查看>>
【源代码】LinkedHashMap源代码剖析
查看>>