加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

Nginx IP访问控制,只允许指定的IP地址访问,其他ip禁止访问或者

发布时间:2020-12-13 17:53:56 所属栏目:Linux 来源:网络整理
导读:需求: 我需要一个只允许指定的ip访问django服务,其他ip访问,直接拒绝服务。 经过一番查询,发现可以利用nginx进行ip访问控制,屏蔽其他ip访问,只允许在白名单的ip才可以访问。 修改站点的nginx配置文件,比如我的文件是:admin.conf 在server或者locatio

需求:我需要一个只允许指定的ip访问django服务,其他ip访问,直接拒绝服务。

经过一番查询,发现可以利用nginx进行ip访问控制,屏蔽其他ip访问,只允许在白名单的ip才可以访问。

修改站点的nginx配置文件,比如我的文件是:admin.conf

在server或者location配置段中进行配置,通过allow和deny参数来控制访问。

allow:允许访问ip

deny:拒绝访问ip

配置信息如下:
nginx路径:/etc/nginx/conf.d/chenxm.conf

server?{
?????listen?80;

?????server_name?admin.chenxm.cc;
?????location?/?{
?????????proxy_pass?http://0.0.0.0:10000;
?????????proxy_set_header?Host?$host;
?????????proxy_set_header?X-Real-IP?$remote_addr;
?????????proxy_set_header?X-Forwarded-For?$proxy_add_x_forwarded_for;
?????????allow?222.222.222.222;
?????????deny??all;
?????}

}

allow 222.222.222.222;?????表示允许222.222.222.222这个ip访问

deny? all????表示拒绝所有ip的访问。

配置文件修改好之后,检查nginx配置文件的语法是否正确。

[root@localhost?~]#?nginx?-tc?/etc/nginx/nginx.conf?
nginx:?the?configuration?file?/etc/nginx/nginx.conf?syntax?is?ok
nginx:?configuration?file?/etc/nginx/nginx.conf?test?is?successful

相关用法:

如果反过来使用:

allow all;?????表示允许所有ip访问

deny? 222.222.222.222????表示拒绝222.222.222.222这个ip访问

最后:

当用户ip不是222.2222.222.222来访问,nginx直接返回一个403页面给用户

高级知识:

当Nginx作为web服务的时候也会有安全功能的模块,可以通过修改配置文件的方式来设置允许和拒绝的IP来访问。有些IP被设置拒绝访问后,访问的时候会出现403,也就是拒绝访问。不过由于IP的数量庞大,很多时候都不会指定详细的IP地址,应该会使用网段的方式。比如192.168.0.*,这样的方式进行配置 。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读