首先说一下为什么要写这篇博客,主要是以下几个原因:
1、虽然已经有蛮多的教程,但是不是系统环境单一就是因为发布时间关系已经不在准确;
所以说我这次写的会包含Ubuntu、CentOS、Debian、Fedora这几个主流的系统的命令。2、一方面可以作为自己学习的笔记,另一方面还可以互相借鉴;
这一节包含的是如何拥有一台可以用来配置ssr的服务器,下一节会具体说一说配置的事情。
3、需要SS和V2ray节点的,这里给大家推荐JustMySocks: JMS9272283 (5条线路,2条SS 3条V2 不怕墙)
====搭建服务的前期准备====
一、准备一个VPS
前面的简介说到了SSR服务分为客户端和服务端,客户端在自己电脑上,服务端自然需要另一台机器,常用的就是VPS(Virtual Private Server)了
说到VPS服务商,博主首推的是vultr(vultr.com),它提供免费的Snapshot(快照,保存生成时的所有内容,用于克隆、恢复),虽然没有它的收费项目$1/mo的定时Backup(备份,理论说可以下载带走,未测试是否支持,后期补)那么方便,但是作为免费服务还是很棒的特别是在要部署多台相同环境的VPS的时候尤为方便。
当然最关键的是自己在用啦~如果你使用我的链接,或许能够获得一定的点数奖励~
其他的服务商有老牌的Linode,便宜的搬瓦工、用不起的AWS等等(基本都要信用卡),国内的服务商有阿里云、腾讯云、遨游主机等等。
有很多做比较的文章,这里就不重新造轮子了。下面是我的推广链接,感谢支持!
2020年vultr注册优惠
1.注册账户
①填写必要信息:
必要的邮箱、密码……非常友好,不是动辄手机这种即时性很强的东西;
②注册完成:
2.填写账单信息(充值)
①选择支付方式:
这个我是很开心看到的,因为……支持支付宝啊! 偷偷告诉你,还会有三刀的点数可以送哦!
②使用支付宝付款:
熟悉的界面……比昨天博主充值贵了两分钱,所以说汇率低的时候充值划算?
到此,账户开通就完成了。不建议搭建按下面的脚本方法进行搭建。有关搭建教程请参考如下教程
3.准备安装脚本
以下是脚本,为了简化安装,这个脚本直接会安装好shadowsocksR的服务端。
- Ubuntu/Debian
#!/bin/sh apt-get update apt-get install git python-m2crypto libsodium18 cd /usr/local git clone -b manyuser https://github.com/shadowsocksrr/shadowsocksr.git cd shadowsocksr bash initcfg.sh
- CenOS—-待验证可用性
#!/bin/sh yum update yum install git python-m2crypto libsodium18 cd /usr/local git clone -b manyuser https://github.com/shadowsocksrr/shadowsocksr.git cd shadowsocksr bash initcfg.sh
- Fedora—-待验证可用性
#!/bin/sh dnf -y update dnf -y install git python-m2crypto libsodium18 cd /usr/local git clone -b manyuser https://github.com/shadowsocksrr/shadowsocksr.git cd shadowsocksr bash initcfg.sh
①复制适合系统的脚本,点击下图中的Startup Scripts
,进去添加。
②新建一个脚本
③删除原有代码,粘贴代码,并给脚本取合适的名字,最后确认(Add Script)
4.创建服务器
①进入新建界面
好啦,我们现在是有钱人了!Deploy一个server! 谁说的红配绿赛DogShit?
②选择服务器位置
首先选一个你觉得ok的位置,我选东京,亚洲延迟低,我觉得ok;
别怕,不是十刀只能一个月哦……
③选择服务器操作系统
这里可以选择64位系统
,32位系统
,预装app
,上传iso镜像
,iso镜像库
,使用备份
,使用快照
PS:这里在后期可以选择提前制作好的快照,快速部署新的节点,快照的制作在后面会讲到!
这里建议使用Ubuntu 16.04
④选择服务器配置
这里可以选择服务器配置啊,解释一下名词:
SSD
——自带存储空间,固态硬盘~别觉得不够,你又不是装个windows吃鸡~/mo
——每个月/h
——每小时,实际是细化到小时收费的,所以不要怕,创建再摧毁才几毛钱~CPU
——核心数Memory
——内存大小Bandwidth
——其实是流量~流经服务器的流量
⑤选择启动脚本
这一步主要就是选择启动脚本,最下面的⑦ Server Hostname & Label 是可选填的,就是看到的名字而已,label是指在Vultr的SERVER界面看到的名字,Hostname是指在登陆到VPS后@后面的名字,例如:root@vultr$:
到这里基本上就完成了,你只需要点击右下角的
Deploy
就可以创建一个属于你的VPS了。
PS:关于价格
决定价格的主要因素~像东京、新加披这种延迟低的地区,最便宜最划算的套餐自然买完了
哇,一个月10美刀好像是很贵啊,这里选择5美刀
到这里要是觉得贵的可以考虑合租咯~
- 为什么不选择其他地区的2.5美刀一个月的?
- 丢包率高,0.5秒+的延迟,就算不玩游戏也会很难受
- 内存低,一定程度上影响网速,特别是几个人恰好同时Youtube时候
以上影响为个人体验和大致理论的综合,非专业级解释,如有错误,欢迎指正
====SSR-SERVER的配置====
零、准备工作
在此之前,你需要知道,你是远程访问(SSH)的你的服务器,所以需要通过以下两种途径:
- a. 使用Xshell、putty、(xshell下载可以加Q群:87572351)
- b. 直接使用Vultr的console界面
PS:
在之前创建服务器的时候使用了一个脚本
已经将SSR客户端安装在/usr/local
中
一、登陆VPS
下面有两种可选
的远程登陆方式,选择A
或B
即可。
A. 使用Xshell登陆VPS
虽然之前已经装好了SSR,但是是通过上传脚本实现的,现在将是第一次登陆VPS。
1)打开Xshell
2)新建连接
①填写主机属性
里面会有很多选项,但是这里只用到连接
和其中的用户身份验证
名称
:这里可以随意,推荐以VPS供应商-VPS所在地区-编号命名,e.g Vultr-Tokyo-1;
协议
这里默认就是SSH(什么是SSH),SSH服务的默认端口为22;
主机
:这里填写主机的IP地址,可以在[SERVER页面]查看;
②填写系统账户登陆信息
用户名
:root
这是有最高权限的用户,用它登陆危害多多,一般是不会用这个登陆的,除第一次,以后的文中会写如何改变这一点;
这个代表着超级管理员,每个linux都包含一个这样的账户;
密码
:^dgbfvjkah#
由Vultr提供的随机密码,可更改,用于登陆VPS,相当于PC的开机密码,可以在[SERVER页面]查看
③确认
点击确认后,在最开始的
会话
界面能够看到新建好了的会话,双击
出现以下类似界面即为正常
B. 使用Vultr的console界面登陆VPS
进入https://my.vultr.com就能看到你之前创建的
SERVER
,点击后可看到一下界面
点击右上角显示器的图标,正常情况下会弹出一个小网页
login
:root
;
password
:*^dgbfvjkah#(*
由Vultr提供的随机密码,可更改,用于登陆VPS,相当于PC的开机密码
之后的之后的差别就不是那么大了,除了不能粘贴
二、配置
1.检查vim(vi)是否安装且可用
选择自己系统的代码进行检查
– Ubuntu/Debianapt update apt install vim
– Fedora
dnf -y update dnf -y install vim
– CentOS
yum update yum install vim
2.进入安装目录/usr/local/shadowsocksr
cd /usr/local/shadowsocksr
3.编辑服务端配置文件user-config.json
vim user-config.json
进入后按键盘上的i
进入编辑模式
按照里面的模板填写信息,未提及的不用改动
①单用户版本
{ "server": "0.0.0.0", "server_ipv6": "::", "server_port": 8388, "local_address": "127.0.0.1", "local_port": 1080, "password": "m", "method": "aes-128-ctr", "protocol": "auth_aes128_md5", "protocol_param": "", "obfs": "tls1.2_ticket_auth_compatible", "obfs_param": "", "speed_limit_per_con": 0, "speed_limit_per_user": 0, "additional_ports" : {}, // only works under multi-user mode "additional_ports_only" : false, // only works under multi-user mode "timeout": 120, "udp_timeout": 60, "dns_ipv6": false, "connect_verbose_info": 0, "redirect": "", "fast_open": false }
单用户版本需要修改:
"server_port":"任意数字" "password":"密码"
②多用户版本
{ "server": "0.0.0.0", "server_ipv6": "::", "local_address": "127.0.0.1", "local_port": 1080, "port_password": { "443":"Password", "666":"Guest" }, "method": "aes-128-ctr", "protocol": "auth_aes128_md5", "protocol_param": "", "obfs": "tls1.2_ticket_auth_compatible", "obfs_param": "", "speed_limit_per_con": 0, "speed_limit_per_user": 0, "additional_ports" : {}, // only works under multi-user mode "additional_ports_only" : false, // only works under multi-user mode "timeout": 120, "udp_timeout": 60, "dns_ipv6": false, "connect_verbose_info": 0, "redirect": "", "fast_open": false }
多用户版本需要修改::
"port_password": { "任意数字":"密码" },
都需要修改的部分:
method
:
//加密方法–以下可选,客户端上需要配置
method none
aes-256-gcm
aes-192-gcm
aes-128-gcm
aes-256-cfb
aes-192-cfb
aes-128-cfb
aes-256-cfb8
aes-192-cfb8
aes-128-cfb8
aes-256-ctr
aes-192-ctr
aes-128-ctr
chacha20-ietf
chacha20
rc4-md5
rc4-md5-6
protocal
:
协议–以下可选,客户端上需要配置
method origin
verify_deflate
auth_sha1_v4
auth_sha1_v4_compatible
auth_aes128_md5
auth_aes128_sha1
auth_chain_a
auth_chain_b
obfs
:混淆插件–以下可选,客户端上需要配置
method plain
http_simple
http_simple_compatible
http_post
http_post_compatible
tls1.2_ticket_auth
tls1.2_ticket_auth_compatible
tls1.2_ticket_fastauth
tls1.2_ticket_fastauth_compatible
protocal_param
:
obfs_param
:
协议参数、混淆参数,选配,建议新手忽略,内容为网址
客户端上需要配置
4.保存user-config.json
编辑完后按键盘上的
esc
退出编辑模式,输入以下代码(保存退出,退出前拍个照为好):wq
二点五、加速(可选)
如果经常看视频什么的可以做个加速,就算不用来看视频也可以加快网页访问速度。懒人弄得可以跳过~
这个部分拖了很久不想写,因为之前写的都不好,修改来修改去,甚至有一次因为关键字问题被封了博客,心累。总算写的比较好看、完整、有条理了,所以打算来完善一下这个部分。
加速采用的是BBR加速,由谷歌非官方发布的一个加速组件,现已被加入到最新内核中,这里需要安装最新的内核,并开启BBR。全程采用脚本,开源无后门,
仅测试Ubuntu
。
1.下载、授权、执行安装脚本
(其实就是一串命令,注意复制完整,有点长)
wget --no-check-certificate https://github.com/Ellean/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
安装完成后,脚本会提示需要重启 ,输入 y 并回车后重启。
2.校验是否成功开启BBR
命令 | 一般返回值 |
---|---|
sysctl net.ipv4.tcp_available_congestion_control | net.ipv4.tcp_available_congestion_control = bbr cubic reno |
sysctl net.ipv4.tcp_congestion_control | net.ipv4.tcp_congestion_control = bbr |
sysctl net.core.default_qdisc | net.core.default_qdisc = fq |
三、运行
1.进入/usr/local/shadowsocksr/shadowsocks
目录
cd /usr/local/shadowsocksr/shadowsocks
2.后台运行
bash ./logrun.sh
3.查看状态
bash ./tail.sh
PS:重启
修改配置
后需要手动重启SSR服务端,在/usr/local/shadowsocksr/shadowsocks
目录下运行一下命令:
- 停止
bash ./stop.sh
- 后台运行
bash ./logrun.sh
====SSR-Client的安装 及使用====
一. Linux客户端
1. 安装依赖包:
选择适合自己的系统的代码
– Ubuntusudo apt-get update sudo apt-get install git python-m2crypto libsodium18
– Debian
sudo apt-get update sudo apt-get install git-core python-m2crypto libsodium18
2. 下载SSR客户端
cd ~/Downloads
git clone -b manyuser https://github.com/shadowsocksrr/shadowsocksr.git
以上命令可能会显示为多排,实际为一整条命令
3.编辑客户端配置文件shadowsocks.json
具体按照之前在客户端配置的信息填写
sudo vi /etc/shadowsocks.json
以下为模板
{ "server":"12.34.56.78", "server_ipv6":"::", "server_port":8388, "local_address":"127.0.0.1", "local_port":1080, "password":"happy2017", "timeout":300, "udp_timeout":60, "method":"aes-128-ctr", "protocol":"auth_aes128_md5", "protocol_param":"", "obfs":"tls1.2_ticket_auth", "obfs_param":"", "fast_open":false, "workers":1 }
4. 保存退出
接下来,就可以用了,进阶的用法日后在整理
以下是使用命令:
后台运行
sudo python local.py -c /etc/shadowsocks.json -d start
查看状态
sudo tail /var/log/shadowsocksr.log
二、Windows客户端
客户端在GitHub上呢是有的,但是为了大家下载方便,贴一个云盘出来,密码:35na
;
我的链接的不能保持最新,但是肯定能用;
需要注意的是,软件需要.NET支持;
Win7
或者.NET 2.0
用户运行ShadowsocksR-dotnet2.0.exe
Win8
及以上或者.NET 4.0
用户运行ShadowsocksR-dotnet4.0.exe
三、OS X客户端
云盘,
pc12
;
四、Android客户端
云盘,
fvn9
;
五、IOS客户端
可用的有好几个可用,但是国内市场都是无法下载的
自己需要自己注册美区账号申请
联系作者
对文章有问题可以来找我,这里留下Q群:324748797
暂无评论内容