ss-panel 扩展教程

前面我们已经完整的搭建了 ss-panel 和服务器,算是“可以使用”了。不过还存在许多问题,尤其是安全问题,本文就来扫个尾。

开机自启

现在一旦重启,ss后端不会自动运行。大多情况下我们希望他自动运行。

比通用的办法是直接添加到开启启动脚本:

# 修改启动脚本
vi /etc/rc.d/rc.local

加入下面的脚本:

# 记得改成你自己ss所在的目录
sh /root/shadowsocks/run.sh

保存后f赋予可执行权限然后重启看看:

chmod +x /etc/rc.d/rc.local
reboot

安装BBR

BBR 是 Google 提出的 TCP 拥塞控制算法。这里不深究原理,只要知道能起到加速效果就好了。

使用秋水逸冰的一键安装脚本可以轻松安装。

系统支持:CentOS 6+,Debian 7+,Ubuntu 12+

虚拟技术:OpenVZ 以外的,比如 KVM、Xen、VMware 等

内存要求:≥128M

执行下面命令:

wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh
chmod +x bbr.sh
./bbr.sh

执行完后按提示重启即可。

验证安装

执行 uname -r 查看系统内核版本号,应该已经是最新版。

执行 sysctl net.ipv4.tcp_congestion_control,返回值一般应该为 net.ipv4.tcp_congestion_control = bbr

执行 lsmod | grep bbr 返回值包含 tcp_bbr 说明bbr已经启动。注意: 并不是所有的 VPS 都会有此返回值。

禁止搜索引擎抓取

一般来说我们不太希望搜索引擎尤其是国内搜索引擎收录我的网站。所以需要进行一些设置。

最基本的是 robots 设置,这个 panel 已经默认做好了。就是在站点根目录有一个 robots.txt,文件,里面写着:

Disallow: /

意思是不允许任何搜索引擎抓取任何页面。当然我们也可以进行更加灵活的控制,可以用站长工具来生成规则。

但是!!! robots 只是一个规范,搜索引擎是自愿遵守的。所以他也可以不遵守。曾经360搜索就堂而皇之的无视 robots 臭名昭著。所以我们还需要一些强制措施。

可以通过判断请求的 user agent 判断来访者是不是搜索引擎。借此可以屏蔽搜索引擎的访问。以 Nginx 服务器为例,在 vhost 的配置中加入下面代码:

#禁止搜索引擎访问
if ($http_user_agent ~* (baiduspider|googlebot|soso|bing|sogou|yahoo|sohu-search|yodao|YoudaoBot|robozilla|msnbot|MJ12bot|NHN|Twiceler)) {
    return 403;
}

效果如下:

nginx

这样,搜索引擎访问我们就会得到 403 Forbidden 响应,获取不到任何内容。可以用搜索引擎模拟工具来进行测试。

[……]

>> 接着看呗

ss-panel 后端搭建

特别声明

本教程内容大多来自:荒岛教程、部分来自逗比根据地。向上述作者以及所有参与软件贡献的人表示感谢。

本教程旨在技术交流,本人不提供任何 ss 服务、亦不提供指导,请合法使用。

基础介绍

本教程安装的是 ss-panel 的后端,包括 ss 服务本身。ss-panel 的前端参见文章列表。

后端与前端可以在同一个服务器,也可以在不同的服务器。后端是真正提供代理服务的地方。

安装后端

首先找一个文件夹来存放程序。这里直接用 root 了。先安装一下必须的工具。

cd /root
yum install python-setuptools && easy_install pip
yum install git

然后安装 libsodium

libsodium 用于对 chacha20 加密方式提供支持。此加密适用于路由器、手机等性能欠佳的设备。可以提高速度减少耗电。

#安装所需的组件包
yum -y groupinstall "Development Tools"
#获取最新版本号
Libsodiumr_ver=$(wget -qO- "https://github.com/jedisct1/libsodium/tags"|grep "/jedisct1/libsodium/releases/tag/"|head -1|sed -r 's/.*tag\/(.+)\">.*/\1/') && echo "${Libsodiumr_ver}"
#下载编译安装
wget --no-check-certificate -N "https://github.com/jedisct1/libsodium/releases/download/${Libsodiumr_ver}/libsodium-${Libsodiumr_ver}.tar.gz"
tar -xzf libsodium-${Libsodiumr_ver}.tar.gz && cd libsodium-${Libsodiumr_ver}
./configure --disable-maintainer-mode && make -j2 && make install
echo /usr/local/lib > /etc/ld.so.conf.d/usr_local_lib.conf
ldconfig
#完成后可以删除下载和解压的文件了
cd .. && rm -rf libsodium-${Libsodiumr_ver}.tar.gz && rm -rf libsodium-${Libsodiumr_ver}

其他系统的安装以及常见问题参见原文逗比根据地的教程

然后下载真正的后端代码:

[……]

>> 接着看呗

ss-panel 前端搭建

特别声明

本教程内容大多来自:荒岛教程、部分来自逗比根据地。向上述作者以及所有参与软件贡献的人表示感谢。

本教程旨在技术交流,本人不提供任何 ss 服务、亦不提供指导,请合法使用。

基础介绍

首先你需要了解:Shadowsocks 有多种版本。以使用场景区分,有单用户版与多用户版。ss-panel 是一个在线管理面板,可以开通多个账号,每个账号连接信息独立。因此需要配合多用户版使用。

如果你是自己使用,完全可以一键搭建单用户版,更加简单易用。推荐使用秋水逸冰的一键安装脚本

ss-panel 本质上是一个 php 网站,它仅仅提供管理功能。所以你还需要安装相应的后端与 ss 服务。

所需环境

下面是必须安装的程序:

  • MySql
  • PHP
  • Nginx (或其他 web 服务器)

本教程使用 CentOS 7 操作系统。

环境搭建

建议使用一键安装程序安装运行环境。本教程使用宝塔面板,你也可以使用军哥的lnmp一键安装包

首先请确保防火墙打开了常用端口。尤其是阿里云/腾讯云/华为云用户。

登录 root 用户,直接执行下面命令安装宝塔面板:

yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && bash install.sh

安装完后会显示登录信息,用浏览器就可以登录后台了。初次登录后台会提示一键安装默认程序,选择 LNMP 全家桶。其中 php 版本改为 7.0,ftp 可选不安装,其他保持默认就好。一键安装时间视服务器而定,反正挺长的。

[……]

>> 接着看呗