CentOS和Debian/Ubuntu 安装Fail2ban服务来防止暴力破解FTP/SSH

说明:一般用过VPS的人查一下系统日志,可以参考:通过Auth.log来查看SSH是否被扫,会发现ssh经常被人扫描,多的有几万次,万一被破解会造成很多问题,特别是在上面备份东西和网站的人来说,损失巨大,所以我们要采取一些措施来尽量减少这样的事发生,这里说下通过安装Fail2ban来防止暴力破解。用Fail2ban可以进行FTP/SSH登录频率限制,如果登录尝试多少次的IP地址,然后给予限制。

更多基础的VPS安全设置可参考:修改SSH端口+禁止ROOT登陆,Linux VPS 使用DDOS deflate来抵御DDOS攻击

1、安装Fail2ban
CentOS

yum install epel-release
yum install fail2ban

Debian/Ubuntu

apt-get install fail2ban

2、配置Fail2ban
直接用WinSCP工具或者其它FTP管理工具编辑/etc/fail2ban/jail.conf文件。

ignoreip = 127.0.0.1 #忽略的IP列表,不受设置限制(白名单)
bantime = 600 #屏蔽时间,单位:秒
findtime = 600 #这个时间段内超过规定次数会被ban掉
maxretry = 3 #最大尝试次数
backend = auto #日志修改检测机制(gamin、polling和auto这三种)
[ssh-iptables] #针对各服务的检查配置,如设置bantime、findtime、maxretry和全局冲突,服务优先级大于全局设置
enabled = true #是否激活此项(true/false)
filter = sshd #过滤规则filter的名字,对应filter.d目录下的sshd.conf
action = iptables[name=SSH, port=ssh, protocol=tcp] #动作的相关参数
sendmail-whois[name=SSH, dest=root, sender=fail2ban@example.com] #触发报警的收件人
logpath = /var/log/secure #检测的系统的登陆日志文件
maxretry = 5 #最大尝试次数

启动的时候需要把前面#去掉,然后修改对应的参数。使用service fail2ban start启动服务即可。

建议DDOS deflateFail2ban一起安装尽可能保护我们的服务器。

Linux VPS系统设置时区和同步时间的简单方法

说明:有时候vps时区和时间不一样会出很多问题,这里就不举例了,只说下方法。

1、修改北京时区
这里以修改北京时间作为默认时区,如果有其他需要的,可以对应修改。

rm -rf /etc/localtime #先删除默认的时区设置
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #替换上海/北京作为默认

2、手工修改当前系统的时间

date -s '14:48:00 2015-05-10'

这里,就修改为当前的时间。

3、设置同步时间

ntpdate us.pool.ntp.org

设置同步服务器时间,安装完毕之后,我们用date测试下当前时间。

一般的VPS都有安装NTP,如果没有安装我们需要先安装yum install -y ntp #centos系统

总结,这样我们通过上面的3步骤就快速的实现Linux VPS系统时间与当前需要的时区和时间同步一致,确保项目的正常运行。

VPS FTP快速安装教程

安装vsftpd

apt-get install vsftpd #ubuntu、debian系统
yum install vsftpd     #centos系统

配置

vi /etc/vsftpd.conf

1、对下列信息进行修改,也可以直接进入WinSCP直接操作

#anonymous_enable=YES #注销掉,关闭匿名访问
local_enable=YES 
write_enable=YES #去掉注销,#让本地账号可以访问
local_umask=022 #去掉注销,#设置权限掩码
chroot_local_user=YES #仅允许用户访问自己的路径

2、让root可以访问(可选)

vi /etc/ftpusers

把root去掉

创建 ftp 用户

1、增加一个 ftpgroup 用户组

groupadd ftpgroup

2、增加用户ftpuser,-d 设置其目录为/home/wwwroot/xx.com

useradd -g ftpgroup -d /home/wwwroot/xx.com ftpuser

3、用户必须拥有权限才可以访问,赋予访问/ftp/ftpuser的权限

chmod 777 /home/wwwroot/xx.com

4、设置 ftpuser 密码

passwd ftpuser

5、重启vsftpd

service vsftpd restart

Typecho博客首页和分类页不显示文章全文

方法

1、登陆博客后台,把鼠标移至“控制台”,在下拉菜单中选择“外观”选项
2、在进入的页面中点击“编辑当前外观”
3、在index.phparchive.php文件找到代码

<?php $this->content('阅读剩余部分...'); ?>

将其替换为

<?php $this->excerpt(); ?>

如果要按制摘要的输出字数,可以修改代码为

<?php $this->excerpt(200, '...'); ?>

通过修改200来控制输出的字节

LNMP之php内存和nginx之CPU优化

一、如果你使用的是lnmp默认的安装的php5.2.17sp1版本

/usr/local/php/etc/php-fpm.conf #优化的文件

找到<value name="max_children">,按你的内存容量修改PHP进程的数量,一般128内存开启6个,256内存开启16个。这样能保证,在PHP大并发的情况下不会502错误。

二、如果您升级到了5.3.x版本

/usr/local/php/etc/php-fpm.conf #优化的文件
pm.max_children = 32 #最多运行数量
pm.start_servers = 16 #开机启动数量
pm.min_spare_servers = 16 #最小运行数量
pm.max_spare_servers = 32 #最大运行数量

需要同时修改这些数字,您可以自行定义,参考上述内容即可。

三、Nginx性能优化CPU参数worker_cpu_affinity使用说明
如果2核心:

worker_processes     2;
worker_cpu_affinity 0101 1010;

如果是4核心:

worker_processes     4;
worker_cpu_affinity 0001 0010 0100 1000;

Linux VPS下Nginx与Apache环境防盗链设置方法

说明:很多人的VPS流量有限,有的人在VPS中放了一首MP3用来作为背景音乐,但被搜索引擎列为试听/下载地址,放的图片和文件地址也会别人盗用,可想而知流量会消耗多快,这时候我们需要设置防盗链来阻止这样的事发生。

方法

根据我们搭建的系统环境不同,我们在NginxApache中设置防盗链的方法也是不同的。

1、Nginx防盗链方法:

location ~ .*\.(gif|jpg|jpeg|png|bmp|swf|mp3|wav|zip|rar)$
{
valid_referers none blocked hupsun.com *.hupsun.com;
if ($invalid_referer)
{
return 403;
}
expires 30d;
}

在我们网站所在的配置文件conf中添加以上代码,添加后重启nginx就可以生效,网址替换成自己的。

2、Apache防盗链方法:

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://hupsun.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://hupsun.com$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.hupsun.com/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.hupsun.com$ [NC]
RewriteRule .*\.(gif|jpg|jpeg|png|bmp|swf|mp3|wav|zip|rar)$ http://www.hupsun.com/404.html [R,NC]

把上面代码中的网址替换成自己的,然后提交至网站的根目录.htaccess文件中添加上述代码即可生效。

Typecho博客首页显示文章摘要的方法

说明:Typecho 博客默认没有自动摘要的功能,博客首页和分类归档页面显示的文章都是全文输出的,对于内容文字很多的文章,会把页面拉伸得很长,显示得也不怎么美观。但博主可以在发表文章的时候手动摘要。

方法

在发表文章的时候,在文章内容中添加<!–more–>标签即可。

比如内容一共有五段,要显示前三段,就在第三段结束处添加<!–more–>标签代码

Linux最常用的几个命令

1、top命令 可以实时查看系统状态

top #可以查看内存,cpu运行状态之类

2、wget命令 下载网络文件,例如:

wget http://cachefly.cachefly.net/100mb.test #后面改成需要的下载链接地址

3、chmod命令 #后就是这个命令的说明

chmod +x /home/auto.sh # 赋予auto.sh可执行权限
chmod -R 777 /home/wwwroot # 赋予/home/wwwroot写入权限(部分网站程序安装时需要用到)

4、mv命令 移动文件

mv /home/wwwroot/abc.tar.gz /home/backup # 把abc.tar.gz移动到backup目录

5、rm命令 删除文件

rm test.tar.gz # 删除test.tar.gz,会有提示你确认 y即可
rm -rf /home/wwwroot/test # 无提示直接删除test目录,勿乱用,切记。

6、tar命令 C打包和X解压文件

tar zcvf test.tar.gz /home/wwwroot #把/home/wwwroot打包
tar zxvf test.tar.gz # 在当前目录解压test.tar.gz

7、其它常用的几个

cd 举例:cd /home/wwwroot # 进入某目录
ls # 查看当前目录文件
echo nameserver 8.8.8.8 >> /etc/resolv.conf #设置dns为Google的

Linux解压缩tar.gz和zip文件命令使用方法

说明:Linux解压缩最常见2种压缩文件就是ziptar.gz,所以这里只说说这2种文件解压缩方法。未安装zip和unzip命令请看:Linux 安装zip和unzip命令的方法

方法

1、解压缩tar.gz文件
1、压缩命令

tar zcvf xx.tar.gz /home/wwwroot #把/home/wwwroot打包,并命名xx.tar.gz

2、解压命令

tar zxvf xx.tar.gz #在当前目录解压xx.tar.gz

tar命令详解请看:Linux中tar解压缩命令详解
2、解压缩zip文件
1、压缩命令

zip -r xx.zip /home/xx #压缩/home/xx目录并命名xx.zip

2、解压命令

unzip /home/zz.zip #解压/home文件夹zz.zip文件到当前目录

zip命令详解请看:Linux中zip压缩和unzip解压缩命令详解