6_Apache 配置 之 禁止指用user_agent

user_agent:限制一些垃圾访问

在这个模块下面加,红色字体部分。

[[email protected] logs]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf

<IfModule mod_rewrite.c>

ReWriteEngine on

ReWriteCond  %{HTTP_HOST} ^www.aaa.com$ [or]

ReWriteCond  %{HTTP_HOST} ^www.bbb.com$

ReWriteRule ^/(.*)$ http://www.test.com/$1 [R=301,L]

ReWriteCond  %{HTTP_USER_AGENT}  ^.*curl.* [NC,OR] #NC 不区分大小写

ReWriteCond  %{HTTP_USER_AGENT}  ^.*chrome* [NC]

ReWriteRule  .* - [F]

</IfModule>

[[email protected] logs]# apachectl -t

Syntax OK

[[email protected] logs]# apachectl restart

[[email protected] logs]# curl -x127.0.0.1:80 www.test.com/data/forum.php

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">

<html><head>

<title>403 Forbidden</title>    #都禁掉了,不能访问

</head><body>

<h1>Forbidden</h1>

<p>You don‘t have permission to access /data/forum.php

on this server.</p>

</body></html>

[[email protected] logs]# curl -x127.0.0.1:80 www.test.com/98989898

<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">

<html><head>

<title>403 Forbidden</title>

</head><body>

<h1>Forbidden</h1>

<p>You don‘t have permission to access /98989898

on this server.</p>

</body></html>

注释掉这一行

#ReWriteCond  %{HTTP_USER_AGENT}  ^.*curl.* [NC,OR] #NC 不区分大小写

就可以访问了。

[[email protected] logs]# curl -x127.0.0.1:80 www.test.com/forum.php -I

HTTP/1.1 200 OK

Date: Fri, 30 Sep 2016 05:54:07 GMT

Server: Apache/2.2.31 (Unix) PHP/5.6.24

X-Powered-By: PHP/5.6.24

Set-Cookie: k1rM_2132_saltkey=uQknMbNM; expires=Sun, 30-Oct-2016 05:54:07 GMT; Max-Age=2592000; path=/; httponly

Set-Cookie: k1rM_2132_lastvisit=1475211247; expires=Sun, 30-Oct-2016 05:54:07 GMT; Max-Age=2592000; path=/

Set-Cookie: k1rM_2132_sid=QvDlTX; expires=Sat, 01-Oct-2016 05:54:07 GMT; Max-Age=86400; path=/

Set-Cookie: k1rM_2132_lastact=1475214847%09forum.php%09; expires=Sat, 01-Oct-2016 05:54:07 GMT; Max-Age=86400; path=/

Set-Cookie: k1rM_2132_onlineusernum=1; expires=Fri, 30-Sep-2016 05:59:07 GMT; Max-Age=300; path=/

Set-Cookie: k1rM_2132_sid=QvDlTX; expires=Sat, 01-Oct-2016 05:54:07 GMT; Max-Age=86400; path=/

Cache-Control: max-age=0

Expires: Fri, 30 Sep 2016 05:54:07 GMT

Content-Type: text/html; charset=gbk

模拟访问

[[email protected] logs]# curl -A welcometobeijingchrome -x127.0.0.1:80 www.test.com/forum.php -I

HTTP/1.1 403 Forbidden

Date: Fri, 30 Sep 2016 05:57:35 GMT

Server: Apache/2.2.31 (Unix) PHP/5.6.24

Content-Type: text/html; charset=iso-8859-1

如果字眼里有 chrome  也是无法访问的。

时间: 2024-07-29 02:24:04

6_Apache 配置 之 禁止指用user_agent的相关文章

Linux 系统安全配置 Debian =&gt; 禁止root SSH登陆+配置SSH Key+配置iptables

Linux 系统安全配置 Debian => 禁止root SSH登陆+配置SSH Key+配置iptables 当我们安装完Linux系统作为服务器后,总有一系列的安全配置需要进行.特别是当你的服务器Ip是对外网开放的话.全世界有很多不怀好意的人,不断试图穷举你的root密码,尝试登陆.那么为Linux服务器增加一些安全措施,是很有必要的.本文基于Debian 9.5. 本文读者需要有一定的linux基础,有一定的网络与英语基础.知道如何使用nano/vim编辑器.不过总体而言,本文是为初级用

Linux学习总结(三十七)lamp之禁止php解析 user_agent 访问控制 php相关配置

一 禁止php解析 为了使某些网站更加安全,防止不法之徒上传某类伪装过的恶意木马文件,(比如php文件),盗取服务器重要资源,我们要针对一些目录做保护,禁止其解析php核心配置文件内容 <Directory /data/wwwroot/www.123.com/upload> php_admin_flag engine off </Directory> 修改虚拟主机配置文件,-t ,graceful 后测试我们发现将123.php放在其他在位置,可以正常解析,放在upload目录下,

11.28-11.31禁止解析php,user_agent,PHP配置

11.28 限定某个目录禁止解析php 由于网站是可以直接执行php程序的,而因为直接执行php程序这个方便快捷的功能,很多别有用心的人会利用这个功能去做一些恶意的行为, 从而这会导致变成一个漏洞,使其网站奔溃,所以我们搭建网站的时候,有必要把某目录php解析功能给关闭掉. 核心配置文件内容 <Directory /data/wwwroot/www.123.com/upload> php_admin_flag engine off </Directory> 检查状态并重新加载. [

Apache 配置禁止指定的 user_agent

User-Agent(浏览器类型),即不让哪些浏览器来访问我们的网站 [[email protected] ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf <VirtualHost *:80> DocumentRoot "/data/www" ServerName www.test.com ErrorLog "logs/test.com_error_log" CustomLog "

apache配置,禁止指定后缀访问

每天都有人来服务器上扫描点什么,想下载点数据库或者什么的 服务器是java的,没有asp或者mdb这样的访问 用一下配置,可以禁止asp或者mdb访问,也可以加上zip和rar禁止 <Directory "C:/java/tomcat-6.0.20/webapps/ROOT"> Options -Indexes FollowSymLinks AllowOverride All <Files ~ ".asp|.mdb"> Order allow

(转)Linux SSH配置和禁止Root远程登陆设置

原文 一.修改vi /etc/ssh/sshd_config 文件 1.修改默认端口:默认Port为22,并且已经注释掉了:修改是把注释去掉,并修改成其它的端口. 2.禁止root用户远程登陆:修改PermitRootLogin,默认为yes且注释掉了:修改是把注释去掉,并改成no. 3.PermitEmptyPasswords   no不允许空密码用户login 二.ssh的公钥认证配置: 修改vi /etc/ssh/sshd_config 文件 RSAAuthentication yes  

配置Linux禁止ping和请允许ping

生产服务器: OS: CentOS release 6.8 (Final) 任务:通过内核参数配置ping 一.临时生效配置方式: 不允许本地ping [[email protected] ~]$ ping  117.40.*.* PING 117.40.*.* (117.40.*.*) 56(84) bytes of data. [[email protected] ~]$ ping 127.0.0.1 PING 127.0.0.1 (127.0.0.1) 56(84) bytes of da

配置server禁止全部非法域名 訪问自己的server

1.Apache2.4.1曾经: 第一种 直接拒绝訪问 打开 httpd.conf  文件,将一下配置追加到文件最后. #直接拒绝全部非法域名 <VirtualHost *:80> ServerName * ServerAlias * <Location /> Order Allow,Deny Deny from all </Location> ErrorLog "/alidata/log/httpd/error.log" CustomLog &qu

利用iptables来配置linux禁止所有端口登陆和开放指定端口

from:http://www.myhack58.com/Article/sort099/sort0102/2011/31781.htm 1.关闭所有的 INPUT FORWARD OUTPUT 只对某些端口开放.下面是命令实现: iptables -P INPUT DROPiptables -P FORWARD DROPiptables -P OUTPUT DROP 再用命令 iptables -L -n 查看 是否设置好, 好看到全部 DROP 了这样的设置好了,我们只是临时的, 重启服务器