iptables 限制访问规则
iptables -I INPUT 1 -m state --state RELATED,ESTABLISHED -j ACCEPT
把这条语句插在input链的最前面(第一条),对状态为ESTABLISHED,RELATED的连接放行。
这条规则在某种情况下甚至比下面开放ssh服务都重要:① 如果INPUT连默认为DROP,② INPUT链默认为INPUT,但存在这条规则-A INPUT -j REJECT --reject-with icmp-host-prohibited,上面两种情况下都必须添加--state RELATED,ESTABLISHED为第一条,否则22端口无法通行,把自己锁在防火墙外面了。
有了这条规则,可保证只要当前ssh没有关闭,哪怕防火墙忘记开启22端口,也可以继续连接。iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
允许所有,不安全,默认。iptables -A INPUT -s 172.29.73.0/24 -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
限制指定IP范围能SSH,可取iptables -A INPUT -s 10.30.0.0/16 -p tcp -m tcp -m multiport --dports 80,443 -j ACCEPT
允许一个IP段访问多个端口iptables -A INPUT -s 10.30.26.0/24 -p tcp -m tcp --dport 80 -j DROP
禁止某IP段访问80端口,将-j DROP改成-j REJECT --reject-with icmp-host-prohibited作用相同。
iptables -A INPUT -s 172.29.73.23 -j ACCEPT
完全信任某一主机,尽量不使用
iptables -I INPUT 2 -i lo -j ACCEPT
允许loopback。回环接口是一个主机内部发送和接收数据的虚拟设备接口,应该放行所有数据包。指定插入位置为 2 则之前该编号为 2 规则依次后移。
-A INPUT -p icmp -j ACCEPT
接受icmp数据包,可以ping。也可以设置只允许某个特定的IP,见后文。
iptables -A INPUT -j REJECT --reject-with icmp-host-prohibited
这条规则用在INPUT链默没有DROP的情况,作用与-P DROP相同,当前面所有的规则都没匹配时,自然落到这个 REJECT 上。
类似的FORWARD链也可以这么用:iptables -A FORWARD -j REJECT --reject-with icmp-host-prohibited。
当然,更强的规则是将OUPUT链也设置成DROP,这样一来情况就会复杂很多,如就是发送名解析请求,也要添加规则iptables -A OUTPUT -p udp --dport 53 -j ACCEPT。
正是因为这样的太过麻烦,所以一般OUTPUT策略默认为ACCEPT。(安全性比较高的系统除外)
iptables 限制访问规则的更多相关文章
- Android Linux自带iptables配置IP访问规则
利用Linux自带iptables配置IP访问规则,即可做到防火墙效果
- 使用nginx和iptables做访问权限控制(IP和MAC)
之前配置的服务器,相当于对整个内网都是公开的 而且,除了可以通过80端口的nginx来间接访问各项服务,也可以绕过nginx,直接ip地址加端口访问对应服务 这是不对的啊,所以我们要做一些限制 因为只 ...
- Linux下iptables防火墙用法规则详解
管理网络流量是系统管理员必需处理的最棘手工作之一,我们必需规定连接系统的用户满足防火墙的传入和传出要求,以最大限度保证系统免受×××.很多用户把 Linux 中的iptables当成一个防火墙,从严格 ...
- iptables限制访问
iptables限制访问 常用命令 # 查看规则 iptables -L INPUT --line-numbers # 开放指定的端口 iptables -A INPUT -p tcp --dport ...
- Python的类实例属性访问规则
一般来说,在Python中,类实例属性的访问规则算是比较直观的. 但是,仍然存在一些不是很直观的地方,特别是对C++和Java程序员来说,更是如此. 在这里,我们需要明白以下几个地方: 1.Pytho ...
- c++中派生类对基类成员的三种访问规则(转)
C++中派生类对基类成员的访问形式主要有以下两种:1.内部访问:由派生类中新增成员对基类继承来的成员的访问.2.对象访问:在派生类外部,通过派生类的对象对从基类继承来的成员的访问.今天给大家介绍在3中 ...
- 保存iptables的防火墙规则的方法【转载】
转自: 保存iptables的防火墙规则的方法 - 51CTO.COMhttp://os.51cto.com/art/201103/249504.htm 保存iptables的防火墙规则的方法如下: ...
- JAVA之旅(九)——Object类,equals,toString,getClass,内部类访问规则,静态内部类,内部类原则,匿名内部类
JAVA之旅(九)--Object类,equals,toString,getClass,内部类访问规则,静态内部类,内部类原则,匿名内部类 天天被一些琐事骚扰,学习还得继续 一.Object类 Obj ...
- svn Edge访问规则配置
权限的配置方法: 首先在用户页面定义用户,然后在版本库页面,手工填写访问规则. 以下面的配置为例(实际配置中应删除“//”及其后的注释): [groups] //定义用户组 ...
随机推荐
- Jboss 默认加载项目访问
修改JBOSS的server.xml路径为: D:\Program Files\jboss-4.2.2.GA\server\default\deploy\jboss-web.deployer\serv ...
- tomcat的三种部署项目的方式
1.直接将项目放在webapps目录下. 如果将项目直接打成WAR包,放在webapps目录下会自动解压 项目的文件夹名称就是项目的访问路径,也就是虚拟目录. 2.配置conf文件夹下的server. ...
- 为GitLab配置邮件服务
修改配置文件:/etc/gitlab/gitlab.rb ####################################################################### ...
- day38 10-Spring的Bean的属性的注入
后处理bean,如果是返回bean,那么什么都不做直接把这个类原封不动地给你返回回去. 在它执行一些逻辑方法的时候对它进行逻辑增强,比如说进行时间监控,权限管理,日志的记录等等. 要做肯定是对正常的类 ...
- 洛谷P1470 最长前缀
P1470 最长前缀 Longest Prefix 题目描述 在生物学中,一些生物的结构是用包含其要素的大写字母序列来表示的.生物学家对于把长的序列分解成较短的序列(即元素)很感兴趣. 如果一个集合 ...
- angular.module()创建、获取、注册angular中的模块
// 传递参数不止一个,代表新建模块;空数组代表该模块不依赖其他模块 var createModule = angular.module("myModule", []); // 只 ...
- poj 2406 Power Strings(KMP入门,next函数理解)
Power Strings Time Limit: 3000MS Memory Limit: 65536K Total Submissions: 37685 Accepted: 15590 D ...
- jquery判断页面网址是否有效
方法一:(jQuery方法: 适用所有浏览器) HTML页面: <!DOCTYPE html><html><head lang="en"> &l ...
- go strcut 封装
package model import "fmt" type person struct { Name string age int //其它包不能直接访问.. sal floa ...
- Swift 之数组与字典
http://www.cocoachina.com/swift/20151230/14802.html 说到数组和字典,只要是编过程的小伙伴并不陌生.在Swift中的数组与字典也有着一些让人眼前一亮的 ...