4.18 php相关配置,限制user_agent,禁止php解析

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了4.18 php相关配置,限制user_agent,禁止php解析相关的知识,希望对你有一定的参考价值。

禁止php解析

对于使用php语言编写的网站,有一些目录是需要上传文件的,如果网站有漏洞,让黑客上传了一个用php代写的木马,由于网站可以执行php程序,最终会让黑客拿到服务器权限,为了避免这种情况发生,我们需要把能上传文件的目录直接禁止解析php代码。

<Directory /data/wwwroot/111.com/upload>
php_admin_flag engine off
<FileMatch (.).php(.)>
Order allow,deny
Deny from all
</FileMatch>
</Directory>
这样做可以双保险,既不能解析php,又不能访问。

单纯禁止解析php
curl -x192.168.1.107:80 111.com/upload/123.php
<?php
echo "123.php";(这个结果就是禁止解析php的结果,直接显示了源代码)

限制user_agent

有时候我们网站会受到cc攻击,它的原理很简单,就是用很多用户的电脑同时访问同一个站点,当访问量达到了一定的层次,站点就会耗尽服务器的资源,从而使之不能正常的提供服务。这种cc攻击的规律很明显,其中恶意请求的user_agent相同或者相似,那么我们就可以通过限制user_agent发挥防攻击作用。
具体做法:

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} .curl. [NC,OR]
RewriteCond %{HTTP_USER_AGENT} .baidu.com. [NC]
RewriteRule . - [F]
</IfModule>
其中OR表示或者,NC 表示忽略大小写。
RewriteRule .
- [F] 这句表示重写规则被禁止, 其中F表示Forbidden(禁止)

php相关配置

查看php配置文件的位置
/usr/local/php/bin/php -i|grep -i "loaded configuration file"
定义时区
date.timezone 我们可以写Asia/shanghai或者chongqing
安全函数
disable_functions
常见的不安全函数
eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,passthru,exec,system,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,leak,popepassthru,stream_socket_server,popen,proc_open,proc_close
日志相关
error_log, log_errors, display_errors, error_reporting

以上是关于4.18 php相关配置,限制user_agent,禁止php解析的主要内容,如果未能解决你的问题,请参考以下文章

禁止解析某目录的php,限制访问user_agent,php相关配置

限定某个目录禁止解析php 限制user_agent php相关配置

LAMP(7限定某个目录禁止解析php 限制user_agent PHP相关配置PHP扩展模块

11.28 限定某个目录禁止解析php 11.29 限制user_agent 11.30/11.31

11.28限定某个目录禁止解析php11.29限制user_agent11.30-31php相关配置

11.28 限定某个目录禁止解析php 11.29 限制user_agent 11.30/11.31 php相关配置