当前位置:首页 > 开发 > 互联网 > 正文

web项目设置ip黑名单

发表于: 2015-07-14   作者:com0606   来源:转载   浏览次数:
Web
摘要: 对于nginx+tomcat的web项目,设置黑白名单的几种的方式 1.使用linux的iptables(基于linux防火墙的,前提是要开启防火墙) 要封停一个IP,使用下面这条命令:   iptables -I INPUT -s ***.***.***.*** -j DROP 要解封一个IP(前提是iptables已经有这条记录),使用下面这条命令:   &n

对于nginx+tomcat的web项目,设置黑白名单的几种的方式

1.使用linux的iptables(基于linux防火墙的,前提是要开启防火墙)

要封停一个IP,使用下面这条命令:

 

iptables -I INPUT -s ***.***.***.*** -j DROP

要解封一个IP(前提是iptables已经有这条记录),使用下面这条命令:

 

 

iptables -D INPUT -s ***.***.***.*** -j DROP

 参数-I是表示Insert(添加),-D表示Delete(删除)。后面跟的是规则,INPUT表示入站,***.***.***.***表示要封停的IP,DROP表示放弃连接。

 

此外,还可以使用下面的命令来查看当前的IP规则表:

 

iptables -list

 如果要想清空封掉的IP地址,可以输入:

 

 

iptables -flush

 要添加IP段到封停列表中,使用下面的命令:

 

 

iptables -I INPUT -s 121.0.0.0/8 -j DROP

 其实也就是将单个IP封停的IP部分换成了Linux的IP段表达式。

 

 

2.使用linux的hosts.allow和hosts.deny

这两个文件是tcpd服务器的配置文件,tcpd服务器可以控制外部IP对本机服务的访问。这两个配置文件的格式如下:
#服务进程名:主机列表:当规则匹配时可选的命令操作
server_name:hosts-list[:command]

 

/etc/hosts.allow控制可以访问本机的IP地址,/etc/hosts.deny控制禁止访问本机的IP.如果两个文件的配置有冲突,以/etc/hosts.deny为准。

使用方法,以/etc/hosts.allow为例:

ALL:127.0.0.1 #允许本机访问本机所有服务进程
smbd:192.168.0.0/255.255.255.0 #允许192.168.0.网段的IP访问smbd服务
ALL关键字匹配所有情况,EXCEPT匹配除了某些项之外的情况,PARANOID匹配你想控制的IP地址和它的域名不匹配时(域名伪装)的情况。

 

3.使用nginx的allow和deny

allow
语法:     allow address | CIDR | unix: | all;
默认值:     —
配置段:     http, server, location, limit_except

允许某个ip或者一个ip段访问.如果指定unix:,那将允许socket的访问.注意:unix在1.5.1中新加入的功能,如果你的版本比这个低,请不要使用这个方法。

 

deny
语法:     deny address | CIDR | unix: | all;
默认值:     —
配置段:     http, server, location, limit_except

禁止某个ip或者一个ip段访问.如果指定unix:,那将禁止socket的访问.注意:unix在1.5.1中新加入的功能,如果你的版本比这个低,请不要使用这个方法。

 

nginx访问控制模块要数nginx里面最简单的指令,只要记住你想禁止谁访问就deny加上IP,想允许则加上allow ip,想禁止或者允许所有,那么allow all或者deny all即可

示例:

 

location / {
deny  192.168.1.1;
allow 192.168.1.0/24;
allow 10.1.1.0/16;
allow 2001:0db8::/32;
deny  all;
}

 

4.使用tomcat的RemoteHostValve 和RemoteAddrValve

RemoteHostValve是根据主机名进行限制

<Valve className="org.apache.catalina.valves.RemoteHostValve" allow="abc.com" deny=""/> 

RemoteAddrValve是根据IP进行限制

<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.4.10" 
deny=""/>

也可以指定网段

<Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="192.168.4.*" 
deny=""/>

使用denyStatus指定拒绝访问返回的状态码

<Valve className="org.apache.catalina.valves.RemoteAddrValve" deny="192.168.4.22" denyStatus="403" />

 

web项目设置ip黑名单

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
.NET项目开发的几个非常重要的项目设置 在开发.NET项目的时候,包括Winform项目和Web方面的项目,编
今天遇见一个问题,服务器tomcat上发布了一个web项目,由于原本的8080端口被占我在server.xml中修改
找了n久后发现,安装了tudou下载器,播放器之类的安装了后就netstat -an看不到0.0.0.1433端口 卸载
装完ubuntu 第一件事情就是连上网,换个源,进行更新操作,但前提条件是要配好ip和dns。 下面把自己
安装 wicd: sudo apt-get install wicd 配置: 1. 打开 Applicstion -> 网络 -> wcid netword m
装完ubuntu 第一件事情就是连上网,换个源,进行更新操作,但前提条件是要配好ip和dns。 下面把自己
安装 wicd: sudo apt-get install wicd 配置: 1. 打开 Applicstion -> 网络 -> wcid netword m
转自http://www.cnblogs.com/coacaio/archive/2011/12/12/2284715.html 1.修改网卡配置 编辑:vi
启动后的界面 按F2 输入root密码: 选择Configure Management Network后回车 选择IP Configuration
在eclipse中配置好maven环境后, 开始新建一个maven web项目。 其中有些地方需要注意下: 参加附件
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号