首页 > 代码库 > Linux(十)___iptables防火墙

Linux(十)___iptables防火墙

一、防火墙的作用

技术分享

三、防火墙的分类

技术分享

 

三、iptables基本语法:

技术分享

 表:

技术分享

常用filter,nat用于地址映射转换。

 

配置文件:

/etc/sysconfig/iptables

过滤表信息

技术分享

 

查看iptables状态

service iptables status

 

命令(注意参数都要大写):

-L:查看规则

iptables -L  查看策略信息

iptables -L -n  按地址信息查看

iptables -L -n --line-number  显示行号

-P:修改默认规则

iptables -P INPUT DROP     为链设置默认的target(可用的是禁止DROP和允许ACCEPT)作为最后一条规则被执行

iptables -L   可以看见INPUT的策略改变

技术分享

但是这种配置只是临时的,在配置文件中并不会改变

 

关于chain

INPUT  从外面到主机

FORWARD 针对其他设备,作转向

OUTPUT     从主机出去

 

-A:追加规则

技术分享

-F:清空规则

技术分享

最好不要用

-D:删除规则   -R:修改规则

技术分享

 

匹配条件:

技术分享

1.按网络接口编程

技术分享

我们执行第一条限制流出,不允许当前主机访问外围任何机器,当然外面机器也无法访问主机:

iptables -A OUTPUT -o eno16777736 -j DROP

技术分享

这时putty远程登录被禁止,ping 操作都不通。

 

我们再把它删掉:

技术分享

 

2.按地址匹配

技术分享

 

 3.按协议类型匹配

技术分享

 4.按端口匹配

技术分享

 

首先查找是否有远程连接工具telnet

rpm -qa |grep telnet    一般linux好像不默认安装

yum install telnet   

yum install telnet-server     

安装后就可以使用:

在putty中: 

telnet 192.168.8.129 22

技术分享

现在可以正常访问22端口

iptables -A INPUT -s 192.168.8.1 -p tcp --dport 22 -j DROP

这样指定的远程设备就不能访问22端口

 

80端口的限制:

首先安装web服务器httpd

yum install httpd

安装完成后我们可以看80端口的进程、状态信息

ps -ef |grep httpd

netstat -apn |grep 80

 

在浏览器中访问服务器ip可以看见测试页面

技术分享

这时我们对指定ip禁止访问80端口

iptables -A INPUT -s 172.********  -p tcp --dport 80 -j DROP

 

处理方式:

ACCEPT

技术分享

DROP

 技术分享

 

规则的匹配方式

技术分享

 

 如果想要永久将规则生效:

1.在/etc/sysconfig/iptables中设置

2.用service iptables save 将目前命令的设置保存到文件当中

 

 

Linux(十)___iptables防火墙