有时候你可能试了好几个VPS,但是速度都不理想,这样每次安装都要拷贝粘贴十几个命令,尤其第一个更新系统的命令还要等好几分钟,就会让人觉得很烦。
这时,你可以编辑一个脚本(bash script),把所有命令都放进去,让服务器自己执行。
大部分命令粘贴到脚本内就行,但有几处是不可以的。比如打开nano,再向里面粘贴内容的动作,会中断脚本的执行,所以要做一些更改。
为了给你节省时间,我把所有必要的命令,汇总了一个完整的脚本。
第一步,根据此教程搭建VPS。
第二步,开通VPS后等待5分钟(让服务器运行起来)。
再次提醒,19点到24点是高峰期,大多数VPS,即使是针对大陆做过优化的线路,也会变得很慢,安装调试应避开这个时段,最好在早晨或上午弄。
第三步,根据第一步的教程,使用putty软件,以root身份登陆VPS。
第四步,先点击下方代码框,然后在putty的窗口里按鼠标右键。(该命令的作用是生成一个空的脚本文件,vi是linux自带的文本编辑器,ssr.sh是我们要编辑的脚本名称)
vi ssr.sh
第五步,屏幕上会出现一个vi软件的黑窗口,用鼠标点击下面的代码框,再回到这个黑窗口里,点击鼠标右键,全部命令都会被粘贴进去。
#! /bin/bash
# set up SSR on centos 8
# goodyoutubers.com
dnf install git python3 nano wget firewalld nginx policycoreutils-python-utils -y
cd /usr/local
git clone -b manyuser https://github.com/shadowsocksrr/shadowsocksr.git
cd /usr/local/shadowsocksr
bash initcfg.sh
> /usr/local/shadowsocksr/user-config.json
cat <<EOT >> /usr/local/shadowsocksr/user-config.json
{
"server": "0.0.0.0",
"server_ipv6": "::",
"server_port": 6538,
"local_address": "127.0.0.1",
"local_port": 1080,
"password": "L0v3U\$\$\$",
"method": "none",
"protocol": "auth_chain_a",
"protocol_param": "",
"obfs": "plain",
"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
}
EOT
cat <<EOT >> /etc/systemd/system/shadowsocksr.service
[Unit]
Description=ShadowsocksR server
After=network.target
Wants=network.target
[Service]
Type=forking
PIDFile=/var/run/shadowsocksr.pid
ExecStart=/usr/bin/python3 /usr/local/shadowsocksr/shadowsocks/server.py --pid-file /var/run/shadowsocksr.pid -c /usr/local/shadowsocksr/user-config.json -d start
ExecStop=/usr/bin/python3 /usr/local/shadowsocksr/shadowsocks/server.py --pid-file /var/run/shadowsocksr.pid -c /usr/local/shadowsocksr/user-config.json -d stop
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=always
[Install]
WantedBy=multi-user.target
EOT
systemctl enable shadowsocksr
systemctl start shadowsocksr
systemctl enable nginx
systemctl start nginx
systemctl enable firewalld.service
systemctl start firewalld.service
firewall-cmd --permanent --add-port=6538/tcp
firewall-cmd --permanent --add-port=6538/udp
firewall-cmd --permanent --zone=public --add-service=http
firewall-cmd --reload
wget https://github.com/shadowsocksrr/shadowsocksr-csharp/releases/download/4.9.2/ShadowsocksR-win-4.9.2.zip
wget https://github.com/xcxnig/ssr-download/raw/master/ssrr-android.apk
wget https://raw.githubusercontent.com/xcxnig/ssr-download/master/ssr-mac.dmg
cp ShadowsocksR-win-4.9.2.zip /usr/share/nginx/html/1.zip
cp ssrr-android.apk /usr/share/nginx/html/2.apk
cp ssr-mac.dmg /usr/share/nginx/html/3.dmg
echo '安装完毕'
第六步,用键盘输入:wq然后回车(存盘退出)。注意是半角的冒号跟着wq两个字母再回车。VPS会退出vi的黑窗口,回到putty窗口。
第七步,点击下方代码框,然后到putty窗口里点鼠标右键,下面的命令会被粘贴进去并执行。
chmod 700 ssr.sh; bash ssr.sh
第八步,一两分钟后,屏幕上就会提示“安装完毕”。
至此服务器端的配置已经完成,接下来请从教程的4.4步开始配置。
请注意,第4.4.1.2步,也就是客户端软件拷贝的步骤已经完成,可以跳过。
为了节省时间,安装时并没有做系统更新,请参照本站的这个教程,加强一下VPS的安全配置。
如有问题,请先翻翻各篇教程的留言,也许有你要的答案。
如果没有,请尝试这样解决
- 如果现在是晚上,请明天早晨与上午测试
- 用bing.com或者百度搜索一下你的问题
- 重新开一个vps试试,是否出现同样的问题
- 如仍未解决,请在下方留言。为了便于帮到你,留言时请描述得清楚点。
- 用哪个服务商的哪个机房
- 付费方案选的是什么
- 你的操作系统是什么
- 使用putty还是其他ssh软件
- 在哪个步骤上遇到问题,请尽可能描述得详细些
- 是手动安装还是使用脚本自动安装的
- 命令是原封不动拷贝粘贴的,还是改过什么地方
- … …
补充说明:本教程的脚本一共72行,第一次安装的话什么也不要改,否则很容易出现错误导致无法上网。
回头你有时间了,仔细看完详细的分步教程,可以按照3.3.1、3.3.2、以及4.4.2步的说明修改配置。更改配置后最好在VPS的控制面版里重启一下VPS,以确保生效。之后,你的客户端也要做相应更改。
一切功能正常后,再参考此教程做更进一步的安全配置。
因为我们已经开启了防火墙,所以基本的安全是有保障的。你就算什么配置也不改,也不会出什么问题,不用自己吓唬自己。当然你最少每个月要去VPS上做一个系统更新(用putty登陆后执行sudo dnf update -y命令),同时去看一下VPS控制面板里的账单、流量等数据。
作者,为什么我复制粘贴72行命令,键盘就不好使了,也不是不好使,就是有的按键不是原来的功能了
没遇到过,建议使用“重启大法”…
vi软件的黑窗口这个没有弹出来
回车试一下。
如果没修复,就换个VPS,或者重装(Server reinstall)当前VPS(不是重启)
试了vultr还有oracle的VPS,按你说的部署,结果酸酸乳连上之后没有数据,查看服务器状态,在错误那里疯狂跳数字(既不是超时也不是空连),有网上说是server和client的时间差太多所致,但是我检查了一下都可以的。于是又查攻略搞了个squid的http代理,但是要么日志里跳403错误,要么可以访问墙内但不能访问google(显示500错误)。我怀疑被针对了。
你的提问让我完全不知道怎么回答。
1. 你所说的“酸酸乳连上后”是什么意思?2. “没有数据”又是什么意思?3. “查看服务器状态”是指在控制面板查看,还是在putty中用systemctl命令查看?4. “在错误那里”是哪里?5.“疯狂跳数字”是什么数字,12345还是6,7,8,9,10?
你的中文表达也太…
我昨天车子出问题了,于是打电话给4S:你好你好,我的车子开不走了,发动机转着,按了左边的开关没有显示,按了另一个按钮还有一些奇怪的提示,发出一些不正常的声音(不是吱吱声,也不是咔咔声),是哪里出问题了呢?
打开SSR软件,在小飞机上右键,“服务器”/“服务器连接统计”,这里会显示错误。
我还真没用过这项功能,不知道出现错误代表什么。我的建议是按照教程,什么设置也别更改,先用脚本安装一次。
如果有问题,告诉我哪一个步骤上出的问题。
我终于知道错在哪里了!!!感谢大神!!!
密码是L0v3U$$$,而不是L0v3U\$\$\$
虽然我不知道为什么,因为我看脚本里面是有斜杠的,而你写的是没有斜杠的
是的,很多同学都是这个地方出的问题,因为你“以为”你看懂了脚本。
唉,感谢大神的分享,但这个方法不行。我怀疑我被针对了。我解决了密码没有斜杠这个问题,连上了google,才搜了个speed test,才高兴了没一分钟,发现没有流量了,SSR显示超时,应该是被神秘力量发现并掐断了吧。
你想太多了。你绝不会被“针对”以及“被发现并被掐断”的,你做了啥值得人家去掐你的事了?晚上9点正是流量高峰,很多VPS都会卡。我在很多地方提醒过,不要在晚上测试。要在早上和上午。
大神,我win11的系统按照您的步骤操作下来,最后小飞机没能变绿,也出不去。这是什么原因啊?我尝试用mac试一下,但是mac的终端不知道该怎么操作写入。求教!!!
1. 你能下载并安装小飞机,证明你的VPS可以访问,脚本应该装完了。小飞机变不变绿色不重要,你只要把SSR客户端中的“系统代理模式”改为“全局模式”就可以了。再仔细核对一下各步骤是否都完成了,各项参数配置是否都正确。2. 你说的“出不去”是说youtube连不上吗?也可能是因为晚上线路拥挤。最好早晨或上午试。3. 没看懂你这句话 – “mac的终端不知道该怎么操作写入”,你百度一下先,或者换个问法?
Thx
Any time!