在Linux服务器上搭建基于nodejs的shadowsocks服务端
shadowsocks客户端可以简单的运行在linux、windows、mac、ios、Android系统中,免root、免越狱,一次配置好以后一键穿墙,相当的实用,这里介绍下在Linux上搭建服务端。
安装nodejs
这一步方法很多,可以自行参考搜索引擎,已经安装过nodejs的话可以直接跳到第二步
参考文章:
《Windows/Linux下安装nodejs》
安装、配置shadowsocks服务端
直接使用npm安装到全局
1 | npm install -g shadowsocks |
如果服务器在国内的话可能会比较慢,可以使用cnpm
开始配置,注意路径在node安装目录下的/lib/node_modules/shadowsocks/
例如nodejs安装到了/opt里,shadowsocks会下载到/opt/node/lib里
1 | # 注意/opt/node路径可能和这里的不一样 |
如果使用nvm安装,安装路径在
~/.nvm/versions/node/版本/
下的lib
里
1 | vim ~/.nvm/versions/node/v11.15.0/lib/node_modules/shadowsocks/config.json |
如果找不到安装到哪了,可以用
which ssserver
查看,配置文件在找到路径的上级的lib
里
1 | which ssserver |
主要内容如下:
1 | { |
主要是修改其中的两处,其他的有需要的话自行修改
1 | server: 0.0.0.0 |
编辑好之后,:wq
保存并退出。
安装pm2
这里推荐使用pm2托管,用于后台运行服务
1 | npm i -g pm2 |
配置开机自启
1 | pm2 startup |
ssserver服务的pm2配置
先找个目录 创建配置文件
1 | mkdir ~/ss |
配置如下:注意路径
1 | { |
如果找不到路径的话 可以用
which ssserver
查看,"cwd"
的路径即找到的路径的上级下的lib/node_modules/shadowsocks/bin
1 | which ssserver |
运行
运行pm2
1 | pm2 start ~/ss/pm2.json |
保存当前应用列表
1 | pm2 save |
查看状态
1 | pm2 monit |
重载(修改配置后需要重载)
1 | pm2 reload ssserver |
客户端设置
在App Stroe / Google Play Store 可以下载到客户端,
github下载地址:
安装后可以开始配置了
新建一个配置
客户端版本不同所在的位置不一样,大致位置如下:
android: 右上角
-> 新建(含有+的小图标)
->手动设置
win: 暂时没有win系统,印象中是右下角托盘、右键、设置,等以后再补充细节
qt: 顶部菜单
-> 连接
-> 添加
-> 手动
ios: 右上角
-> +
填写信息
进入后配置后的界面就都差不多了 需要填写的有:
IP/服务器/服务器地址,填写你的服务器IP
密码,填写之前配置的密码
加密方式,选择和服务器配置相同的加密方式
注意服务端默认是
aes-256-cfb
,而客户端默认的不是这个,注意修改
远程端口,默认8388,如果服务端改过这个的话,客户端需要改成服务器配置相同
记得要保存(win下保存比较特殊)
其他的不需要修改了,链接试试吧
默认会自动绕过大陆网站,只代理需要代理的网站,该配置文件也可以自定义
下面的方法不再推荐使用
后台运行ssserver
1 | nohup ssserver >/dev/null 2>&1 & |
查看后台运行的程序
1 | jobs |
使用-l可以看到PID
1 | jobs -l |
关闭ssserver
kill [pid]
[pid]是指上一步
jobs -l
查到的pid
服务端搭建完成
Ubuntu开机自启
更新中
CentOS开机自启
想了解CentOS如何设置开机自启请查看另一篇博文
《 shadowsocks如何设置开机自启 》