这是我最早写的翻墙教程,命令需要一行一行地输入,后来为了帮助技术小白们更好上手,所以又写了一个自动执行的脚本。
如果你喜欢,并且动手能力足够强,也可以不用脚本,在VPS上手动安装SSR软件。以下是步骤详解:
1. 使用putty连接VPS,更新CentOS。 拷贝、粘贴执行下面代码框里的命令。
sudo dnf update -y
说明:点击上面代码框里的字符,代码就会被自动拷贝,然后到putty窗口点鼠标右键,命令就会被粘贴到光标处,并自动执行(因为我在代码最后加了一个回车行)。如果没有自动执行,请按一下回车键。
有的VPS很快就更新完,但有的要等好几分钟,耐心点,更新结束后屏幕会提示Complete!
2. 安装必需的软件。拷贝、粘贴执行下面代码框里的命令。
sudo dnf install git python3 nano wget firewalld nginx -y
安装完成后会提示complete!
说明:这一行命令安装了6个软件:
- git,用来从github平台上把SSR,或者叫“酸酸乳”,我们的翻墙工具克隆回来。
- python3,用来运行SSR(它是用Python这种计算机语言编写的)。
- nano,是一款对初学者比较友好的文本编辑软件,可以把它想成windows下的记事本。
- wget,用来把SSR的客户端下载到VPS。你可以把它想成一个没有图形界面的IE浏览器,它通过www来get,所以叫wget。
- firewalld,用来管理CentOS自带的防火墙。
- nginx,可以让VPS具备网站功能,我们将使用这个功能,把SSR客户端下载回本地。
3. 安装SSR
3.1 首先把SSR克隆回来。 拷贝、粘贴执行下面代码框里的命令。
cd /usr/local; sudo git clone -b manyuser https://github.com/shadowsocksrr/shadowsocksr.git
屏幕提示三个done.
说明:这实际上是两条命令,第一条是进入/usr/local目录,第二条是执行克隆,从github.com,也就是软件开发者们保存和分享程序代码的平台上把SSR复制过来。
Linux下可以用分号将多个命令连接起来,一次输入,系统顺序执行,很有效率。
3.2. 执行SSR的初始化配置脚本。 拷贝、粘贴执行下面代码框里的命令。
cd /usr/local/shadowsocksr; sudo bash initcfg.sh
执行后屏幕没什么提示。
说明:也是两条命令顺序执行,功能是进入shadowsocksr目录,执行酸酸乳初始化脚本文件initcfg.sh。
3.3. 配置SSR。
3.3.1 首先用nano打开配置文件。 拷贝、粘贴执行下面代码框里的命令。
sudo nano /usr/local/shadowsocksr/user-config.json
说明:前面说过,nano是linux下最友好的文本编辑器。但你可能还是不习惯,因为它不支持鼠标,只能用键盘上的箭头挪动光标,然后用Delete键或Backspace键来删除,要稍微适应一下。
3.3.2 填写配置文件的内容,手工改容易出错,初次安装时请使用下方的替代方案。
一共要填写设置5处参数,除了server_port的数字,其他4处文本都要写入一对半角的双引号内。
- 将server_port 设成6538
- 将password设为L0v3U$$$
- 将method设为none。
- 将protocol设为auth_chain_a。
- 将obfs设为plain。
这5处就是服务器端与客户端沟通用的“密码本”,这地方怎么设定的,回头在客户端里就要怎么设定。
如果你是手动安装,这一步可以更改两个参数:可以将server_port改成任意一个2千以上、4万以下的数字比如16888,也可以改password,即客户端登陆时要用的密码,要设置的复杂一点,8位以上,并包含大小写、数字与符号。如果你是用脚本安装的,什么也不要改。
修改配置文件的替代方案:在nano里一个一个改不方便,可以清空原配置文件,直接写入新内容。方法如下,共两步:
第一步,在nano界面内,先按Ctrl+6,然后按Alt+t,原文件就清空了
第二步,将下面代码框里的代码,全部拷贝粘贴到nano打开的空白文件里。
{
"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
}
3.3.3 保存文件并退出
如果这是你第一次安装翻墙软件,那么你的nano应该是新版本,可以按Ctrl+s保存内容,屏幕下方中间会提示“[ Wrote xx lines ]”,然后就可以按Ctrl+x退出。
在旧版本的nano里,保存及退出必须做以下三步操作。首先,按Ctrl+x,软件会提示你离开前是否保存,此时按y,软件再提示,保存成当前名字吗?按回车。
3.4 保证SSR能在VPS重启后自动运行
VPS偶尔难免会需要重启,我们要保证重启后,梯子能自动搭起来。
方法是把执行它的动作写成一项系统服务,并放到自启动系列里,这样VPS每次重启后,都会自动执行SSR。
3.4.1 把SSR的运行编写成一项系统服务。 拷贝、粘贴执行下面代码框里的命令,会打开一个空白文件。
sudo nano /etc/systemd/system/shadowsocksr.service
3.4.2 将以下内容拷贝粘贴进去。
[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
3.4.3 保存文件并退出
按Ctrl+s保存内容,然后按Ctrl+x退出。
在旧版本的nano里,保存及退出必须做以下三步操作。首先,按Ctrl+x,软件会提示你离开前是否保存,此时按y,软件再提示,保存成当前名字吗?按回车。
3.4.4 将SSR服务加到开机启动系列,并启动它。 拷贝、粘贴执行下面代码框里的命令
sudo systemctl enable shadowsocksr; sudo systemctl start shadowsocksr
屏幕会提示Created symlink…..
现在,SSR服务器已经搭建完了,接下来要开启防火墙并安装客户端。
但是客户端软件的官网,也是被墙的。如果在网上随便找个地方下载,又可能不安全。
好在,我们预留了解决方案。我们刚才安装了nginx,你的VPS现在就是个网站,把SSR客户端下载到上面,我们不用翻墙就能通过网络浏览器下载到本地。
4. 下载SSR客户端。
4.1 将nginx加入开机启动系列,并开启服务进程。 拷贝、粘贴执行下面代码框里的命令
sudo systemctl enable nginx; sudo systemctl start nginx
屏幕提示Created symlink…..
4.2 设置并开启防火墙。
一定一定要启用防火墙。很多教程图省事,或者写教程的人不懂得怎么做,就建议关闭防火墙,这是极大的不负责任的行为,相当于打开你家大门,热烈欢迎坏人来捣乱。
开启防火墙是有效的保障服务器安全的措施。
4.2.1 将firewalld将入开机启动系列,并启动服务。拷贝、粘贴执行下面代码框里的命令。
systemctl enable firewalld.service; systemctl start firewalld.service
执行完屏幕上没什么特别提示。
4.2.2 将SSR与nginx的网站服务放行。拷贝、粘贴执行下面代码框里的命令(其中“6538”,如果你第3.3.2步改过,这里也要更改)。
sudo firewall-cmd --permanent --add-port=6538/tcp; sudo firewall-cmd --permanent --add-port=6538/udp; sudo firewall-cmd --permanent --zone=public --add-service=http; sudo firewall-cmd --reload
执行完后屏幕上应该显示4行success。
说明:一共4条命令,前两条是将SSR使用的端口放行,允许客户端通过这个端口来与服务器端通讯。
第三条命令是允许http服务,即允许我们的服务器被当作网站访问。
第四条是让防火墙重新加载(reload)一次,让刚才的修改生效。
每条命令都会返回一个success的提示。
4.3 将SSR客户端下载到vps上。拷贝、粘贴执行下面代码框里的命令。
wget https://github.com/shadowsocksrr/shadowsocksr-csharp/releases/download/4.9.2/ShadowsocksR-win-4.9.2.zip; wget https://github.com/shadowsocksrr/shadowsocksr-android/releases/download/3.5.3/shadowsocksr-android-3.5.3.apk; wget https://github.com/wzdnzd/ShadowsocksX-NG-R/releases/download/1.5.1/ShadowsocksX-NG.app.zip
说明:一共执行了3条命令,用wget命令去官网下载了3个客户端,分别用于PC、Android手机以及Mac。zip文件是windows客户端,apk文件是android客户端,dmg文件是macOS客户端。
4.4 将客户端下载到本地电脑或手机上
4.4.1 选项一:用浏览器下载。
4.4.1.1 首先访问VPS。
在电脑网络浏览器地址栏(不是百度的搜索框)输入VPS的IP(比如123.123.123.123)回车,就能看到nginx红彤彤的欢迎页面,如下图。
不要关掉这个页面,一会儿下载客户端的时候要用到。
这个页面就是你的网站的首页。自豪吧?从此你也是有自己网站的人了。
你在世界上任何一台电脑或手机的浏览器地址栏里输入这个IP,都可以访问它。
它显示的是/usr/share/nginx目录(网站的根目录)下index.html文件里的内容。只要你更改这个文件,就可以让它显示别的东西。如果你感兴趣,可以自动研究一下html语言。
4.4.1.2 将客户端文件拷贝至你自己网站的根目录下。拷贝、粘贴执行下面代码框里的命令。(如果你使用了自动安装脚本,请忽略这一步)
cp ShadowsocksR-win-4.9.2.zip /usr/share/nginx/html/1.zip; cp shadowsocksr-android-3.5.3.apk /usr/share/nginx/html/2.apk; cp ShadowsocksX-NG.app.zip /usr/share/nginx/html/3.zip
说明:一共执行了三条命令,用cp命令(copy的缩写)将客户端拷贝到你自己网站的根目录下,并且同时改成好记的名字。
PC的客户端文件被改名为1.zip,Android手机客户端是2.apk,Mac客户端是3.zip
4.4.1.3 将客户端下载到本地电脑或手机上。
回到你电脑上的浏览器,你的红彤彤的nginx欢迎页面,在IP的后面输入”/客户端文件名“回车后就可以下载客户端软件了。注意这个”/”键是从右上向左下倾斜的,别打错了。
比如你的VPS的IP是123.123.123.123,那么
- 浏览器地址栏里输入123.123.123.123/1.zip回车就可以下载windows客户端。
- 浏览器地址栏里输入123.123.123.123/2.apk回车就可以下载Android手机客户端,建议直接用安卓手机的浏览器下载并安装。
- 浏览器地址栏里输入123.123.123.123/3.zip回车就可以下载MAC客户端。
至此服务器端的操作已完成,剩余步骤请参考首页教程。
教程总体非常好用!谢谢作者大大!但是用nginx运行网站下载win客户端那一步,,输入ip/1.zip之后会出现403 forbiden诶……我后来改用python内置的simplehttpserver下载的客户端。作者为啥好久不更新了呀?能不能推荐一下nginx的学习资源哇?
Hi锦鲤,非常感谢你的反馈,也感谢你的夸奖。
你下载时出现403 forbidden错误,不好讲到底是怎么回事。我刚才特意新开了一个新vps按步骤一步步试下来,是没问题的。所以是不是你的VPS并非新装的?
如果其他同学也发生类似问题,也可以安装一个winscp来下载。官网地址是这里:https://winscp.net。我一会儿更新到教程里。
用nginx下载SSR到本地出现403错误那里,有没有可能是SeLinux禁止了对网页文件的访问?因为我最近在vps上搭Rstudio server想在线跑R语言代码,一开始也是登不上,后来禁用了Selinux就好了……
遇到这种情况的同学可以试试。可以用setenforce 0命令临时关闭selinux。试完后再用setenforce 1开启。
开心~电脑,手机都搞定啦,感谢楼主(*^▽^*)
大佬,为什么我就只有刚搭建好服务器,能看油管,当我在把网页关了再进去就看不了
很难讲是哪里的问题。试过其他机房的VPS了吗?都是一样的问题吗?
大佬我每一步都根据你的教程来,但是最后开启全局托管后告诉我1080端口请求被拒绝,纸飞机我给了管理员权限,putty也是有管理员的,但是现在没法上网
如果你有防火墙或网络安装软件,试着暂停一下。
另外右键点纸飞机->选项设置->本地代理->1080,把它改成1081/1082/1083…试试
用了快1个月了,最近折腾了一下VPS远程桌面的设置,SSR突然就连不上了,请教一下大神给想想办法
不清楚你具体怎么折腾的,不好讲。
可能是不小心改了某些配置,也可能你用远程桌面看了啥不该看的,导致IP被封了。
但解决思路,无非是重启 -> 重装 -> 换新的VPS
感谢!你的方法是最好用的~
楼主你好,请问搭好的ssr服务器能否使用Clash类似的软件作为客户端使用
不熟悉这个软件,我下载试了下,不能直接使用,估计要手工修改clash的配置文件才行。
你好,你的一键脚本在finalshell可以用吗?
我没用过finalshell,但应该可以。你试试。任何SSH软件,只要连上VPS,进入命令行,都可以跑脚本。因为脚本是在VPS上跑,不是在SSH软件上跑。
田野兄,请教下这种科学上网方法目前可以使用GPT4吗,在网上找了一些帖子,了解到去年3-4月份好像Vultr有被openai封ip,最近看了一些gpt4的介绍,特别想使用来帮助学习,想请问下目前Vultr可以正常使用GPT4吗,或者可以如何安心使用gpt4呢,嘿嘿,谢谢
你可以试试Kamatera的VPS。它的市场占有率小,所以IP的伪装性最好、被拦截的概率最低。我没有正儿八经地玩ChatGPT,所以不敢拍胸脯讲,但我在其他很多场景试过,别的VPS都登陆不了时,kamatera家的可以登。
客户端下载下来的1.zip解压缩出现了问题。在其他地方下载的ShadowRocket配置界面不一样。
另外能否增加clash for windows和IOs的Quantumult X的配置教程?十分感谢
我自己解决了以上问的所有问题,来回复一下希望对大家有帮助。
1. 下载到电脑的1.zip不要用Windows系统解压缩,用WinRAR解压缩就能打开然后顺利在Windows系统上顺利使用。
2.iPhone手机上已经购买了Quantumult X软件可以直接打开app扫描客户端上生成的二维码就能直接连接了。免费软件Potatso不稳定容易掉线。
感谢博主的无私奉献,自己作为IT外行,一篇文章解决了大问题,以后可以安全快速的网上冲浪了(暴露年龄的用词)
大叔不要害怕,我们这些年轻人也说“网上冲浪”,而不是“网上浪”,哈哈哈哈
都是80后就别装年轻了吧^_^
大佬,根据步骤来也没有报错,但是还是访问不了会不会是因为使用的是cenos9的原因?但是vultr只有os7和os9
没错,我刚注意到Vultr上已经没有CentOS8了。把操作系统换成AlmaLinux 8 x64就可以了。