网络之 Iptables总结

查询
iptables -L 默认 filter表
iptables -L -t filter
iptables -L -t nat
iptables -L -t mangle
Filter表
service iptables start
service iptables stop
iptables -t filter -A INPUT -j DROP
Centos6
service iptables save 保存规则
保存规则的路径:/etc/sysconfig/iptables
Centos7
iptables-save > /tmp/iptables.rules 保存
iptables-restore /tmp/iptables.rules 恢复
iptables -t filter -F 清除filter表所有规则
iptables -t filter -F INPUT 清除filter表INPUT链所有规则
iptables -t filter -A INPUT -j DROP 添加规则
iptables -t filter -A INPUT -j ACCEPT
iptables -t filter -I INPUT 1 -j ACCEPT 指定位置插入规则
iptables -t filter -I INPUT 2 -j ACCEPT
iptables -t filter -R INPUT 3 -j ACCEPT 修改规则
iptables -t filter -D INPUT -j ACCEPT 删除规则
iptables -t filter -D INPUT 3 指定删除规则的行号
iptables -L --line-numbers 查询规则行号
iptables -t filter -P INPUT DROP 修改默认值
根据IP地址
270/557
iptables -t filter -A INPUT -s 172.16.110.92 -j DROP
iptables -t filter -A INPUT -d 172.16.110.1 -j DROP
iptables -t filter -A INPUT ! -s 172.16.110.92 -j DROP
iptables -t filter -A INPUT -s 172.16.110.0/24 -j DROP
eg:
禁止你的同桌对你的访问(在INPUT和OUTPUT各写出规则) 几条?
iptables -A INPUT -s 172.16.110.92 -j DROP
iptables -A OUTPUT -d 172.16.110.92 -j DROP
根据协议
iptables -A INPUT -s 172.16.110.92 -p icmp -j DROP
iptables -A INPUT -s 172.16.110.92 -p tcp -j DROP
iptables -A INPUT -s 172.16.110.92 ! -p tcp -j DROP
根据端口
iptables -A INPUT -s 172.16.110.92 -p tcp --dport 22 -j DROP
iptables -A INPUT -s 172.16.110.92 -p tcp ! --dport 22 -j DROP
iptables -A INPUT -s 172.16.110.92 -p tcp --dport 22:80 -j DROP
iptables -A INPUT -s 172.16.110.92 -p tcp --dport 22: -j DROP 22号端口到最后端口
iptables -A INPUT -s 172.16.110.92 -p tcp --dport :80 -j DROP 0到80端口
eg:
禁止同桌访问你的80端口在(INPUT 和 OUTPUT)
iptables -A INPUT -s 172.16.110.92 -p tcp --dport 80 -j DROP
iptables -A OUTPUT -d 172.16.110.92 -p tcp --sport 80 -j DROP
eg
1.只允许别人访问你的80端口
iptables -A INPUT -p tcp ! --dport 80 -j DROP
2.拒绝所有人登录你的sshd服务
iptables -A INPUT -p tcp --dport 22 -j DROP
3.只允许别人访问的ftp服务
端口模式(主动)
iptables -A INPUT -p tcp --dport 20:21 -j ACCEPT
iptables -A INPUT -j DROP
被动
vim /etc/vsftpd/vsftpd.conf
pasv_min_port=10000
pasv_max_port=11000
service vsftpd restart
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 10000:11000 -j ACCEPT
iptables -A INPUT -j DROP
根据网卡
iptables -A INPUT -i eth0 -j DROP
iptables -A OUTPUT -o eth0 -j DROP
自定义链
iptables -N lian1 创建
iptables -A INPUT -j lian1 添加链接
iptables -A lian1 -j DROP 自定义链动作
iptables -E lian1 newlian 修改链名
删除自已定义链
iptables -D INPUT 1 清除链接
iptables -F newlian 删除自定义链内规则
iptables -X newlian 删除自定义链
动作 -j
DROP
ACCEPT
自定以链
REJECT
271/557
LOG
iptables -A INPUT -j LOG
端口模块multiport(最多匹配15个端口)
目标端口匹配
iptables -A INPUT -p tcp -m multiport --dport 20,21,23,25,80 -j DROP
源端口匹配
iptables -A OUTPUT -p tcp -m multiport --sport 20,21,23,25,80 -j DROP
端口匹配
iptables -A OUTPUT -p tcp -m multiport --port 20,21,23,25,80 -j DROP
iptables模块 状态防火墙
SNAT表(地址装换表)
172.16.110.2----------->172.16.110.1
10.10.10.1---------------------------10.10.10.200
1.客户端:网关
route add default gw 172.16.110.1
2.SNAT开转发
echo 1 > /proc/sys/net/ipv4/ip_forward
写防火墙规则
iptables -t nat -A POSTROUTING -s 172.16.110.0/24 -j SNAT --to 10.10.10.1
iptables -t nat -A POSTROUTING -s 172.16.110.0/24 -j MASQUERADE
172.16.110.2-----------------172.16.110.1
客户端 10.10.10.1<----------------10.10.10.200
测试:
elinks --dump 10.10.10.200
DNAT
1.服务器:网关
route add default gw 10.10.10.1
2.DNAT开转发
echo 1 > /proc/sys/net/ipv4/ip_forward
防火墙规则
iptables -t nat -A PREROUTING -p tcp --dport 80 -j DNAT --to 10.10.10.200
测试
elinsk --dump 172.16.110.1
网络之 Iptables总结的更多相关文章
- 【iptables】linux网络防火墙-iptables基础详解(重要)
一:前言 防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种.无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘.而我们的任务就是需要去定义到底防 ...
- linux网络防火墙-iptables基础详解
一:前言 防火墙,其实说白了讲,就是用于实现Linux下访问控制的功能的,它分为硬件的或者软件的防火墙两种.无论是在哪个网络中,防火墙工作的地方一定是在网络的边缘.而我们的任务就是需要去定义到底防火墙 ...
- Kubernetes网络的iptables模式和ipvs模式支持ping分析
1.iptables模式无法ping通原因分析 iptables模式下,无法ping通任何svc,包括clusterip.所有ns下,下面来分析原因: 查看kubernetes的网络模式 curl 1 ...
- Linux之iptables(四、网络防火墙及NAT)
网络防火墙 iptables/netfilter网络防火墙: (1) 充当网关 (2) 使用filter表的FORWARD链 注意的问题: (1) 请求-响应报文均会经由FORWARD链,要注意规则的 ...
- 【操作系统之十五】iptables黑白名单、自定义链、网络防火墙、常用动作
1.黑白名单当链的默认策略为ACCEPT时,链中的规则对应的动作应该为DROP或者REJECT,表示只有匹配到规则的报文才会被拒绝,没有被规则匹配到的报文都会被默认接受,这就是"黑名单&qu ...
- iptables网络防火墙和SNAT原理实战
网络防火墙 iptables/netfilter网络防火墙: (1) 充当网关 (2) 使用filter表的FORWARD链 注意的问题: (1) 请求-响应报文均会经由FORWARD链,要注意规则的 ...
- iptables (一) 主机防火墙和网络防火墙
Firewall : 防火墙,隔离工具:工作于主机或网络的边缘,对于进出本主机或网络的报文根据事先定义好的检测规则作匹配,对于能够被规则所匹配到的报文做出相应处理的组件:有主机防火墙和网络防火墙 Ip ...
- 【转】IPtables学习笔记
写在前面,大家测试玩iptables时要记得自己配置了那些东西,测试完成后记得删除啊,博主忘了删除一个input REJECT链的一条记录,后续测试搭建了apache服务器,始终无法访问,最后抓包发现 ...
- iptables命令详解和举例
网上看到这个配置讲解得还比较易懂,就转过来了,大家一起看下,希望对您工作能有所帮助.网管员的安全意识要比空喊Linux安全重要得多. iptables -Fiptables -Xiptables -F ...
随机推荐
- JAVA中对字符串的常见处理函数汇总
字符串 看到字符串,想到字符串处理中,有 字符串的反转,初级面试中常用到 字符串分割成字符串组,初级面试中常用到 字符串中的替换,初级面试中常用到 字符串中的截取,初级面试中常用到 反转reverse ...
- Asp.net core 学习笔记 ( Smtp and Razor template 电子邮件和 Razor 模板 )
refer : https://dotnetcoretutorials.com/2017/08/20/sending-email-net-core-2-0/ https://ppolyzos.com/ ...
- 『Python CoolBook:Collections』数据结构和算法_容器型value字典&顺序字典
一.collections.defaultdict:多值映射字典 defaultdict省去了初始化容器的过程,会默认value对象为指定类型的容器 指定list时可以使用.append, from ...
- 『Python CoolBook』Cython
github地址 使用Cython导入库的话,需要一下几个文件: .c:C函数源码 .h:C函数头 .pxd:Cython函数头 .pyx:包装函数 setup.py:python 本节示例.c和.h ...
- 依赖注入原理---IoC框架
先来讲一讲,一个简单的依赖注入例子. 1. 依赖 如果在 Class A 中,有 Class B 的实例,则称 Class A 对 Class B 有一个依赖.例如下面类 Human 中用到一个 Fa ...
- ES5和ES6那些你必须知道的事儿(一)
ES5和ES6那些你必须知道的事儿 ES5新增的东西 一.数组方法 1.forEach 用途:遍历,循环 对于空数组不会执行回调函数 //用法 array.forEach( function( ...
- 匿名函数lambda及面试题三道
# 函数名 = lambda 参数 :返回值. 匿名函数只是函数,如果要通过可迭代对象给匿名函数传参,就需要使用 map 或者 filter calc = lambda n:n**n calc(1)c ...
- 前端表单验证常用的15个JS正则表达式
在表单验证中,使用正则表达式来验证正确与否是一个很频繁的操作,本文收集整理了15个常用的javaScript正则表达式,其中包括用户名.密码强度.整数.数字.电子邮件地址(Email).手机号码.身份 ...
- SSH登录异常(someone is doing something nasty)
在平时工作中,有时候需要SSH登陆到别的Linux主机上去,但有时候SSH登陆会被禁止,并弹出如下类似提示: @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ ...
- C语言实现Winsocket网络传输数据时乱码问题
问题描述:输入中文字符时在数据结尾总是有别的字符冒出 解决办法: recvBuf[ret] = '\0';//接收数据的数组,表示存储的数据截止,后面没有数据了 再运行,传输正常. 提示:C语言基础知 ...