技术解析

实在无果,求段 Nginx 过滤网址白名单配置
0
2021-05-26 17:11:25
idczone
因分享了公共代理,导致那些人乱上一些不良网站,已经被发邮件投诉。请求各位帮帮忙,就是想允美国服务器许列表里的网址通过访问,而不在允许列表里的就重定向到某页面,大概要允许上千个网址。
真的很需要
无条件重定向DNS流量到本地
然后自建个DNS 需要的域就转发就可以了

简单的说,设置并强制指定(iptables之类)OpenDNS,然后去 opendns.com 注册你的服务器 IP 并过滤域名

squid/acl 呀

https://github.com/fifilyu/module-http-whitelist
用 iptables 的 string 模块做一个白名单即可。

感谢

我的系统市Debian7无法编译文件

make -C /lib/modules/3.2.0-4-686-pae/build/ M=/root/module-http-whitelist modules
make: *** /lib/modules/3.2.0-4-686-pae/build/: No such file or directory. Stop.
make: *** [all] Error 2

debian下,无法安装 kernel-devel

我下午装一个debian7测试一下。 应该是依赖包没安装上的问题。
你的情况建议先用 iptables string 模块。直接iptables即可满足你了。不需要用我这个Linux内核模块。
用内核模块适合大量请求访问的情况使用

感觉你这个方便点,我尝试sudo apt-get install linux-headers-$(uname -r)后,虽然能编译但还是有错误,出来的东西无法加载,你是怎么安装这个的。

用openresty在acces阶段执行一个lua脚本即可,url 白明白可以存在redis或者mysql中

我在 Debian 7 上测试了,编译和运行ok。
安装依赖包:
sudo apt-get install linux-headers-`uname -r`


初始化配置文件
$ sudo mkdir /etc/http_whitelist
$ sudo touch /etc/http_whitelist/host /etc/http_whitelist/network
详情请看:
初始化配置文件
https://github.com/fifilyu/module-http-whitelist#%E5%88%9D%E5%A7%8B%E5%8C%96%E9%85%8D%E7%BD%AE%E6%96%87%E4%BB%B6

@FifiLyu


[email&sudo mkdir /etc/http_whitelist
[email&sudo touch /etc/http_whitelist/host /etc/http_whitelist/network
[email&sudo apt-get install linux-headers-'uname -r'
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package linux-headers-uname -r
[email&cd module-http-whitelist
[email&sudo insmod http_whitelist.ko
[email&lsmod
Module Size Used by
http_whitelist 12997 0

原来是要先创建目录、文件。

sudo apt-get install linux-headers-`uname -r`
uname -r 不是用单引号,而是反勾号。是键盘左边的数字“1”旁边的符号。

已经加载上了

数据地带为您的网站提供全球顶级IDC资源
在线咨询
专属客服