设置sslocal开机启动
1.创建客户端配置文件client.json
$ sudo mkdir /etc/shadowsocks
$ sudo vim /etc/shadowsocks/client.json
新增下面配置:
{
"server": "服务端ip",
"server_port": 443,
"local_address": "127.0.0.1",
"local_port": 1080,
"password": "密码",
"method": "rc4-md5",
"timeout": 30
}
2.创建启动脚本
$ sudo vim /etc/init.d/sslocal
添加如下脚本:
#!/bin/bash
### BEGIN INIT INFO
# Provides: Shadowsocks-local
# Required-Start: $network $local_fs $remote_fs
# Required-Stop: $network $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Fast tunnel proxy that helps you bypass firewalls
# Description: A secure socks5 proxy, designed to protect your Internet traffic.
### END INIT INFO
# Author: lynnyq <lynnyq@gmail.com>
name=sslocal
BIN=/usr/local/bin/sslocal
conf=/etc/shadowsocks/client.json
start(){
$BIN -c $conf -d start
RETVAL=$?
if [ "$RETVAL" = "0" ]; then
echo "$name start success"
else
echo "$name start failed"
fi
}
stop(){
pid=`ps -ef | grep -v grep | grep -i "${BIN}" | awk '{print $2}'`
if [[ ! -z $pid ]]; then
$BIN -c $conf -d stop
RETVAL=$?
if [ "$RETVAL" = "0" ]; then
echo "$name stop success"
else
echo "$name stop failed"
fi
else
echo "$name is not running"
RETVAL=1
fi
}
status(){
pid=`ps -ef | grep -v grep | grep -i "${BIN}" | awk '{print $2}'`
if [[ -z $pid ]]; then
echo "$name is not running"
RETVAL=1
else
echo "$name is running with PID $pid"
RETVAL=0
fi
}
case "$1" in
'start')
start
;;
'stop')
stop
;;
'status')
status
;;
'restart')
stop
start
RETVAL=$?
;;
*)
echo "Usage: $0 { start | stop | restart | status }"
RETVAL=1
;;
esac
exit $RETVAL
增加执行权限:
$ sudo chmod +x /etc/init.d/sslocal
3.添加开机自启
$ sudo update-rc.d sslocal defaults 90
# 移除自启
$ sudo update-rc.d -f sslocal remove