仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 447|回复: 8
打印 上一主题 下一主题

[其他Linux] 来看看:nginx假造主机防webshell完善版

[复制链接]
逍遥一派 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 16:04:06 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
要多动手,不要怕什么搞坏了怎么办,你不搞坏,不去动手,就永远不会有收获,既然你在linux中是自由的,那就发挥自己的权利;
我们先来看下nginx.conf
server
{
listen80;
server_namewww.a.com;
indexindex.htmlindex.htmindex.php;
root/data/htdocs/www.a.com/;
#limit_conncrawler20;

location~.*.(php|php5)?$
{
#fastcgi_passunix:/tmp/php-cgi.sock;
fastcgi_pass127.0.0.1:9000;
fastcgi_indexindex.php;
includefcgi.conf;
}
}
server
{
listen80;
server_namewww.b.com;
indexindex.htmlindex.htmindex.php;
root/data/htdocs/www.b.com/;
#limit_conncrawler20;

location~.*.(php|php5)?$
{
#fastcgi_passunix:/tmp/php-cgi.sock;
fastcgi_pass127.0.0.1:9000;
fastcgi_indexindex.php;
includefcgi.conf;
}
}
nginx在80端口承受到会见哀求后,会把哀求转发给9000端口的php-cgi举行处置
而假如修正php.ini中open_basedir=../../../../../,针对两个分歧的网站,www.a.com,www.b.com城市把哀求发送给9000处置,而假如先会见www.a.com那末../../../../../就会酿成A网站的根目次地点,然后这时候候假如你会见www.b.com,那末open_basedir仍旧是A网站的根目次,可是关于B来讲,又是不同意会见的,以是就形成了,第二个站点翻开今后会呈现noinputfiles,那末有甚么办理举措呢?
我们能够把分歧的假造主机发送到分歧的php-cgi端口举行处置,固然呼应的php-fpm设置文件中的open_basedir也分歧。。我们来看看怎样设置。。
起首,nginx.conf设置以下
server
{
listen80;
server_namewww.a.com;
indexindex.htmlindex.htmindex.php;
root/data/htdocs/www.a.com/;
#limit_conncrawler20;

location~.*.(php|php5)?$
{
#fastcgi_passunix:/tmp/php-cgi.sock;
fastcgi_pass127.0.0.1:9000;
fastcgi_indexindex.php;
includefcgi.conf;
}
}
server
{
listen80;
server_namewww.b.com;
indexindex.htmlindex.htmindex.php;
root/data/htdocs/www.b.com/;
#limit_conncrawler20;

location~.*.(php|php5)?$
{
#fastcgi_passunix:/tmp/php-cgi.sock;
fastcgi_pass127.0.0.1:9001;
fastcgi_indexindex.php;
includefcgi.conf;
}
}
注重:www.a.com的哀求发送到9000端口,www.b.com的哀求发送到9001端口,顺次类推
nginx设置修正了,绝对的,php-fpm.conf也要修正
每一个站点建一个conf

A站点
#cp/usr/local/webserver/php/etc/php-fpm.conf/usr/local/webserver/php/etc/www.a.com.conf
#vi/usr/local/webserver/php/etc/www.a.com.conf
找到php_defines,增加
<valuename="open_basedir">/data/htdocs/www.a.com:/tmp:/var/tmp</value>



B站点
#cp/usr/local/webserver/php/etc/php-fpm.conf/usr/local/webserver/php/etc/www.b.com.conf
#vi/usr/local/webserver/php/etc/www.b.com.conf
找到php_defines,增加
<valuename="open_basedir">/data/htdocs/www.b.com:/tmp:/var/tmp</value>


找到listen_address,修正为
<valuename="listen_address">127.0.0.1:9001</value>注重这里的端标语


最初要修正php-fpm启动剧本
#vi/usr/local/webserver/php/sbin/php-fpm

正文失落本来的#$php_fpm_BIN--fpm$php_opts,增加
$php_fpm_BIN--fpm--fpm-config/usr/local/webserver/php/etc/www.a.com.conf
$php_fpm_BIN--fpm--fpm-config/usr/local/webserver/php/etc/www.b.com.conf
启动服务
#/usr/local/webserver/php/sbin/php-fpmrestart
检察端口
#netstat-tln

开了90009001分离处置两个站点哀求
两个php-cgi主历程加载分歧的conf文件,如许就完善办理了假造主机webshell能跨目次的成绩
固然,启动之前记得conf内里的max_children,开启php-cgi子历程数,响应要削减一些,以避免形成内存不敷

文章DoDosBlog
原文地点:http://www.sectop.com/post/35.html

学习python,无论你是打算拿他当主要开发语言,还是当辅助开发语言,你都应该学习他,因为有些时间我们耗不起。
再见西城 该用户已被删除
沙发
发表于 2015-1-18 16:29:55 | 只看该作者
尽我能力帮助他人,在帮助他人的同时你会深刻巩固知识。
变相怪杰 该用户已被删除
板凳
发表于 2015-1-25 18:00:22 | 只看该作者
即便是非英语国家的人发布技术文档,Linux也都首先翻译成英语在国际学术杂志和网络上发表。
再现理想 该用户已被删除
地板
发表于 2015-2-3 12:46:33 | 只看该作者
了解Linux的网络安全,系统的安全,用户的安全等。安全对于每位用户,管理员来说是非常重要的。
莫相离 该用户已被删除
5#
发表于 2015-2-9 02:34:42 | 只看该作者
另外Linux上也有很多的应用软件,安装运行了这些软件后,你就可以在Linux上编辑文档、图?片,玩游戏、上网、播放多媒体文件等。
简单生活 该用户已被删除
6#
发表于 2015-2-26 19:06:35 | 只看该作者
感谢老师和同学们在学习上对我的帮助。
愤怒的大鸟 该用户已被删除
7#
发表于 2015-3-8 17:04:07 | 只看该作者
尽量不要提问纯属是扯蛋.学习Linux特别是自己一个人初学入手的时候没人教很困难.当然如果可以的话平时多去买些Linux书...对学习Linux很有帮助.
若天明 该用户已被删除
8#
发表于 2015-3-16 07:55:31 | 只看该作者
尽量不要提问纯属是扯蛋.学习Linux特别是自己一个人初学入手的时候没人教很困难.当然如果可以的话平时多去买些Linux书...对学习Linux很有帮助.
飘飘悠悠 该用户已被删除
9#
发表于 2015-3-22 21:37:27 | 只看该作者
说实话小时候没想过搞IT,也计算机了解也只是一些皮毛,至于什么UNIX,Linux,听过没见过,就更别说用过了。?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-1 19:29

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表