返回首页

张小三资源网
    佛系AFFman ╭∩╮(︶︿︶)╭∩╮!随缘记录常用运维技巧
02月212015

nginx防止SQL注入规则

Posted by 张小三资源网 Tags:

$request_uri
This variable is equal to the *original* request URI as received from the client including the args. It cannot be modified. Look at $uri for the post-rewrite/altered URI. Does not include host name. Example: "/foo/bar.php?arg=baz"
这个变量等于从客户端发送来的原生请求URI,包括参数。它不可以进行修改。$uri变量反映的是重写后/改变的URI。不包括主机名张小三资源网。例如:"/foo/bar.php?arg=baz"

02月032015

linux之打造永不宕机的网站全记录

Posted by 张小三资源网 Tags:

在线端A
备份端B

在A和B端运行如下命令
#创建图片备份目录

mkdir -p /liber/img_bk
#创建MySQL全备份目录
mkdir -p /liber/qbk_bk
#创建MySQL增量备份目录
mkdir -p /liber/tbk_bk

在A端运行如下命令

#天备份脚本
touch /usr/sbin/tbk
#全备份脚本
touch /usr/sbin/qbk
#定期删除脚本
touch /usr/sbin/del
#给予脚本执行权限
chmod +x /usr/sbin/tbk
chmod +x /usr/sbin/qbk
chmod +x /usr/sbin/del
#创建MySQL增量备份日志
touch /liber/tbk_bk/tbug.log
#创建MySQL全备份日志
touch /liber/qbk_bk/qbug.log

在B端运行如下命令

#下载A端mysql增量数据脚本
touch /usr/sbin/tubk
#下载A端mysql全数据脚本
touch /usr/sbin/allbk
#还原数据脚本
touch /usr/sbin/hyall
#定时删除脚本
touch /usr/sbin/del
#给予脚本执行权限
chmod +x /usr/sbin/tubk
chmod +x /usr/sbin/allbk
chmod +x /usr/sbin/hyall
chmod +x /usr/sbin/del
##创建备份还原失败日志
touch /liber/nosql.log

在A端编写如下定时备份脚本

编辑mysql增量及图片增量备份脚本vi /usr/sbin/tbk

#!/bin/bash
# Name:day backup
# By zxsdw.com
# Last modify:2015-02-03

user=mysql账号

userPWD=mysql密码

database=数据库名

/usr/local/mysql/bin/mysqladmin -u$user -p$userPWD flush-logs

tbackDir=/liber/tbk_bk

mysqlDataDir=/usr/local/mysql/var

DATE=$(date "-d 1 day ago" +%Y%m%d)

DATE2=$(date "-d 1 day ago" +%y%m%d)

logFile=$tbackDir/tbug.log

TIME=$(date "-d 3 day ago" +%Y%m%d%H%M%S)

StartTime=$(date "-d 1 day ago" +"%Y-%m-%d %H:%M:%S")

#增量备份图片注意图片的目录名必须为150203即%y%m%d只增量备份MYSQL可注释掉。
#tar zcf /liber/img_bk/$DATE2.tar.gz -C /home/wwwroot/xxx/uploads/allimg/ $DATE2

mysql -u$user -p$userPWD -e "purge master logs before ${TIME}"

filename=`cat $mysqlDataDir/mysql-bin.index |awk -F "/" '{print $2}'`
for i in $filename
do
/usr/local/mysql/bin/mysqlbinlog -u$user -p$userPWD -d $database --start-datetime="$StartTime" $mysqlDataDir/$i |gzip >> $tbackDir/suday_$DATE.sql.gz
done

if [ $? = 0 ]
then
cd $tbackDir
echo "$StartTime Day SQL succeed" >> $logFile
else
echo "$StartTime Day SQL fail!!!" >> $logFile
fi

A端创建MySQL全备份脚本vi /usr/sbin/qbk

#!/bin/bash
# Name:all backup
# By zxsdw.com
# Last Modify:2015-02-03
#scriptsDir=/usr/sbin

user=mysql账号

userPWD=mysql密码

database=数据名

qbackDir=/liber/qbk_bk

LogFile=$qbackDir/qbug.log

DATE=$(date "-d 1 day ago" +%Y%m%d)

cd $qbackDir

mysqldump --flush-logs -u$user -p$userPWD --quick $database| gzip >suall_$DATE.sql.gz

echo  "$DATE all SQL Success!" >> $LogFile

A端定期删除几天前备份的mysql增量、图片增量、及mysql全备份数据

vi /usr/sbin/del

#!/bin/bash
# Name:del
# By zxsdw.com
# Last modify:2015-02-03

find /liber/tbk_bk/ -name "*.gz" -type f -mtime +10 -exec rm {} \; > /dev/null 2>&1
find /liber/img_bk/ -name "*.gz" -type f -mtime +10 -exec rm {} \; > /dev/null 2>&1
find /liber/qbk_bk/ -name "*.gz" -type f -mtime +21 -exec rm {} \; > /dev/null 2>&1

在B端编写如下定时备份脚本:

编辑B端下载A端mysql增量备份数据脚本vi /usr/sbin/tubk

#!/bin/bash
# Name:del
# This ia mysql del scripts
# By Cloudsoar
# Last modify:2015-01-21
TIME=$(date "-d 1 day ago" +%y%m%d)
DATE=$(date "-d 1 day ago" +%Y%m%d)

scp -P 端口 root@A的IP:/liber/img_bk/$TIME.tar.gz /liber/img_bk/

scp -P 端口 root@A的IP:/liber/tbk_bk/suday_$DATE.sql.gz /liber/tbk_bk/

编辑B端下载A端mysql全备份数据脚本vi /usr/sbin/allbk

#!/bin/bash
# Name:allbk
# This ia mysql all scripts
# By zxsdw.com
# Last modify:2015-02-03

DATE=$(date "-d 1 day ago" +%Y%m%d)
scp -P 端口 root@A的IP:/liber/qbk_bk/suall_$DATE.sql.gz /liber/qbk_bk/

编辑B端还原下载数据脚本vi /usr/sbin/hyall

#!/bin/bash
# Name:huanyuan
# By zxsdw.com
# Last modify:2015-02-03

user=mysql账号

userPWD=mysql密码

database=数据库名

DATE=$(date "-d 1 day ago" +%Y%m%d)

TIME=$(date "-d 1 day ago" +%y%m%d)

logFile=/liber/nosql.log

#还原备份图片注意图片的目录名格式为150203即%y%m%d只还原增量备份MYSQL可注释掉
#tar zxf /liber/img_bk/$TIME.tar.gz -C /home/wwwroot/xxx/uploads/allimg/

if [ -s /liber/tbk_bk/suday_$DATE.sql.gz ]; then
gunzip < /liber/tbk_bk/suday_$DATE.sql.gz | /usr/local/mysql/bin/mysql -u$user -p$userPWD $database -f
elif [ -s /liber/qbk_bk/suall_$DATE.sql.gz ]; then
gunzip < /liber/qbk_bk/suall_$DATE.sql.gz | /usr/local/mysql/bin/mysql -u$user -p$userPWD $database
else
echo "$DATE no sql back !!!" >> $logFile
fi

定期删除几天前备份的mysql增量、图片增量、及mysql全备份数据

vi /usr/sbin/del

#!/bin/bash
# Name:del
# By zxsdw.com
# Last modify:2015-02-03

find /liber/tbk_bk/ -name "*.gz" -type f -mtime +10 -exec rm {} \; > /dev/null 2>&1
find /liber/img_bk/ -name "*.gz" -type f -mtime +10 -exec rm {} \; > /dev/null 2>&1
find /liber/qbk_bk/ -name "*.gz" -type f -mtime +21 -exec rm {} \; > /dev/null 2>&1

A端定时执行脚本
vi /etc/crontab

#周一到周6凌晨1点增量备份
0 1 * * 1-6 root /usr/sbin/tbk
#周末凌晨1点全备份
0 1 * * 0 root /usr/sbin/qbk
#每天凌晨2点删除N天前备份
0 2 * * * root /usr/sbin/del

B端定时执行脚本
vi /etc/crontab

#周一到周6凌晨2点下载A端增量备份
0 2 * * 1-6 root /usr/sbin/tubk
#周末凌晨2点下载A端全备份
0 2 * * 0 root /usr/sbin/allbk
#周末凌晨3点还原备份
0 3 * * 0 root /usr/sbin/hyall
#每天凌晨4点删除N天前的备份
0 4 * * * root /usr/sbin/del
02月022015

centos性能优化全记录 VPS服务器生产环境必备

Posted by 张小三资源网 Tags:
之前每次装完系统后就是优化,每优化一次都耗费不少时间,这次决定做一个记录,方便自己,也方便收藏张小三资源网的朋友们。基本上所有的VPS或服务器商家都有centos系统,就采用使用更广泛的centos系统做记录吧,虽然小三非常钟情于debian,奈何国内的很多商家抠门的没有debian镜像,我想说不为用户考虑的服务商都不是好商家,因为我曾经想买国内一家比较有名商家的VPS,结果没有debian6,果断放弃了呵呵,完美主义有时真的挺累。

01月202015

mysql完美增量备份脚本

Posted by 张小三资源网 Tags:

是否因为mysql太大,来回备份浪费资源带宽而发愁,如果想解决这个麻烦就需要增量备份,下面是张小三资源网修改的一份mysql的增量备份脚本,我已做了相关注释,大家自行修改下就可以用了。

01月122015

lnmp修改phpmyadmin默认root用户名

Posted by 张小三资源网 Tags:

一般lnmp安装包安装完后,phpmyadmin默认用户名为root。如果你想改变默认的root用户名也很简单,修改下mysql的ROOT用户名即可。从这里可以很清除的知道phpmyadmin只是一个管理工具,可以方便的管理mysql数据。以下为过程。

01月112015

phpmyadmin添加非root用户管理账号

Posted by 张小三资源网 Tags:

前言:phpmyadmin添加非root数据库管理账户安全还是有必要的。通过phpmyadmin可以方便的进行mysql添加删除用户等操作。添加完非root账户后就可以用添加的账户登陆phpmyadmin删除原来的root账户了,对于安全性还是有好处的。

01月032015

军哥lnmp优化加强版,适用于PHP5.2

Posted by 张小三资源网 Tags:

脚本基于centos系统军哥lnmp0.9优化加强而成,适用于PHP5.2版。
在此感谢军哥对开源脚本的无私奉献(军哥lnmp网站www.lnmp.org)
主要修改列表:
1.mysql修改为lnmp1.1中使用的mysql5.1.73(2013.10),目前是mysql5.1系列的最新版本,修复了之前的一些BUG。
2.phpmyadmin修改为适用于php5.2和mysql5系的最新版本phpMyAdmin4.0.10.7(2014.12.3),修复了之前的一些Bug漏洞。
3.nginx使用经典的1.2.9版本,nginx中已添加防空字节解析漏洞规则。
4.memcache使用最后一个版本memcache3.0.8(注:memcache非memcached,对php5.2加速不错,军哥原版的lnmp0.9是默认就安装了memcache的,要安装memcached自行安装就可以了)
5.添加常用的nginx防SQL注入规则。
6.添加屏蔽恶意head user的nginx规则。

评论超过10条放出脚本。没人感兴趣就自用啦,O(∩_∩)O哈哈~。

12月272014

使用密钥登录VPS服务器

Posted by 张小三资源网 Tags:VPS安全设置

linux的默认登录方式是账号和密码登陆,如果改成用密钥登陆的话会相对安全一些,但密钥登陆有利也有弊,想登陆VPS的话必须随身携带密钥文件,如果修改了默认root用户名还要修改相应的对应关系比较繁琐。

张小三资源网 is powered by Typecho))) 网站地图