CentOS7.4——Apache优化应用四(防盗链)

Apache优化应用四(防盗链)
目录
第一部分 准备工作
第二部分 安装Apache服务
第三部分 配置盗链
第四部分 配置基于域名的防盗链

第一部分 准备工作
一:服务器两台:Linux系统—CentOS 7.4;
IP地址:192.168.80.10(合法服务器)
192.168.80.40(非法盗链服务器)
注意:两台服务器都要安装Apahce服务

客户端:以WIN7为例,测试验证结果,与服务器在同一网段;
IP地址:192.168.80.2

二:准备压缩包

//apr-1.6.2.tar.gz和apr-util-1.6.0.tar.gz是httpd2.4以后的版本所需要的插件,必须安装

三:将防火墙与selinux关闭

第二部分 安装Apache服务
一:安装编译工具与插件
[[email protected] ~]# yum -y install \

gcc \
gcc-c++ \
make \
pcre-devel \
expat-devel \
perl

二:解压:
[[email protected] ~]# tar xf apr-1.6.2.tar.gz
[[email protected] ~]# tar xf apr-util-1.6.0.tar.gz
[[email protected] ~]# tar xf httpd-2.4.29.tar.bz2
[[email protected] ~]# mv apr-1.6.2 httpd-2.4.29/srclib/apr
[[email protected] ~]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util

三:配置(自定义个性化配置)
[[email protected] ~]# cd httpd-2.4.29 //必须进入安装目录下
[[email protected] httpd-2.4.29]# ./configure \

--prefix=/usr/local/httpd \ //指定将httpd程序安装到/usr/local/httpd目录下
--enable-so \ //启用动态加载模块功能
--enable-rewrite \ //启用网页地址重写功能,用于网站优化及目录迁移
--enable-charset-lite \ //启用字符集支持,以便支持使用各种字符集编码的网页
--enable-cgi //启用CGI脚本程序支持,便于扩展网站的应用访问能力

四:编译及安装
[[email protected] httpd-2.4.29]# make && make install

//将httpd服务添加到系统服务
[[email protected] httpd-2.4.29]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
[[email protected] httpd-2.4.29]# vi /etc/init.d/httpd
添加以下两行(注意,“#”不能省略):

保存退出

[[email protected] httpd-2.4.29]# chkconfig --add httpd //将httpd加入到SERVICE管理器
[[email protected] httpd-2.4.29]# systemctl daemon-reload //重载系统系统管理器

五:编辑httpd主配置文件
[[email protected] httpd-2.4.29]# vi /usr/local/httpd/conf/httpd.conf
修改以下内容:
ServerName localhost
保存退出
//优化执行路径(执行程序文件的原路径不在PATH环境变量中,做个软链接使其可以执行)
[[email protected] httpd-2.4.29]# ln -s /usr/local/httpd/conf/httpd.conf /etc/
[[email protected] httpd-2.4.29]# ln -s /usr/local/httpd/bin/* /usr/local/bin/

//检查语法错误
[[email protected] httpd-2.4.29]# httpd –t
或者:[[email protected] httpd-2.4.29]# apachectl –t

//查看程序版本

六:启动服务
[[email protected] httpd-2.4.29]# systemctl start httpd
[[email protected] httpd-2.4.29]# systemctl enable httpd //将httpd设为开机启动
[[email protected] httpd-2.4.29]# netstat -anpt | grep 80 //查看httpd服务运行状态

七:验证
用WIN7客户端访问服务器
浏览器访问:http://192.168.80.10

浏览器访问:http://192.168.80.40

验证成功
(注意,网页默认显示内容为:/usr/local/httpd/htdocs/index.html)

第三部分 配置盗链
一:在合法服务器上配置网页文件
[[email protected] ~]# cd /usr/local/httpd/htdocs/
[[email protected] htdocs]# vi index.html
<html>
<title>I AM OK!</title>
<body>
<h1> Test Page! </h1>
<img src="12.jpg">
</body>
</html>

保存退出
[[email protected] htdocs]# service httpd restart //重启服务

二:验证
Win7下访问:192.168.80.10

三:在非法盗链服务器上配置网页文件
[[email protected] ~]# cd /usr/local/httpd/htdocs/
[[email protected] htdocs]# vi index.html
<html>
<title>I AM Hei</title>
<body>
<h1> Hei..Hei! </h1>
<img src="http://192.168.80.10/12.jpg"&gt;
</body>
</html>

保存退出
[[email protected] htdocs]# service httpd restart //重启服务

四:验证
Win7下访问192.168.80.40

//验证盗链成功

第四部分 配置基于域名的防盗链
第一步:配置合法服务器
一:搭建DNS
[[email protected] htdocs]# yum install -y bind bind-utils
[[email protected] htdocs]# vi /etc/named.conf //编辑dns主配置文件

[[email protected] htdocs]# vi /etc/named.rfc1912.zones //编辑dns区域配置文件

[[email protected] htdocs]# cd /var/named/ //编辑dns区域数据文件
[[email protected] named]# cp -p named.localhost aa.com.zone
[[email protected] named]# vi aa.com.zone

[[email protected] named]# service named restart //重启dns服务
[[email protected] named]# netstat -anpt | grep named //查看dns运行状态

[[email protected] named]# nslookup www.aa.com //解析www.aa.com

[[email protected] named]# vi /etc/resolv.conf //配置服务器dns
servername 192.168.80.10
保存退出
[[email protected] named]# systemctl restart named

二:Win7下配置DNS

测试DNS

//dns搭建成功

三:创建虚拟目录
[[email protected] ~]# vi /etc/httpd.conf //编辑http主配置文件
添加以下内容:
Alias /doc/ "/opt/doc/"
<Directory "/opt/doc">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
Require all granted
</Directory>

保存退出
[[email protected] ~]# apachectl –t //检查语法错误
[[email protected] ~]# service httpd restart //重启服务

将error.jpg(防盗链文件)放到/opt/doc/目录下

四:配置防盗链
[[email protected] ~]# apachectl -D DUMP_MODULES | grep rewrite //检查模块
[[email protected] ~]# vi /etc/httpd.conf
添加以下内容:
LoadModule rewrite_module modules/mod_rewrite.so //添加防盗链模块

保存退出
[[email protected] ~]# apachectl -t //检查语法错误
[[email protected] htdocs]# vi /etc/httpd.conf
//针对目录做防盗链处理,在htdocs目录属性最后位置新增
<Directory "/usr/local/httpd/htdocs">该位置最后
添加以下内容:
RewriteEngine On //白名单,只允许自己网站内容
RewriteCond %{HTTP_REFERER} !^http://192.168.80.10/
RewriteCond %{HTTP_REFERER} !^http://aa.com/.
$ [NC]
RewriteCond %{HTTP_REFERER} !^http://aa.com$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.aa.com/.$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.aa.com$ [NC]
RewriteRule .
.(gif|jpg|swf|png)$ http://www.aa.com/doc/error.jpg [R,NC] //需要 重定向到一个盗链主机可以访问的位置,否则看不出效果来。

[[email protected] htdocs]# apachectl –t
[[email protected] htdocs]# service httpd restart

第二步:配置非法盗链服务器
一:配置DNS服务
[[email protected] ~]# yum install -y bind bind-utils
[[email protected] ~]# vi /etc/named.conf

[[email protected] ~]# vi /etc/named.rfc1912.zones

[[email protected] ~]# cd /var/named/
[[email protected] named]# cp -p named.localhost bb.com.zone
[[email protected] named]# vi bb.com.zone

[[email protected] named]# vi /etc/resolv.conf
servername 192.168.80.40
保存退出
[[email protected] named]# systemctl restart named //重启dns服务

二:验证
浏览器访问非法盗链服务器:www.bb.com

//验证成功

原文地址:http://blog.51cto.com/12227558/2083456

时间: 2024-08-06 06:52:23

CentOS7.4——Apache优化应用四(防盗链)的相关文章

使用Apache的.htaccess就可以防盗链

Apache的.htaccess可以实现很多功能,如密码保护.禁止显示目录列表.阻止/允许特定的IP地址.实现网址的301 重定向等等.本文就来说说使用Apache的.htaccess如何防盗链. 当然防盗链可以用程序解决,如PHP: $referer = $_SERVER['HTTP_REFERER']; $selfurl = $_SERVER['HTTP_HOST']; if(false == strpos($referer,$selfurl)){ echo 'phpddt.com防止非法盗

Apache安全优化:设置防盗链,隐藏版本信息 (内含Apache源码包和抓包工具)

防盗链:一些不良网站有时为了不增加成本又想扩充自己站点的内容,经常盗用其他网站的链接,一方面损害了原网站的合法利益,另一方面又加重了服务器的负担 隐藏版本信息:一般情况下,软件的漏洞信息和特定版本是相关的如果×××或别有用心之人得到了Apache的版本信息,就会使服务器遭受被×××的风险,为了防止这些事的发生,我们可以隐藏版本号,减少危险的发生 实验环境:一台linux作为web服务器,IP为192.168.100.222 一台win7作为盗链网站,IP为192.168.100.3 一台win7

apache web服务器与防盗链的设置

一.安装apache2.4.23 新版本的httpd-2.4新增以下特性: 新增模块: mod_proxy_fcgi(可提供fcgi代理) mod_ratelimit(限制用户带宽) mod_request(请求模块,对请求做过滤) mod_remoteip(匹配客户端的IP地址) 对于基于IP的访问控制做了修改,不再支持allow,deny,order机制,而是统一使用require进行 还新增以下几条新特性: 1.MPM支持在运行时装载;不过要开启这种特性,在编译安装要启用这三种功能: --

CentOS7.4—Apache优化应用二(日志管理)

Apache优化应用二(日志管理)目录第一部分 准备工作第二部分 安装Apache服务第三部分 日志管理一(配置日志分割)第四部分 日志管理二(配置Awstats日志分析软件) 第一部分 准备工作一:服务器:Linux系统-CentOS 7.4:IP地址:192.168.80.10 客户端:以WIN7为例,测试验证结果,与服务器在同一网段:IP地址:192.168.80.2 二:准备压缩包 //apr-1.6.2.tar.gz和apr-util-1.6.0.tar.gz是httpd2.4以后的版

CentOS7.4—Apache优化应用一(保持连接与版本隐藏)

Apache优化应用一(保持连接与版本隐藏)目录第一部分 准备工作第二部分 安装Apache服务第三部分 Apache优化-保持连接第四部分 Apache优化-版本信息隐藏 第一部分 准备工作一:服务器:Linux系统-CentOS 7.4:IP地址:192.168.80.10 客户端:以WIN7为例,测试验证结果,与服务器在同一网段:IP地址:192.168.80.2 二:准备压缩包 //apr-1.6.2.tar.gz和apr-util-1.6.0.tar.gz是httpd2.4以后的版本所

CentOS7.4—Apache优化应用三(网页优化)

Apache优化应用三(网页优化)目录第一部分 准备工作第二部分 安装Apache服务第三部分 Apache网页优化-网页压缩第四部分 Apache网页优化-网页缓存 第一部分 准备工作一:服务器:Linux系统-CentOS 7.4:IP地址:192.168.80.10 客户端:以WIN7为例,测试验证结果,与服务器在同一网段:IP地址:192.168.80.2 二:准备压缩包 //apr-1.6.2.tar.gz和apr-util-1.6.0.tar.gz是httpd2.4以后的版本所需要的

Apache配置之设置防盗链

防止第三方站点盗用自己站点的资源 1.配置虚拟主机文件    #vim /usr/local/apache/conf/extra/httpd-vhosts.conf SetEnvIfNoCase Referer "^http://.*\.zhijie\.com(白名单域名)" local_ref SetEnvIfNoCase Referer ".*\.maozhijie\.com(白名单域名)" local_ref SetEnvIfNoCase Referer &q

HTTP 笔记与总结(6)referer 头与防盗链

在百度贴吧(或 QQ 空间等)中找到一张图片,复制图片地址,在站外通过 img src 引用,会发现: 此外,在一些统计软件中,统计访客的来路(直接访问.外部链接.搜索引擎),都用到了 HTTP 协议请求头中 Referer 的知识. [例]直接访问 www.baidu.com 和 在通过本地页面跳转至 www.baidu.com,观察 HTTP 请求头信息的差异: ① 直接访问百度,HTTP 请求头信息: ② 通过本地 referer.html 跳转至 www.baidu.com: HTTP

05 referer头与防盗链

像上图中的这个效果,当我们在网页里引用站外图片时,常出现这样的情况. ??? 服务器是怎么样知道,这个图片是在站外被引用的呢? 还有在网站的统计结果,统计用户从何而来,如下图 ??? 统计时,是如何得知用户从哪儿来到的本网站呢? 在Http协议中,头信息里,有一个重要的选项: Referer Referer: 代表网页的来源,即上一页的地址 如果是直接在浏览器上输入地址,回来进来,则没有Referer头. 这也是: 为什么服务器知道我们的图片是从哪儿引用的,也知道我们的客户从哪个网站链接点击过来