ssh免密码登录
最近在服务器与服务器之间传文件,老是输入密码让我很烦躁,决定采用ssh key的方式来进行无密码互传,好了,看教程吧.
系统:centos 5.4
客户机A:192.168.1.253
远端主机B:192.168.1.254
原理:密钥相当于一把钥匙,而公钥就相当于一把门锁,我们当然是拿着钥匙去开锁,同样的道理,我们密钥放在本地服务器,也就是客户机A,把公钥放在远程服务器,也就是远端主机B,那么我们就可以从客户机A ssh免密码登陆远端主机B.
1.如果用户主目录下没有.ssh文件夹,可以执行以下命令
使用webalizer分析nginx访问日志(解决中文图片乱码)
今天给一台vps从apache迁移到nginx平台时,发现卸载的时候居然有webalizer,让我想起了以前群里讨论用webalizer来查看nginx的日志,因为当时是英文的,所以决定自己来安装一次并解决中文乱码问题.
系统:centos 5.6
需要的软件包:webalizer-2.23-05-src.tgz
1.下载并安装webalizer
wget -c ftp://ftp.mrunix.net/pub/webalizer/webalizer-2.23-05-src.tgz
tar xf webalizer-2.23-05-src.tgz && cd webalizer-2.23-05
cd lang 进入语言目录
找到webalizer_lang.simplified_chinese 将文件格式转化为utf-8,可以借助外部工具,修改后放回即可.这里我使用EditPlus 3进行格式转换,大家可以去网上下载一些软件,将文件格式转换即可,如无需汉化,此步骤可略过.
cd ../
yum -y install fonts-chinese 安装中文字体
vi graphs.c 打开graphs.c,将下述代码添加到最后一行,如图....
Linux shell快速查找PHP木马
一句话查找PHP木马
- # find ./ -name "*.php" |xargs egrep "phpspy|c99sh|milw0rm|eval\(gunerpress|eval\(base64_decoolcode|spider_bc"> /tmp/php.txt
- # grep -r --include=*.php '[^a-z]eval($_POST' . > /tmp/eval.txt
- # grep -r --include=*.php 'file_put_contents(.*$_POST\[.*\]);' . > /tmp/file_put_contents.txt
- # find ./ -name "*.php" -type f -print0 | xargs -0 egrep "(phpspy|c99sh|milw0rm|eval\(gzuncompress\(base64_decoolcode|eval\(base64_decoolcode|spider_bc|gzinflate)" | awk -F: '{print $1}' | sort | uniq
查找最近一天被修改的PHP文件
- # find -mtime -1 -type f -name \*.php
修改网站的权限
- # find -type f -name \*.php -exec chmod 444 {} \;
- # find ./ -type d -exec chmod 555{} \;
淘宝Web服务器Tengine正式开源
我们很高兴的宣布由淘宝网核心系统部开发的Tengine 服务器终于正式开源了。
淘宝网是亚洲最大的电子商务网站,Alexa全球排名第12位。每天访问淘宝网的PV超过了几十亿。大压力的访问,对淘宝网的Web服务器提出了严苛的要 求。经过一系列的对比,我们最终选择了Nginx作为我们的Web服务器,因为它性能高,又非常节省资源(CPU和内存),并且有足够的灵活性。
一 开始我们使用Nginx还仅仅用它来处理静态文件、PHP等,接着我们又在Nginx上开发了几十个各种用途的模块。随着对Nginx的越来越了解,我们 发现它本身已经不能够完全满足我们的需求了,所以我们就开始对Nginx核心进行定制和开发。考虑到我们开发的功能中的一些对其它的互联网用户也可能有用 处,所以我们就想到了把这些公用的功能开源出来。淘宝网是开源软件的用户和受益者,我们也想成为开源软件的贡献者。这就是我们决定开源Tengine的原 因。
Tengine基于最新的Nginx稳定版(Nginx-1.0.10),在它的基础上开发了一些功能和做了一些bug修复,比如 ...
用.htaccess设置PHP错误显示(转)
今天在网上看到使用.htaccess可以在某种程度上更改PHP的错误显示的设置,实际上相当于更改PHP.ini的参数,很是方便。将以下相应代码放到对应目录中的.htaccess文件,即可实现相应功能。
关闭错误显示:
php_flag display_startup_errors off php_flag display_errors off php_flag html_errors off php_value docref_root 0 php_value docref_ext 0
只显示PHP错误:
php_flag display_errors on php_flag display_startup_errors on php_value error_reporting 2047
其中,“2047”为要显示的错误的级别,详细表格如下:
1 E_ERROR 2 E_WARNING 4 E_PARSE 8 E_NOTICE 16 E_CORE_ERROR 32 E_CORE_WARNING 64 E_COMPILE_ERROR 128 E_COMPILE_WARNING 256 E_USER_ERROR 512 E_USER_WARNING 1024 E_USER_NOTICE 2047 E_ALL 2048 E_STRICT 4096 E_RECOVERABLE_ERROR
要把错误保存到日志文件中,可以这样设置...
linux xen vps修改系统时间
有时候,买到的Xen Linux VPS不但时区不对,而且系统时间还相差很大,有时候会相关几小时.
如何修改Xen Linux VPS 时间呢?需要使用ntp时间同步软件来同步VPS系统时间.(如果你的是Xen VPS 或者是独立服务器,那么就可以修改,如果是OpenVZ VPS,则不能修改时间,只能叫机房修改母服务器的时间.)
如何查看Xen LINUX VPS时区?
date -R
得到结果类似下面:
Sun, 27 Nov 2011 21:23:54 +0800
如果最后面的一段不是+0800,那么你需要设置一下时区了,设置Xen LINUX 时区方法如下....
centos使用ss5搭建socks5代理
上次我用kingate搭建了socks5代理,这次直接使用s5来搭建socks5代理,具体教程看下面.
系统:centos5.6
需要的软件:ss5-3.8.9-2.tar.gz
1.安装gcc和make,并安装ss5的依赖包
yum -y install pam-devel openldap-devel cyrus-sasl-devel gcc automake make openssl openssl-devel
2.下载ss5并编译安装
wget -c http://sourceforge.net/projects/ss5/files/ss5/3.8.9-2/ss5-3.8.9-2.tar.gz/download
大家不要去下rpm包,如图
tar zxf ss5-3.8.9-2.tar.gz && cd ss5-3.8.9
./configure && make && make install
安装好了,要取消默认对socks4的支持
mv /usr/lib/ss5/mod_socks4.so /usr/lib/ss5/mod_socks4.so.bk
3.对ss5进行配置
编译安装的配置文件在/etc/opt/ss5下...
centos使用kingate搭建Socks5代理
这周国内到美国的骨干网有问题,连接美国的服务器和vps都很慢,同事都在闹访问在美国的网站很慢,为了解决问题,决定使用代理,不使用vpn的原因是不让他们经常在网络中切换,对带宽的影响也小点.
系统:centos 5.2
需要的软件:kingate-2.0.tar.gz kingate.init.d
1.确认安装了gcc和make,如果没有就运行下面的命令
yum install make automake gcc gcc-c++ gcc-g77 -y
2.安装并配置kingate
wget http://softlayer.dl.sourceforge.net/project/kingate/kingate/2.0/kingate-2.0.tar.gz
tar zxf kingate-2.0.tar.gz && cd kingate-2.0
./configure --prefix=/usr/local/kingate
make && make install
如果没有报错就可以开始配置
vi /usr/local/kingate/etc/kingate.conf
如果你怕整错可以执行下面的命令
cp /usr/local/kingate/etc/kingate.conf /usr/local/kingate/etc/kingate.conf.bak
kingate.conf里的内容....
ssh连接的时候出现Host key verification failed.
今天在服务器上执行远程操作命令出现以下的问题:
[root@www ~]# ssh 205.209.161.**
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that the RSA host key has just been changed.
The fingerprint for the RSA key sent by the remote host is
6c:74:2a:d5:ae:2b:76:51:*:*.
Please contact your system administrator.
Add correct host key in /root/.ssh/known_hosts to get rid of this message.
Offending key in /root/.ssh/known_hosts:20
RSA host key for 205.209.161.** has changed and you have requested strict checking.
Host key verification failed....
varnish 400 503错误的原因及解决方法(转)
我们在生产环境中尝试使用varnish替代squid的主要原因:
1. squid不支持多核cpu, 生产环境中大多使用Dell R610系列,这种类型机器配置为2个4核双线程cpu, 操作系统识别为16个,对squid来说,只能利用到一个逻辑cpu, 其它15个逻辑cpu相当于一直浪费!
2. squid无法批量清除缓存
3. squid3.0目前还无法支持http 1.1, 这对一些管理调整(如gzip压缩,cache-control)带来不必要的麻烦
4. 目前我还未找到squid的grace模式(指源站不可到达时,继续使用过期缓存为用户提供服务),而varnish是完全支持的。
5. 经过生产环境数个月反复测试,同样访问量情况下,varnish消耗的更少,也没有出现过崩溃情况,而squid因为不支持多核,导致Dell R610机器负载往往超过4,但使用varnish后,机器负载从来没超过1.5
经过反复测试,我们已经开始在日独立IP百万级站点中使用varnish替换squid了。
但这个过程中,充满太多未知情况,目前我们所遇到的关键问题下:
1. 高流量情况下iptables丢包....