> 搬瓦工后台管理,一键安装 Shadowsocks 只支持 Centos6 ,但是如果系统升级到7怎么办呢? ### 安装 1. 安装 Centos7 系统 2. 安装完系统后,执行yum -y update 升级 3. 执行安装 yum install python-setuptools && easy_install pip pip install git+https://github.com/shadowsocks/shadowsocks.git@master pip install shadowsocks 4. 配置Json `vi /etc/shadowsocks.json` { "server":"my_server_ip", //0.0.0.0,vps ip "local_address": "127.0.0.1", //有无均可 "local_port":1080, //有无均可 "port_password": { "1111": "2222", "2222": "1111" }, "timeout":300, "method":"aes-256-cfb", "fast_open": false } 注:my_server_ip 是你的VPS IP地址 5. 设置开机启动 vi /etc/rc.local ssserver -c /etc/shadowsocks.json -d start 6. 命令 启动shadowsocks服务: ssserver -c /etc/shadowsocks.json -d start 关闭shadowsocks服务: ssserver -c /etc/shadowsocks.json -d stop 重启shadowsocks服务: ssserver -c /etc/shadowsocks.json -d restart 问题1: 当使用reboot重启后,发现ss不能连接,于是手动启动发现一切正常,判断是在 `rc.local` 的自启动没生效; 当我查看 `rc.local` 文件,发现一句话 “`Please note that you must run 'chmod +x /etc/rc.d/rc.local' to ensure`”,于是查看权限 `ll /etc/rc.local` 和 `ll /etc/rc.d/rc.local` 发现 `/etc/rc.d/rc.local` 没有执行权限,于是按说明的内容执行 `chmod +x /etc/rc.d/rc.local`,重启后发现 `/etc/rc.local` 能够执行了。 由于 `/etc/rc.local` 是 `/etc/rc.d/rc.local` 的软连接,所以必须确保 `/etc/rc.local` 和 `/etc/rc.d/rc.local` 都有x权限(可执行)。 问题2:当重启后,发现服务还是没有自启动,查看原因发现在配置文件 `/etc/shadowsocks.json` 中 server项对应值改为0.0.0.0,然后重启,成功。 由于问题1的出现,所以当设置自启动时,可以使用 `systemctl` 服务去执行启动: 1)执行 `vi /etc/systemd/system/shadowsocks.service` [Unit] Description=Shadowsocks [Service] TimeoutStartSec=0 ExecStart=/usr/bin/ssserver -c /etc/shadowsocks.json [Install] WantedBy=multi-user.target 2) systemctl服务命令 systemctl is-enabled servicename.service #查询服务是否开机启动 systemctl enable *.service #开机运行服务 systemctl disable *.service #取消开机运行 systemctl start *.service #启动服务 systemctl stop *.service #停止服务 systemctl restart *.service #重启服务 systemctl reload *.service #重新加载服务配置文件 systemctl status *.service #查询服务运行状态 systemctl --failed #显示启动失败的服务 注:*代表某个服务的名字,如http的服务名为httpd 示例:systemctl enable shadowsocks 将shadowsocks加入自启动服务 查看运行状态:systemctl status ssserver -l