2016年6月

优秀的免费VPS加速方案——锐速

锐速是一款非常不错的TCP底层加速软件,可以非常方便快速地完成服务器网络的优化,配合 ShadowSocks 效果奇佳。目前锐速官方也出了永久免费版本,适用带宽20M、3000加速连接,个人使用是足够了。如果需要,先要在锐速官网注册个账户。

注意:由于业务调整,即日起,锐速将暂停用户注册与安装。 如有疑问,请咨询客服QQ。”这是官方的公告,现在锐速停止了服务,无法在新机器上安装锐速了以前装过的可以看锐速的授权信息是否还有绑定信息,估计着会降低免费套餐的加速宽带甚至直接取消免费套餐吧。。。

然后确定自己的内核是否在锐速的支持列表里,如果不在,请先更换内核,如果不确定,请使用 手动安装

Tip:OpenVZ并不支持锐速,所以搬瓦工也不支持。如果丢包严重可以参考OpenVZ虚拟化 丢包优化教程——NetSpeed

锐速并非支持所有的版本,所以的安装之前一定要确定系统内核支持锐速。


首先下载Putty,然后输入IP和端口(默认22)后点击Open连接VPS。

然后登陆VPS,第一次登陆会提示你一个信息框,点是(Yes)就行了。

账号都是root(小写),密码一般在控制台有生成或更改的地方。输入密码的时候不会显示出来,但是实际是在输入的。

然后就可以输入下面的代码,一步一步来!一行一行来!

Tip:右键可以粘贴!

内核检测

查看linux支持内核列表

使用uname -a命令来查询内核版本,例如返回的是Linux ss 3.8.0-35-generic3.8.0-35-generic就是内核版本

这里顺便说一下linode VPS仅支持debian7系统,在选择内核时请选择3.14.5-x86_64-linode42版本,这个版本才能安装锐速。

安装步骤

确定自己的内核版本在支持列表里,就可以使用以下命令快速安装了。

  1. wget http://my.serverspeeder.com/d/ls/serverSpeederInstaller.tar.gz
  2. tar xzvf serverSpeederInstaller.tar.gz
  3. bash serverSpeederInstaller.sh

输入在官网注册的账号密码进行安装(没有的请注册),参数设置直接回车默认即可。

最后两项输入y开机自动启动锐速,y立刻启动锐速。之后可以通过lsmod命令查看是否有appex模块在运行。

开启高级算法

一些KVM/XEN的VPS上支持高级算法,所以我们可以修改锐速的3个参数来开启,vi /serverspeeder/etc/config

  1. rsc="1" #RSC网卡驱动模式
  2. gso="1"
  3. maxmode="1" #最大传输模式

使用命令

  1. #重启锐速
  2. /serverspeeder/bin/serverSpeeder.sh restart
  3. #启动锐速
  4. /serverspeeder/bin/serverSpeeder.sh start
  5. #停止锐速
  6. /serverspeeder/bin/serverSpeeder.sh stop
  7. #查看锐速运行情况
  8. /serverspeeder/bin/serverSpeeder.sh status

删除锐速

  1. #脚本删除,如果不行就用下面的强制删除
  2. ./serverSpeederInstaller.sh uninstall
  3. 强制删除
  4. rm-rf/serverspeeder


其他的优化方案:Linux上的shadowsocks服务端优化方法OpenVZ虚拟化 丢包优化教程——NetSpeed

 

(转:逗比根据地http://www.dou-bi.com/)

Linux上的shadowsocks服务端优化方法

首先,你的Linux内核是3.5或更高版本。(搬瓦工不支持

以下步骤涉及到编辑文件,这个需要vim或者其他的编辑工具,如果不会使用就看这个教程


首先下载Putty,然后输入IP和端口(默认22)后点击Open连接VPS。

然后登陆VPS,第一次登陆会提示你一个信息框,点是(Yes)就行了。

账号都是root(小写),密码一般在控制台有生成或更改的地方。输入密码的时候不会显示出来,但是实际是在输入的。

然后就可以输入下面的代码,一步一步来!一行一行来!

Tip:右键可以粘贴!

第1步,提高打开文件描述符的最大数量

为了处理数千个并发的TCP连接,我们应该增加打开文件描述符的限制。

编辑limits.conf

  1. vi/etc/security/limits.conf

添加这两行,如果不知道添加到哪里,就添加到最上面或者最下面。

  1. *soft nofile51200
  2. *hard nofile51200

然后,你开始shadowsocks服务器之前,首先设置的ulimit

  1. ulimit-n51200

第2步,调整内核参数

修改这个文件/etc/sysctl.conf

  1. vi /etc/sysctl.conf

添加下面这些内容,如果不知道添加到哪里,就添加到最上面或者最下面。

  1. fs.file-max= 51200
  2.  
  3. net.core.rmem_max= 67108864
  4. net.core.wmem_max= 67108864
  5. net.core.netdev_max_backlog= 250000
  6. net.core.somaxconn= 4096
  7.  
  8. net.ipv4.tcp_syncookies= 1
  9. net.ipv4.tcp_tw_reuse= 1
  10. net.ipv4.tcp_tw_recycle= 0
  11. net.ipv4.tcp_fin_timeout= 30
  12. net.ipv4.tcp_keepalive_time= 1200
  13. net.ipv4.ip_local_port_range= 10000 65000
  14. net.ipv4.tcp_max_syn_backlog= 8192
  15. net.ipv4.tcp_max_tw_buckets= 5000
  16. net.ipv4.tcp_fastopen= 3
  17. net.ipv4.tcp_mem= 25600 51200 102400
  18. net.ipv4.tcp_rmem= 4096 87380 67108864
  19. net.ipv4.tcp_wmem= 4096 65536 67108864
  20. net.ipv4.tcp_mtu_probing= 1
  21. net.ipv4.tcp_congestion_control=hybla

当然,记得要执行sysctl -p重新加载配置。

其实添加的位置在哪里不重要,只是很多人问我要添加到哪里,那我干脆截个图算了,记得添加的代码要和其他的代码分开,也就是上下都回车键隔开一行!

(zhuan:doubigenjudi)

SS-Panel教程——新手扩展篇(数据库和后台介绍)

数据库

首先介绍SS数据库各个表的功能。

invite_code表

这里面显示的是目前存在的邀请码。

  1. code          //邀请码;
  2. user          //这个邀请码是在对应用户(序号)的邀请好友页面显示的!

ss_node表

这个表是关于节点信息的。

  1. node_nameuser          //节点名称,往往都是以节点所在地区命名(比如:日本、洛杉矶);
  2. node_typeuser        //节点类型/分类,就是SS节点列表的普通节点列表和Pro节点列表(往往Pro都是增强版的节点,理性分类更便于用户分清质量);
  3. node_server            //节点IP,也可以是域名(大多都是域名形式的,好记);
  4. node_method           //节点加密方式,这个要和后端config.json里的加密类型设置一致!
  5. node_info             //节点描述,这个我就不多说了;
  6. node_status           //节点状态,这个只是给用户看的(比如:可用就是正常能用,维护就是出了故障暂停了。)
  7. node_order             //节点顺序,这个影响SS-Panel前端节点列表的排列!

ss_reset_pwd表

这个是重置密码的相关设置,不需要管!

ss_user_admin表

这个表是设置管理员的,管理员可以登陆后台(前后台账号是通用的)!

添加管理员的方法:点击复制,然后在新页面的uid空值处填写用户的id,点击执行!(用户id请看下面)

user表

这个表显示的就是SS站注册用户的信息。

  1. uid                         //用户的序号id;
  2. user_name                 //用户的昵称/用户名;
  3. email                     //用户的注册邮箱;
  4. pass                       //用户的密码,这里的密码是MD5加密的,新版的SS-Panel更是用了加密度更高的带salt的Sha256加密(所以管理员也是无法看见用户密码的!);
  5. passwd                   //用户的SS链接密码;
  6. t                           //SS最后使用时间;
  7. u                       //SS已上传流量;
  8. d                       //SS已下载流量;
  9. plan                   //套餐,不过这方面并没有完善,所以没用。保留字段;
  10. transfer_enable           //总流量;
  11. port                 //SS链接端口
  12. enable                   //启用或禁用ss帐号(1启用,0禁用)

数据库介绍完了,下面该说SS-Panel后台了!

SS-Panel后台

首先打开后台:你的域名/admin/index.php

目前的后台挺简陋的,不过大部分操作还是可以完成的!

节点列表

在这里你可以添加删除/编辑节点!

上面数据库的ss_node表我已经介绍了,大家应该能理解了吧!

用户管理

这里是管理用户信息的,可以删除/编辑用户信息。

这里的ID和数据库的uid是一样的。这里可以更改一些重要信息,加流量的话可以在这里加。至于邀请码数量,可以用来清零这个用户的邀请码!

邀请管理

邀请码前缀指的是你生成的邀请码前面的数字。

邀请码类别填0就会在网站的公共页面显示邀请码,填写其他用户的UID/ID就是向这个用户发送一些邀请码。

最后说一下自带的流量清零脚本。

在sspanel目录的tools文件夹下,有个reset_transfer.php文件,每到每月1日,打开网址:你的域名/tools/reset_transfer.php,就会自动清零已使用流量!强烈建议改名!

怎么感觉这个文章有点水啊。。。。不过应该对于没接触过的新手有启蒙指导作用吧,了解这些就可以更好的上手了!

网站建好了,但是没有人气怎么办?去我的Shadowsocks网站页面提交你的网站信息吧!

(转:逗比根据地http://www.dou-bi.com/)

Shadowsocks多用户管理面板——SS-Panel教程

准备工作

本教程需要VPS(虚拟主机也行,不过建议使用VPS)、域名(没有的看这个:教你申请.tk/.ml/.cf/.gq/.ga等免费域名)、SS-Panel、一个逗比、还有一点建站经验(至少建过站的,务必懂一些html!)!

安装环境

PHP版本>5.4,而且需要PDO扩展。

注意:Lnmp一键包是满足所需条件的,如果是用的其他一键包或者面板请注意这两个要求!如果安装完毕,访问页面出现白屏,那就是php或者pdo版本问题。

Web环境我选的是LNMP,用的是lnmp.org军哥的一键安装包!

LNMP

因为军哥自己写的已经很详细了,所以我具体安装教程看这个吧!——传送门(注意:输入的MySQL的root密码一定要记住)

安装时间可能会几十分钟到几个小时不等,主要是机器的配置网速等原因会造成影响。安装完成之后就创建虚拟主机——传送门

安装并创建完虚拟主机后,直接下一步 数据库配置

数据库配置

先下载SS-Panel面板文件:百度网盘Github(我网盘里不一定是最新版的,可以去这个网站下载最新偶!点击Download ZIP即可下载)

然后解压并打开sql文件夹,这时候会看到五个sql文件。

然后打开网站:你的IP/phpmyadmin这时候你就在phpmyadmin上输入用户名root密码你安装LNMP时候设置的数据库root密码

进去之后点击数据库——新建数据库——创建。

然后点击左边新建的数据库,点导入,然后选择sql文件夹下的sql文件,点执行。重复五次,把五个文件都导入进去。

导入完成后就是这个样子!

网站配置

打开lib文件夹找到config-simple.php文件,打开它。

注意:用系统自带的记事本软件会出现编码问题,我推荐使用Notepad++,在编辑代码的时候很方便!)

下图中红框圈中的是必须修改的,至于初始化流量和签到流量,请自己调节!

DB_USER是数据库用户名,DB_PWD是数据库密码,DB_DBNAME是数据库名称(别写错了!),这里可以使用默认的root账户也可以自己创建一个新的数据库用户

下面的自然就是网站名字网站域名了(必须加上http://或者https://和最后的“/”,这里请根据自己的网站是否加了ssl来选择http和https,不止一个人问我什么是https,很多人没使用SSL却还是使用默认的https,导致网站的一些链接出错误。)。

设置完后保存一下,然后修改config-simple.php文件名为config.php。接下来就是上传文件到vps了!

特别注意:这里是新手问题高发区!config.php里面的数据库配置如果出错,可能会出现内部500错误,无法登录账号(因为没连上/连错数据库),网站白屏等错误问题!
注意!改名字这一步一定要做,否则会导致只有主页能打开,其他页面都是空白!

防止搜索引擎收录网站

这里说一下防收录的一种手段,因为SS站比较敏感,为了大家的SS站不被墙发现并封掉,推荐大家做一些防收录措施!

robots.txt文件,是屏蔽搜索引擎蜘蛛爬取网站!

  1. Disallow: /user
  2. Disallow: /lib
  3. Disallow: /admin
  4. Disallow: /vendor
  5.  
  6. User-agent: Baiduspider
  7. Disallow: /
  8. User-agent: Sosospider
  9. Disallow: /
  10. User-agent:sogou spider
  11. Disallow: /
  12. User-agent: YodaoBot
  13. Disallow: /

这里只是把百度、搜狗、有道、SOSO屏蔽了。如果有需要可以去这里生成robots内容:站长工具

然后header.php文件<head>里面加上一个防止百度收录快照的代码:

  1. <meta name="Baiduspider" content="noarchive">

但是百度不一定遵守robots规则,可能依然收录,那就用下面的终极办法!

还有一个终极方法,如果你用的是Nginx,以lnmp为例,那就在/usr/local/nginx/conf/vhost文件夹中找到你的域名配置文件,比如:www.baidu.com.conf

然后在里面插入以下代码:

  1. if ($http_user_agent~* (baiduspider|googlebot|soso|bing|sogou|yahoo|sohu-search|yodao|YoudaoBot|robozilla|msnbot|MJ12bot|NHN|Twiceler)) {
  2. return 403;
  3. }

然后保存并上传替换,然后ssh链接vps输入lnmp nginx restart(如果提示出错请根据错误修改!)这时候去站长工具测试一下效果,看是不是返回403代码。

这几个就是我知道的所有方法了,如果有什么异议或者建议欢迎联系我!

上传网站文件

上传文件我们可以使用Linux SSH自带的SFTP,打开FTP软件(我推荐使用filezilla,功能还是很强大的!)

根据下图填写VPS信息,端口不用填,账号就是root账号。

连接后找到/home/wwwroot/你的域名,然后把SS-Panel文件都上传到这个目录下。上传完就是下图这个样子!

建立完成

这时候网站基本就创建完成了,打开你的域名开启你的网站吧!

网站搭建成功了记得点一下⌊喜欢和赞⌋喽~想看看我帮助了多少SS站长!

注意:如果安装完毕,访问页面出现白屏,那就是php或者pdo版本问题。

有什么问题请加群:271866172联系我!

网站建好了,但是没有人气怎么办?去我的Shadowsocks网站页面提交你的网站信息吧!

其他说明

默认情况下,user表中uid为1的用户为管理员

添加管理员可以在 ‘ss_user_admin’ 表中添加用户UID

默认管理帐号: first@blood.com 密码 1993

新版密码加密方式说明

当使用新的加密方式带salt的sha256加密,由于每个站点的$salt值都不同,所以初始密码「1993」是没有用的,安装完成后,访问

你的域名/pwd.php?pwd=1993

将获得的字符串更新到数据库user表的pass字段。

如果正常安装完毕后只有主页能打开,其他页面都是空白,那就是没有修改config-simple.php文件名为config.php

注意:

  • $salt 不可随意修改!
  • 如果原来为2.4之前的版本,需要将pass字段的长度修改为64

(转:逗比根据地http://www.dou-bi.com/)

ShadowsocksR 多用户版服务端安装教程(SS-Panel后端)

基本库安装

Centos系统执行这个:

  1. yum install python-setuptools&&easy_install pip
  2. yum install m2crypto git

Ubuntu/Debian系统执行这个(推荐这两个系统,对新手友好):

  1. apt-getupdate
  2. apt-getinstall python-pip
  3. apt-getinstall m2crypto git

安装cymysql

  1. pip install cymysql

获取源代码

  1. git clone-b manyuser https://github.com/breakwa11/shadowsocks.git

执行完毕后此目录会新建一个shadowsocks目录,其中根目录的是多用户版(即数据库版),子目录中的是单用户版。

根目录即 ./shadowsocks

子目录即 ./shadowsocks/shadowsocks

服务端配置

进入根目录:

  1. cd shadowsocks

shadowsocks目录内,打开文件vi Config.py

  1. MYSQL_HOST= 'localhost' //前端mysql域名/IP
  2. MYSQL_PORT= 3306 //mysql端口
  3. MYSQL_USER= 'ss' //mysql用户名
  4. MYSQL_PASS= 'ss' //mysql密码
  5. MYSQL_DB= 'shadowsocks' //数据库名
注意:这里的数据库信息除了MYSQL_HOST,其他的必须和SS-Panel完全一致,服务端启动的时候会读取数据库信息!至于MYSQL_HOST,如果你的服务端和前端(SS-Panel)在一个VPS上,那就写localhost,如果不在一起,请写前端(SS-Panel)所在VPS的ip或者域名!还有一条要注意的,如果服务端和前端(SS-Panel)不在一个VPS上,那么数据库链接就属于远程链接了,这时候需要开启数据库用户的远程链接功能!开启方法:在数据库——用户——编辑权限——登录信息中修改Host为任意主机“%”

文件config.json:

打开文件vi config.json

  1. "method":"aes-256-cfb", //修改成您要的加密方式的名称

如果需要修改协议插件和混淆插件,请根据单用户版服务端页面的选项对照说明修改下面两个参数。

  1. "protocol": "auth_sha1_compatible",
  2. "obfs": "tls1.0_session_auth_compatible",

默认是兼容模式,原版也可以用,SSR开启插件也可以用!

id //用户id数据库字段说明:

  1. email//用户邮箱
  2. pass //用户密码
  3. passwd//ss密码
  4. t//最后使用的时间
  5. u//已上传流量
  6. d//已下载流量
  7. transfer_enable//可用流量(总量)
  8. port//ss端口
  9. switch //保留字段
  10. enable//启用或禁用ss帐号(1启用,0禁用)
  11. type//保留字段
  12. last_get_gift_time//保留字段
  13. last_rest_pass_time//保留字段

ShadowsocksR多用户板服务端默认开启UDP的

服务端运行与停止

进入根目录:

  1. cd shadowsocks

运行:

  1. python server.py

这句运行代码主要用于调试,关闭ssh后ss后端自动关闭,所以正式使用请使用下面的脚本运行!如果需要停止请按Ctrl+C键终止程序。

这时可查看有运行情况,检查有没有错误。如果服务端没有错误,而连接不上,需要检查iptables或firewall(centos7)的防火墙配置

通过脚本运行

脚本位于./shadowsocks目录。cd ./shadowsocks

增加脚本可执行权限(执行一次就好)

  1. chmod+x*.sh

后台运行(ssh窗口关闭后也继续运行)

  1. ./run.sh

后台运行时查看运行情况

  1. ./tail.sh

停止运行

  1. ./stop.sh

注:通过脚本运行默认日志会保存在根目录的ssserver.log,可手动查看。

更新源代码

如果代码有更新可用本命令更新代码

进入shadowsocks目录

  1. cd shadowsocks

执行

  1. git pull

成功后重启ss服务

网站建好了,但是没有人气怎么办?去我的Shadowsocks网站页面提交你的网站信息吧!

其它异常

无法连接Shadowsocks服务端,并且没提示错误或者提示IP被占用

如果Shadowsocks服务端没有提示错误,或者提示IP被占用,并且使用./stop.sh和./run.sh脚本重启后,依旧无法连接Shadowsocks,请重启当前VPS(这个问题我猜测可能是./stop脚本并不能完全关闭Shadowsocks所有连接,导致无法解决问题。正好Shadowsocks服务端默认随机启动,所以重启VPS可以解决这个问题。如果你知道原因或者其他更好的解决办法请在下面留言)。

Shadowsocks无法连接到数据库!MYSQL:2003

经过我多次实验,发现这个问题都是出现在Shadowsocks后端和数据库不在一个VPS上,这就说明了是数据库所在VPS的错误,先开放数据库的远程连接“%”,这个上面服务端配置里说的有方法。然后再打开你iptables防火墙配置文件(多半问题都是出现在这里,3306数据库端口没有对外开放)。

Debian7的方法(其他的系统请谷歌iptables防火墙规则文件位置)

首先打开防火墙规则文件。

  1. vi /etc/iptables.rules

删掉原来的3306规则(ACCEPT和DROP),然后加上这个规则。

  1. -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT

然后重载iptables配置文件

  1. iptables-restore < /etc/iptables.rules

Centos6

首先打开防火墙规则文件。

  1. vi/etc/sysconfig/iptables

删掉原来的3306规则(ACCEPT和DROP),然后加上这个规则。

  1. -A INPUT -p tcp -m tcp --dport 3306 -j ACCEPT

然后重启iptables

  1. /etc/init.d/iptables restart


服务端运行提示/日志正常,客户端填写也正确,但是依然无法连接!

这种情况一般都是防火墙搞的鬼(Debian/Ubuntu基本排除,多出现在Centos系统)。

  1. iptables-L

看一下有没有什么东西阻止了ss端口,或者说是没有允许/开放ss的端口。

如果你看不明白,你可以先关闭防火墙,试一试是不是防火墙的问题导致的无法连接。

  1. /etc/init.d/iptables stop

如果关闭后SS链接正常,那就是防火墙的问题,你可以随后慢慢排除防火墙规则。也可以直接 iptables -F 清空防火墙,但是我不建议这么做,一不小心就需要重装服务器了。


如果你的服务端python版本在2.6以下,那么必须更新python到2.6.x或2.7.x版本


如果运行一段时间后,你发现服务器无法连接,同时ssh连上去后,执行

  1. netstat-ltnap|grep-c CLOSE_WAIT

显示的数值很大(超过50是严重不正常),那么请修改服务器的最大连接数,如果是ubuntu/centos均可修改

/etc/security/limits.conf

添加两行:

  1. *soft nofile32768
  2. *hard nofile131072

然后重启机器生效(详细的看这个Linux上的shadowsocks服务端优化方法

如果还是出现大量的too many open files错误,可以通过执行以下命令确定占用大量文件数的进程:

  1. lsof-n|awk'{print $2}'|sort|uniq-c|sort-nr|more

 

(转:逗比根据地http://www.dou-bi.com/ss-jc13/)