我们这里直接拿nginx1.20.1的版本演示(epel源目前默认下载版本)
我们这里准备两台nginx主机,一个做盗链主机,一台被盗主机
ip | 名称 | 备注 |
172.16.1.10 | nginx01 | 被盗链主机 |
172.16.1.11 | nginx02 | 盗链主机 |
目录
一、配置盗链主机
1、我们直接下载安装nginx即可:
yum -y install epel-release && yum -y install nginx
2、安装完成以后配置一个主机地址: #这里我们配置被盗机的ip和网址
vi /etc/hosts
记住这俩网址
3、配置一个扩展配置文件:
vi /etc/nginx/conf.d/nginx.conf
4、简单写一个nginx配置文件:
server {
listen 80;
server_name www.123.com;
charset utf-8;
location / {
root /web;
index index.html index.htm;
}
}
5、创建/web 并写入内容
mkdir /web
内容如下:
<img src="http://www.gxd.com/img/logo.jpg"> #表示盗取对方域名下的img目录下的logo.jpg图片
<html>
<body>
<br>盗链图片</br>
<img src="http://www.gxd.com/img/logo.jpg">
</body>
</html>
6、检查:
nginx -t
7、改完后重启nginx:
systemctl restart nginx
二、配置被盗主机
1、同样装nginx
yum -y install epel-release && yum -y install nginx
2、然后通过gitee下载一个开源模板:
新零售/网店/商城 - HTML - 新零售/网店/商城 - 开源软件 - Gitee.com
随意下一个有图片就行
3、创建个目录将内容导入到文件内:
mkdir /www
4、导入的内容: #在这文件内找你的index.html文件 我的在htmls目录下面
5、编写个nginx配置文件
vi /etc/nginx/conf.d/www.conf
server {
listen 80;
server_name www.gxd.com; #刚才设置的网站域名
location /{
root /www/htmls; #在这个目录下寻找主页index.html文件
index index.html index.htm;
}
# location ~* \.(.gif|jpg|png|jpeg)$ { #匹配.gif jpg png jpeg结尾
# root /www/; # 设置我们网站的目录下目录下
# valid_referers none blocked www.gxd.com; #原是站点访问的是www.gxd.com上 不做禁止
# if ($invalid_referer){ #当不是我允许的域名访问我的时候,重定向到www.test.com上去
# rewrite ^/ http://www.text.com;
# }
# }
}
# server { #设置我们www.text.com的网站
# listen 80;
# server_name www.test.com;
# location /{
# root /test; #这个文件夹下可以添加内容 或者什么都不加
# index index.html index.htm;
# }
# }
我们先加入防盗链的机制: #这里就先设置为备注了,方便对比 如果想直接启用的话请去掉 第一列的#号
6、检查
nginx -t
7、启动nginx
systemctl restat nginx
接下来我们用本机访问一下看看出现内容没有:
直接用curl命令访问
curl 172.16.1.10
看到已经有了网页:
网页访问显示内容: #注意我们盗链主机上已将logs图片盗取下来
三、做了防盗链和未做防盗链对比
未做防盗链显示内容
我们访问一下我们盗链机的网址 可以看到被盗的图片出来了
做了防盗链:
注意将我们刚才配置文件内的#号去掉
然后从新载入nginx
systemctl reload nginx
这次我们再用盗链机访问一下看看结果:
看到图片已经不显示 ,以上就是全部试验了