Everything for Server

6,Feb,2012 | (14/0)Windows下的Memcache安装

很多phper不知道如何在Windows下搭建Memcache的开发调试环境,最近个人也在研究Memcache,记录下自己安装搭建的过程。
其实我开始研究Memcache的时候并不知道居然还有memcached for Win32这个鸟东西,害得我在CnetOS下折腾1天才搞定,今天突然发现Windows下的Memcache进行开发调试完全没有问题,所以写篇Memcache的文档分享给大家。

Windows下的Memcache安装:
1. 下载memcache的windows稳定版,解压放某个盘下面,比如在c:\memcached
2. 在终端(也即cmd命令界面)下输入 'c:\memcached\memcached.exe -d install' 安装
3. 再输入: 'c:\memcached\memcached.exe -d start' 启动。NOTE: 以后memcached将作为windows的一个服务每次开机时自动启动。这样服务器端已经安装完毕了。
4.下载php_memcache.dll,请自己查找对应的php版本的文件
5. 在C:\winnt\php.ini 加入一行 'extension=php_memcache.dll'
6.重新启动Apache,然后查看一下phpinfo,如果有memcache,那么就说明安装成功!


memcached的基本设置:

引用

-p 监听的端口 -l 连接的IP地址, 默认是本机 -d start 启动memcached服务 -d restart 重起memcached服务 -d stop|shutdown 关闭正在运行的memcached服务 -d install 安装memcached服务 -d uninstall 卸载memcached服务 -u 以的身份运行 (仅在以root运行的时候有效) -m 最大内存使用,单位MB。默认64MB -M 内存耗尽时返回错误,而不是删除项 -c 最大同时连接数,默认是1024 -f 块大小增长因子,默认是1.25 -n 最小分配空间,key+value+flags默认是48 -h 显示帮助



Memcache环境测试:
运行下面的php文件,如果有输出This is a test!,就表示环境搭建成功。开始领略Memcache的魅力把!
< ?php
$mem = new Memcache;
$mem->connect("127.0.0.1", 11211);
$mem->set('key', 'This is a test!', 0, 60);
$val = $mem->get('key');
echo $val;
?>

3,Feb,2012 | (12/0)Windows 7终端管理

    个人感觉很好用推荐给大家用,特别是IT工作者,平时做事很多地方用到远程桌面,可以提高效率.    

       经常使用远程桌面管理众多服务器的朋友们可能都使用过Windows MMC中的“远程桌面”功能,使用它可以很容易的保存N多远程桌面连接,而不用每次需要连接某台服务器时重复的Alt+R、mstsc。Windows工作站操作系统MMC中默认是没有“远程桌面”这个功能模块的,需手动添加,WinXp可以安装Srv2003的管理包或手动复制2003 system32下的mstsmmc.dll 和 mstsmhst.dll 并注册后即可在MMC中添加并使用该功能。
而Win7照搬Xp下的操作办法显然不可行,好在微软给出了解决方案,搜了半天才找到。
1.去MS中国下载“Windows 7 远程服务器管理工具”,KB958850,200多M,
下载地址
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=7d2f6ad7-656b-4313-a005-4e344e43997d
2.安装完成后依次打开“控制面板”-“程序和功能”-“打开或关闭Windows功能”-“远程服务器管理工具”-“角色管理工具”,勾选下面的“远程桌面服务工具。

3.此时重新打开MMC控制台,添加管理单元时就可以选择并添加“远程桌面”管理单元了。
一、MRTG需要以SNMP服务为基础,所以请确保你的系统已经启用了此服务(关于SNMP协议请参考:SNMP简介和MRTG监控过程)

1.请确保你的系统安装了以下软件包
net-snmp-5.0.6-17
net-snmp-devel-5.0.6-17
net-snmp-utils-5.0.6-17
使用YUM –y install net-snmp
Yum –y install net-snmp-devel
Yum –y install net-snmp-utils
MRTG是个很过时的东西.现在大多都用RRD,但配置有点麻烦,当然,用Cacti之类还是相当方便.但我在这使用MRTG原因有三.
1.我只有一台机器要用,比如我的个人网站.为了一个小服务器搞个cacti不值.象这样MRTG还是很方便的.
2.就算大面积使用Cacti加RRD还是有必要在本机运行一个可以直接查看的网页比较方便.方便运维排错.
3.可以在一个节点的一台机器上装一个MRTG,然后加上那个节点后面所有的机器,这样可以显示每个节点的流量,方便节点排错.


MRTG的全称叫 Multi Router Traffic Grapher 可以监控很多东西,今天我们就用它来监控我小小的个人网站的流量.节点之类多设备的设置后面也可以参考一下.

18,Jan,2012 | (34/0)Nginx访问控制

一般网站的后台都不能给外部访问,所以要添加IP限制,通常只允许公司的IP访问
限制整个域名访问就要server下添加:
server {
listion 80;
server_name lihuipeng.blog.51cto.com;
root /opt/htdocs/www;

allow   100.100.100.100;
deny    all;

还可以做到PHP的解释限制:
location ~ .*\.php?$
{
allow   100.100.100.100;
deny    all;
fastcgi_pass  127.0.0.1:9000;
fastcgi_index index.php;
include fcgi.conf;
}

除了限制IP之然还可以给域名添加帐号码密验证:
server {
listion 80;
server_name lihuipeng.blog.51cto.com;
root /opt/htdocs/www;

allow   100.100.100.100;
deny    all;
auth_basic “lihuipeng website”;
auth_basic_user_file htpasswd;

location ~ .*\.php?$
{
….
}

htpasswd 这个密码很眼熟吧,就是用apache生成的,也有在线生成htpasswd的!

18,Jan,2012 | (34/0)Nginx限制带宽

用Nginx做下载服务的时候,可能会做下载速度限制,这个Nginx可以做到:
首先在http{}的配置中添加一条:
limit_zone one $binary_remote_addr 10m;然后在server{}的配置中添加:
location / {
  limit_conn one 1;  限制线程
  limit_rate 100k;     限制速度
}
表示限速100K每个客户端只允许一个线程

客户端最终速度=rate * conn,这样就可以完美的实现限制带宽的设置了。
在nginx.conf中加入:


  server {
                listen 80;
                server_name _;
                return 404;
        }


加在所有server的前面!
然后重启服务!
系统环境:rhel4.7、centos5.5
1、马上看看所需软件
mysql-5.0.92.tar.gz
libiconv-1.13.tar.gz
libxml2-2.6.31.tar.gz
jpegsrc.v6b.tar.gz
freetype-2.3.5.tar.gz
zlib-1.2.3.tar.gz
libpng-1.2.40.tar.gz
gd-2.0.35.tar.gz
libmcrypt-2.5.7.tar.gz
php-5.2.17.tar.gz
php-5.2.17-fpm-0.5.14.diff.gz
pcre-8.01.tar.gz
nginx-0.9.5.tar.gz
memcache-2.2.5.tgz
eaccelerator-0.9.5.3.tar.bz2
呼拉拉,一大堆软件,马上看看怎么安装这一大堆软件!
linux nginx php木马排查及加固整理
1、改变目录和文件属性,禁止写入
find -type f -name \*.php -exec chmod 444 {} \;
find -type d -exec chmod 555 {} \;
注:当然要排除上传目录、缓存目录等;
同时最好禁止chmod函数,攻击者可通过chmod来修改文件只读属性再修改文件
2、php配置
禁用危险函数
passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,
ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,popen,dl,
syslog,show_source
3、nginx配置
限制一些目录执行php文件
  location~^/images/.*\.(php|php5)$
  {
  denyall;
  }
  
  location~^/static/.*\.(php|php5)$
  {
  denyall;
  }
  location~*^/data/(attachment|avatar)/.*\.(php|php5)$
  {
  denyall;
  }
  注:这些目录的限制必须写在
   location~.*\.(php|php5)$
    {
     fastcgi_pass127.0.0.1:9000;
     fastcgi_indexindex.php;
     include fcgi.conf;
    }
   的前面,否则限制不生效

path_info漏洞修正:
  在通用fcgi.conf顶部加入
  if ($request_filename ~* (.*)\.php) {
  set $php_url $1;
  }
  if (!-e $php_url.php) {
  return 404;
  }
4、木马查找
  php木马一般含有或者
  find /data/wwwroot/* -type f -name "*.php" |xargs grep "eval(" > /root/scan.txt
  
  还有
   常见的一句话后门:
   grep -r --include=*.php  '[^a-z]eval($_POST' . > grep.txt
   grep -r --include=*.php  'file_put_contents(.*$_POST\[.*\]);' . > grep.txt
  
   把搜索结果写入文件,下载下来慢慢分析,其他特征木马、后门类似。有必要的话可对全站所有文件来一次特征查找,上传图片肯定有也捆绑的,来次大清洗。
5、查找近3天被修改过的文件:
find /data/www -mtime -3 -type f -name \*.php
  注意:攻击者可能会通过touch函数来修改文件时间属性来避过这种查找,所以touch必须禁止
Apache:

httpd -t //检查配置是否正确
service httpd reload //重新加载配置

Nginx:

1) nginx -t; nginx -s reload
2) nginx -t
ps aux |grep nginx //查找master process pid
kill -HUP

nginx -t 检查nginx配置的语法,操作前都要检查一下,很重要,发现错误可及时修正.
1.1下载模块:
memc-nginx-module
下载地址: https://github.com/agentzh/memc-nginx-module/downloads
srcache-nginx-module
下载地址: https://github.com/agentzh/srcache-nginx-module/downloads
ngx_http_upstream_keepalive
下载地址: http://mdounin.ru/hg/ngx_http_upstream_keepalive/
解压在Nginx安装目录的同级目录下。
接着添加google-perftools-module模块,用来优化高并发时的内存管理性能
先安装 libunwind

# wget http://download.savannah.gnu.org/releases/libunwind/libunwind-1.0.1.tar.gz
# CFLAGS=-fPIC ./configure --prefix=/usr
# make CFLAGS=-fPIC
# make CFLAGS=-fPIC install
再安装 google-perftools
禁止wordpress目录的上传目录执行PHP


location ~* ^/wp-content/(uploads|cache)/.*\.php$ {
        deny all;
}


举一反三.
分页: 1/8 第一页 1 2 3 4 5 6 7 8 下页 最后页 [ 显示模式: 摘要 | 列表 ]