LinuxCast学习笔记三十IPtable_basic
2014-03-17 21:53
561 查看
常见的访问控制包括:哪些IP可以访问服务器,可以使用哪些协议,哪些接口,是否需要对数据包进行修改等.如果服务器受到某IP攻击,可以禁止该IP的访问.
Linux内核通过netfilter模块实现网络访问控制,IPtable程序对netfilter进行控制管理
netfilter支持通过以下方式对数据包进行分类:
源IP地址
目标IP地址
使用接口
使用协议
端口号
连接状态(new,establish,related,invalid)
常用功能:
作为服务器使用
过滤到本机的流量 input链 filter表
过滤到本机发出的流量 output链,filter表
作为路由器使用:
过滤转发的流量: forward链,filter表
对转发数据的源 目标IP进行修改(NAT)Prerouting或Postrouting,nat表.
IPtable通过规则对数据进行访问控制.一个规则使用一行配置并按顺序排列
通过iptables命令创建一个规则
iptables–t filter –A INPUT –s 192.168.1.1 –j DROP
由表\链\匹配属性\配置后的动作进行
通过iptables –L可以查看当前系统现配置的规则
插入规则
开启22号端口命令
iptables–I INPUT 1 –p tcp –dport 22 –j ACCEPT
设置好后可以查看到22号端口自动换成了协议信息.
删除规则:
iptables–D INPUT 3
iptables–D INPUT –s 192.168.1.2 –j DROP
删除所有规则:
iptables–F
匹配参数
基于IP地址
-s192.168.1.1
-d10.0.0.1
基于接口
-i eth0
-o eth1
排除参数
-s “!”192.168.1.0/24
基于协议及端口
-p tcp–dport 23
-p udp–sport 53
-p icmp
当使用Linux作为跌幅设备使用的时候,可以通过定义forword规则进行转发控制
iptables–A FORWARD –s 102.168.1.0/24 –d 10.1.1.0/24 –j DROP
NAT网络地址转换用于对数据包的IP地址进行修改
SNAT 源地址转换,伪装内部地址(常用的NAT)
DNAT 目标地址转换,通常用于跳转
通过NAT进行跳转
iptables–t nat –A PREROUTING –p tcp –dport 80 –j DNAT –to0dest 192.168.1.10
通过NAT对出向数据进行跳转
iptables–t nat –A OUTPUT –p tcp –dport 80 –j DNAT –to-dest 192.168.1.100:8080
通过NAT对数据流进行伪装
(将内部地址伪装为一个外部公网IP地址)
iptables–t nat –A POSTROUTING –o eth0 –j MASQUERADE
通过NAT隐藏源IP地址
iptables–t nat –A POSTROUTING –j SNAT –to-source 1.2.3.4
iptable添加命令只是写入内存中,要永久有效需要在/etc/sysconfig/iptables
通过命令service iptablessave,使更改永久有效.
远程管理最好先创建允许自身ssh的规则.
Linux内核通过netfilter模块实现网络访问控制,IPtable程序对netfilter进行控制管理
netfilter支持通过以下方式对数据包进行分类:
源IP地址
目标IP地址
使用接口
使用协议
端口号
连接状态(new,establish,related,invalid)
常用功能:
作为服务器使用
过滤到本机的流量 input链 filter表
过滤到本机发出的流量 output链,filter表
作为路由器使用:
过滤转发的流量: forward链,filter表
对转发数据的源 目标IP进行修改(NAT)Prerouting或Postrouting,nat表.
IPtable通过规则对数据进行访问控制.一个规则使用一行配置并按顺序排列
通过iptables命令创建一个规则
iptables–t filter –A INPUT –s 192.168.1.1 –j DROP
由表\链\匹配属性\配置后的动作进行
通过iptables –L可以查看当前系统现配置的规则
插入规则
开启22号端口命令
iptables–I INPUT 1 –p tcp –dport 22 –j ACCEPT
设置好后可以查看到22号端口自动换成了协议信息.
删除规则:
iptables–D INPUT 3
iptables–D INPUT –s 192.168.1.2 –j DROP
删除所有规则:
iptables–F
匹配参数
基于IP地址
-s192.168.1.1
-d10.0.0.1
基于接口
-i eth0
-o eth1
排除参数
-s “!”192.168.1.0/24
基于协议及端口
-p tcp–dport 23
-p udp–sport 53
-p icmp
当使用Linux作为跌幅设备使用的时候,可以通过定义forword规则进行转发控制
iptables–A FORWARD –s 102.168.1.0/24 –d 10.1.1.0/24 –j DROP
NAT网络地址转换用于对数据包的IP地址进行修改
SNAT 源地址转换,伪装内部地址(常用的NAT)
DNAT 目标地址转换,通常用于跳转
通过NAT进行跳转
iptables–t nat –A PREROUTING –p tcp –dport 80 –j DNAT –to0dest 192.168.1.10
通过NAT对出向数据进行跳转
iptables–t nat –A OUTPUT –p tcp –dport 80 –j DNAT –to-dest 192.168.1.100:8080
通过NAT对数据流进行伪装
(将内部地址伪装为一个外部公网IP地址)
iptables–t nat –A POSTROUTING –o eth0 –j MASQUERADE
通过NAT隐藏源IP地址
iptables–t nat –A POSTROUTING –j SNAT –to-source 1.2.3.4
iptable添加命令只是写入内存中,要永久有效需要在/etc/sysconfig/iptables
通过命令service iptablessave,使更改永久有效.
远程管理最好先创建允许自身ssh的规则.
相关文章推荐
- LinuxCast学习笔记三 BASH_Basic
- LinuxCast学习笔记20:Basic_command
- LinuxCast学习笔记十八:Network_Basic
- LinuxCast学习笔记三十一:FTP
- LinuxCast学习笔记二十三:ACL
- LinuxCast学习笔记五:File_Manage
- LinuxCast学习笔记十七:permission_ext
- Linux学习笔记二 GROME_Basic
- 一步一步建立linux交叉编译开发环境(学习笔记)
- 【Linux学习笔记】29:预定义变量和read命令
- Linux学习笔记一:VI高级功能
- Linux基础学习笔记-第四课:NANO、开关机
- Linux基础学习笔记-命令篇
- linux消息机制学习笔记
- Vbird的Linux私房菜学习笔记之正则表达式-grep
- 【Linux学习笔记】18:脚本执行方式
- Linux实践工程师学习笔记十
- [学习笔记]Linux中的定时任务\计划任务-Crontab
- Linux学习笔记:NFS
- Linux 学习笔记