写在前面
为什么会有这篇东西
-
平时工作学习需要查找一些外网资料,偶尔也翻翻 P 站、推特,故需要科学上网的方法,用别人现成的工具
试过了不好用不符合我的上网风格 -
网上虽然已经有蛮多的教程,但多数都是 happy pass,与自己的实际操作多少有出入,其中遇到的很多问题并没有给出解决方案,需要另外查找
-
搭建的过程中,有一些固定的步骤和共同的问题最好还是记录下来,便于备忘及日后学习和应用
-
不定期 修改 & 更新
使用 VPS 搭梯子实现科学上网
VPS简介:
VPS,全称 Virtual private server,虚拟专用服务器,是将一台服务器分区成多个虚拟专享服务器的服务。每个 VPS 可配置独立 IP、内存、CPU 资源、操作系统。对于开发者来说,如果需要搭建个人网站,或者跑一些 demo,VPS 是很经济实惠的。同时 还能用 VPS 搭建 ShadowSocks 做梯子,一个人独占一条线路,稳定性高。
一、VPS 购买
通常用得比较多的是 Vultr ,性价比还行,官网没有被墙,网上也能找到较多的资料。不过近年来 Vultr 的 IP 已经不太好用,被墙的以及网络慢的占多数。不过仅仅是个人轻度使用完全足够。
注册登录与选择套餐不再赘述。
部署好后就要测试这个服务器分得的IP是否满足搭梯子的需要了,一般做以下步骤:
-
测试 IP 地址的连通性:
-
用其它主机(例如本机) ping
-
-
测试 ftp(22) 端口连通性:
只有 IP 正常响应同时端口开放的地址才是可用的服务器,如果有一项不通过则删除服务器重新选购直到刷出能用的 IP为止,到此 VPS 购买完成。
以下为 $5 的环境配置信息:
- OS: CentOS 7 x64
- CPU: 1 vCore
- RAM: 1024 MB
- Storage: 25 GB SSD
- Bandwidth: 0 GB of 1000 GB
二、配置
设置开机密码(CentOS 7, 其余版本自行搜索)
-
打开服务器的网页控制台,点击 send CtrlAltDel,然后按 ESC 键启动 GRUB boot prompt
-
按e开始第一启动项,按下方向键移动光标,在 linux16 这行,将 ro 改为 rw init=/sysroot/bin/sh
-
按 Ctrl+X 启动单用户,输入 chroot /sysroot 并回车,再输入passwd 回车,便可修改 root 密码
-
输入 reboot -f 并回车,完成设置
配置 putty 远程连接
本地安装 putty 客户端,下载网址
附:CentOS 7 下常用命令
yum update 更新软件包
yum install net-tools 安装 netstat 工具
yum install vim 安装 vim 编辑器
netstat -lntp 查看端口
netstat -antp 查看 TCP 连接
安装 SS 并配置
putty 连接上后输入以下命令
yum update
yum install python-setuptools
yum install python-pip
pip install shadowsocks
mkdir /etc/shadowsocks
vim /etc/shadowsocks/config.json
然后配置文件如下:
单端口:
{
"server": "0.0.0.0",
"server_port": 8421,
"password": "password",
"method": "aes-256-cfb"
}
多端口:
{
"server": "0.0.0.0",
"port_password": {
"8421": "password1",
"8422": "password2",
"8423": "password3",
"8424": "password4"
},
"timeout": 300,
"method": "aes-256-cfb"
}
编辑好配置文件后,以下为启动命令:
不打印日志:
ssserver -c /etc/shadowsocks/config.json -d start
打印日志:
nohup ssserver -c /etc/shadowsocks/config.json > /etc/shadowsocks/ssserver.log 2>&1
若安装 python-pip 出现 No package python-pip available
, 是因为 python-pip 包含于源 epel 中, 而系统中无此源
执行如下语句安装 epel
yum -y install epel-release
三、本地客户端与浏览器配置
ShadowSocks 客户端配置
- 下载对应操作系统版本的 shadowsocks,配置没有什么难度,打开配置即可
浏览器配置
- Chrome 浏览器一般使用 SwitchyOmega 插件,配置代理协议为 HTTP 即可,代理服务器为 127.0.0.1,端口为本地的 shadowsocks 代理端口 (通常为1080)
四、存在的问题
-
在尝试搭建完后,发现本地代理连接不上服务器,推测可能性有两点:
- 配置有问题
- shadowsocks 配置问题
- 系统端口未开放
- IP 已经被墙
- 配置有问题
-
使用站长工具测试 IP 的代理端口,发现已经关闭,使用本地命令查看端口,LISTEN 状态,查看日志,一切正常,初步推断此 IP 已经不能用了
五、解决方案
-
换 IP
多次尝试无果暂时放弃,考虑使用 Tor 上外网
-
换 VPS 供应商
下阶段试验供应商:linode
![]() |
![]() |