穿墙指南¶
引言¶
为了更好的进行程序开发,常常要去github/google
上查找资料,所以开始寻找如何能够科学上网的方法
目前大致有2
种模式
- 购买网站套餐
- 购买海外服务器自己搭建
购买网站套餐¶
最开始就是这样实现的,尝试过免费软件(比如蓝灯),后来就使用付费套餐(MonoCloud、borderSS
、影梭)
免费软件不稳定,付费套餐同样不稳定,刚开始尝试一两个月没有问题,等到付了1
年的费用后,没几个月连网站都登不上了
尝试了几次后总觉得不靠谱,所以选择第二种方法
购买海外服务器自己搭建¶
购买海外VPS
服务器
我使用的是vultr,类似的还有linode、google cloud、BandwagonHOST
无意间发现比特熊,没有使用过,不过价格很便宜
参考:
什么是VPS¶
参考:VPS
VPS,Virtual Private Server
,虚拟专用服务器,其是将物理服务器通过虚拟化技术虚拟成为多个虚拟专用服务器
VPS
的优点¶
同一服务器上的多个VPS
共享硬件、软件许可证以及管理资源,以最大化效率运行
对于用户而言,每个VPS
平台的管理和运行与独立主机完全相同,有独立的公网IP
地址、操作系统、磁盘空间、内存、CPU
资源、进程和系统配置,可以单独安装程序并且单独重启主机
VPS
的实现¶
实现VPS
的方式有两种,一种是虚拟化技术,比如XEN, KVM, OpenVZ
,另一种是容器技术,比如Docker
VPS vs ECS
¶
参考:
ECS(Elastic Computer Service)
指的是云服务器,其实现是通过服务器集群来虚拟出独立服务器,对服务器的资源扩展有更高的可操作性;同时通过冗余的共享存储和智能备份,单个服务器的故障不影响云服务器的使用,大大提高了安全性和稳定性
什么是使用VPS
以及ECS
¶
VPS
的价格一般比ECS
低,所以针对小规模并发访问,资源扩展性不大的操作可以使用VPS
VPS
厂商包括:vultr、linode、BandwagonHOST和google cloud
如果后期可能需要弹性增加资源,同时对安全性和稳定性有更高要求的可以使用ECS
如何测速¶
不同的线路对于网速差别极大,一般来说,距离越远,延时越大
命令行测速¶
ping
¶
参考:Calculate upload/download speed by ping
$ ping 149.28.83.99
PING 149.28.83.99 (149.28.83.99) 56(84) bytes of data.
64 bytes from 149.28.83.99: icmp_seq=1 ttl=45 time=187 ms
64 bytes from 149.28.83.99: icmp_seq=2 ttl=45 time=187 ms
64 bytes from 149.28.83.99: icmp_seq=3 ttl=45 time=187 ms
64 bytes from 149.28.83.99: icmp_seq=4 ttl=45 time=190 ms
64 bytes from 149.28.83.99: icmp_seq=5 ttl=45 time=186 ms
64 bytes from 149.28.83.99: icmp_seq=6 ttl=45 time=186 ms
64 bytes from 149.28.83.99: icmp_seq=7 ttl=45 time=187 ms
64 bytes from 149.28.83.99: icmp_seq=8 ttl=45 time=186 ms
64 bytes from 149.28.83.99: icmp_seq=9 ttl=45 time=188 ms
64 bytes from 149.28.83.99: icmp_seq=10 ttl=45 time=188 ms
64 bytes from 149.28.83.99: icmp_seq=11 ttl=45 time=187 ms
^C
--- 149.28.83.99 ping statistics ---
11 packets transmitted, 11 received, 0% packet loss, time 10011ms
rtt min/avg/max/mdev = 186.880/187.645/190.295/1.125 ms
发送64
字节平均需要187.645
毫秒,延时非常严重
speedtest-cli
¶
参考:
github
有speedtest的命令行版本
$ pip install speedtest-cli
测试网速
$ speedtest
Retrieving speedtest.net configuration...
Testing from UNICOM ZheJiang (101.68.71.72)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by Hangzhou , Zhejiang Unicom (Hangzhou) [4.91 km]: 2.893 ms
Testing download speed................................................................................
Download: 51.89 Mbit/s
Testing upload speed......................................................................................................
Upload: 3.94 Mbit/s
测试服务器Zhejiang Unicom (Hangzhou)
,距离是4.91km
,下载速度为51.89Mbit/s
,上传速度为3.94Mbit/s
可以查找所有在美国的服务器
$ speedtest --list | grep -i america
8464) Bluesky Communications (Pago Pago, American Samoa) [8895.69 km]
20275) Blue Nap Americas (Willemstad, Curaçao) [15200.29 km]
16317) America Telecom (Macapa, Brazil) [16525.29 km]
3455) America Movil Peru SAC (Lima, Peru) [17321.89 km]
10275) Byteweb Telecom (Americana, Brazil) [18515.34 km]
18357) SIMNET (Americana, Brazil) [18515.34 km]
22460) NET Virtua (Americana, Brazil) [18515.34 km]
15091) SWISS-NET (Jardin America, Argentina) [19438.10 km]
...
...
指定服务器id
进行测速,参数--share
能够上传数据,生成一个数据图片
$ speedtest --server 16317 --share
Retrieving speedtest.net configuration...
Testing from UNICOM ZheJiang (101.68.71.72)...
Retrieving speedtest.net server list...
Retrieving information for the selected server...
Hosted by America Telecom (Macapa) [16525.29 km]: 354.928 ms
Testing download speed................................................................................
Download: 17.64 Mbit/s
Testing upload speed...............81.8M...........................................................................
Upload: 16.45 Mbit/s81.8M
Share results: http://www.speedtest.net/result/8068095904.png
如何加速¶
常见的加速方法包括BBR
、锐速
BBR
加速¶
参考:
BBR是google
实现的一种TCP
拥塞控制算法。BBR
已在新版本的Linux
内核中集成,需要高于等于4.9
的Linux
内核才能开启
在root
权限下执行
# 下载一键安装包
$ wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh
# 赋予执行权限
$ chmod +x bbr.sh
# 执行脚本
$ ./bbr.sh
安装完成后重启系统
# 检查linux内核
$ uanme -r
4.20.12-042012-generic
# 开启TCP BBR
$ sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = reno cubic bbr
$ sysctl net.ipv4.tcp_congestion_control
net.ipv4.tcp_congestion_control = bbr
$ sysctl net.core.default_qdisc
net.core.default_qdisc = fq
# 查看bbr是否已启动
$ lsmod | grep bbr
tcp_bbr 20480 20
测试网速
$ speedtest --share
Retrieving speedtest.net configuration...
Testing from Choopa, LLC (149.28.83.99)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by WebNX (Los Angeles, CA) [2.73 km]: 3.155 ms
Testing download speed................................................................................
Download: 2721.15 Mbit/s
Testing upload speed................................................................................................
Upload: 1708.89 Mbit/s
Share results: http://www.speedtest.net/result/8068280714.png
魔改BBR
¶
如何判断ip或端口被封¶
参考:
这一段时间经常无法连接外网,最常遇到的两个问题是
ping ip
不成功ping ip
成功但是浏览器无法连接外网
在网上找了很久资料,终于对IP
或端口被封有了一些理解
IP检测¶
命令行方式¶
最简单的是在命令行窗口上测试
$ ping 136.244.112.3
PING 136.244.112.3 (136.244.112.3) 56(84) bytes of data.
64 bytes from 136.244.112.3: icmp_seq=1 ttl=46 time=240 ms
64 bytes from 136.244.112.3: icmp_seq=2 ttl=46 time=240 ms
64 bytes from 136.244.112.3: icmp_seq=3 ttl=46 time=242 ms
64 bytes from 136.244.112.3: icmp_seq=4 ttl=46 time=239 ms
^C
--- 136.244.112.3 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3003ms
rtt min/avg/max/mdev = 239.683/240.601/242.435/1.078 ms
判断¶
- 如果国内和国外都
ping
不通,则是海外服务器的问题 - 如果国内
ping
不通,国外能ping
通,那么IP
被封了
解决方式¶
- 对于
IP
被封,需要重新更换IP
- 对于端口被封,需要重新设置
ssr
服务器端口号
重新设置ssr
服务端端口号时,先删除已有进程,再重新设置
# 查询进程
$ ps aux | grep shadowsocks
# 删除
$ sudo kill xxx
# 重新启动ssr服务端
$ ss-fly/ss-fly.sh -ssr
重新更新客户端配置时,会出现1080端口被占用的提示,最好先杀死原先的客户端进程,再重新启动
# 查询占用1080端口的进程
$ sudo netstat -lnp | grep 1080
# 杀死进程
$ sudo kill xxx
# 重启ssr客户端
$ electron-ssr
手动翻墙¶
之前使用过很多个付费翻墙软件,最终都因为线路不稳定而放弃。最近一个是影梭,用了4
个月还不错,今天让我重新续费,没想到再付了3
个月的费用后无法使用新的线路
在网上找到手动翻墙的文章,尝试一下:
整个过程就是购买国外服务器,在上面搭建Shadowsocks
服务器,然后在本地搭建Shadowsocks
客户端以及浏览器配置
翻墙网站实现了前两步,所以在上面注册购买服务后只需在本地进行操作即可。
目录
VPS
服务器部署¶
国外的VPS
(虚拟专用服务器,Virtual Private Server
)服务商有linode
,VULTR
,DigitalOcean
等,我参考文章选择VULTR
VULTR
支持支付宝和微信支付,按小时计费
How am I billed for my instances?
All servers on your account are billed hourly up to the monthly rate cap. The hourly rate is determined by dividing the monthly rate by 672 hours (28 days). If your server is online for more than 672 hours in a calendar month, you will only be billed the monthly rate. Accumulated charges are invoiced to your account on the 1st of every month.
你账户上的所有服务器都按小时费率计费。每小时费率由每月672小时(28天)除以。如果您的服务器在日历月上线超过672小时,您将只计入月度费率。累积费用在每月第一天的账单上开具。
What payment methods do you accept?
We accept Visa, Mastercard, American Express, Discover, JCB, Bitcoin (BTC and BCH), Alipay, UnionPay, WeChat Pay, and PayPal. Depending on your geographic region, Paypal supports additional payment networks, including Giropay and bank transfers.
有一个中文相关网站:https://www.vultryhw.com/
部署服务器¶
点击右上角的加号图标
选择服务器位置(Server Location
),服务器类型(Server Type
)以及服务器配置(Server Size
)
个人配置:
Server Location: Los Angeles(United States)
Server Type: Ubuntu 16.04 x64
Serve Size: 20GB SSD $3.50/mo $0.005/h
当时冲了$10
花了70.7
元人民币,$3.50=¥24.745
额外配置的话选择Enable IPv6
点击Deploy Now
,一个服务器即配置完成并开始部署
点击该服务器,即可查看相应的ip
,用户名和密码
Shadowsocks
服务器搭建¶
上面完成了远程服务器的部署,本节实现远程服务器的连接以及在上面搭建Shadowsocks
服务器
Shadowsocks
服务器搭建¶
使用一个脚本进行一键安装
# 原来的这个库被作者清空了
git clone https://github.com/Flyzy2005/ss-fly
# 在github上找了一个,自己也备份了一下
git clone https://github.com/zjZSTU/ss-fly.git
ss-fly/ss-fly.sh -i password 1024
将password
替换成自定义的密码,1024
表示端口号(默认为1024
,可以更改)
搭建成功后会提示
将该命令加入到启动文件/etc/profile
实现开机自启动
Ubuntu代理配置¶
目前用的 VPN
是影梭,发现它没有对应的 Linux
使用教程
在网上找了一些资料,有多种方式可以实现翻墙,记录一下
主要内容:
Shadowsocks
安装和配置¶
Shadowsocks
可以通过命令行设置,也可以通过图形界面设置
仅仅通过设置 Shadowsocks
还不能连接外网,还需要在浏览器(以 Chrome
为例)上设置代理或者设置全局代理
官方 wiki
:shadowsocks/shadowsocks-qt5
命令行安装和配置¶
参考:Linux下使用shadowsocks(以ubuntu16.04为例,非服务器)
github
上面还有好多不同版本的 shadowsocks
,比如 shadowsocks-go
安装:
sudo apt-get install shadowsocks
安装完成后可以使用命令 sslocal
zhujian@zhujian-virtual-machine:~$ sslocal -h
usage: sslocal [-h] -s SERVER_ADDR [-p SERVER_PORT]
[-b LOCAL_ADDR] [-l LOCAL_PORT] -k PASSWORD [-m METHOD]
[-t TIMEOUT] [-c CONFIG] [--fast-open] [-v] [-q]
optional arguments:
-h, --help show this help message and exit
-s SERVER_ADDR server address
-p SERVER_PORT server port, default: 8388
-b LOCAL_ADDR local binding address, default: 127.0.0.1
-l LOCAL_PORT local port, default: 1080
-k PASSWORD password
-m METHOD encryption method, default: aes-256-cfb
-t TIMEOUT timeout in seconds, default: 300
-c CONFIG path to config file
--fast-open use TCP_FASTOPEN, requires Linux 3.7+
-v, -vv verbose mode
-q, -qq quiet mode, only show warnings/errors
Online help: <https://github.com/clowwindy/shadowsocks>
可以通过命令行的方式配置,也可以通过配置文件的方式进行
主要修改 server
, server_port
和 password
配置代理文件 shadowsocks.json
{
"server":"服务器的ip",
"server_port":服务器的端口,
"local_address":"127.0.0.1",
"local_port":1080,
"password":"密码",
"timeout":300,
"method":"aes-256-cfb",
"fast_open":true
}
配置文件方式启动代理:
sslocal -c shadowsocks.json
这里写图片描述
客户端安装和配置¶
安装:
sudo add-apt-repository ppa:hzwhuang/ss-qt5
sudo apt-get update
sudo apt-get install shadowsocks-qt5
安装完成后可以在搜索栏中打开 Shadowsocks
这里写图片描述
可以通过扫描二维码的方式获取 VPN
配置
这里写图片描述
创建代理后点击连接即可
Chrome
代理配置¶
启动 Shadowsocks
代理后,还需要在浏览器(以 Chrome
为例)上进行代理设置,利用插件 SwitchyOmega
实现
SwitchyOmega
安装¶
国内下载网站:Proxy SwitchyOmega
下载插件后,打开 Chrome
浏览器,搜索栏中输入 chrome://extensions/
进入插件管理页面
这里写图片描述
直接将插件拖拽到该页面即可自动安装
问题:插件无法安装
参考:
ubuntu 16.04 chrome无法拖拽安装crx插件
linux下怎么用命令行开启chrome?还有就是常见的安装软件linux下安装在哪儿?
如果上述方式无法安装插件,通过命令行启动 Chrome
google-chrome --enable-easy-off-store-extension-install
重复上述操作即可
SwitchyOmega 代理¶
安装完成后,搜索栏旁边出现图标
这里写图片描述
点击该图标 -> Options
,打开设置页面
这里写图片描述
点击左侧 New profile
选项,新建配置文件
这里写图片描述
输入配置文件名(随意,比如 ss
),默认选择 Proxy Profile
,点击 Create
`
这里写图片描述
然后在新创建的配置文件中选择 Protocol -> SOCKS5
,输入 Server -> 127.0.0.1
,输入 Port -> 1080
,点击左下角的 Apply Changes
这里写图片描述
完成上述操作后,点击 SwitchyOmega
图标,选择刚才创建的配置文件 ss
,即可访问外网
全局代理配置¶
参考:
ubuntu基于shadowsocks的PAC全局代理:解决方案
ubuntu下 shadowsocks(VPN)配置全局可用
安装 GenPAC
:
pip install genpac
生成本地 pac
文件
genpac --format=pac --pac-proxy="SOCKS5 127.0.0.1:1080" --output="autoproxy.pac"
打开系统设置 ->
网络 ->
网络代理
这里写图片描述
Method
选项选择 Automatic
,Configuration URL
输入本地文件
file:///you_path/autoproxy.pac
点击 Apply system wide
即可实现全局代理
ProxyChains
¶
设置完成全局代理后,在终端仍旧会出现无法连接的情况,需要进一步设置代理,可以使用工具 proxychains
或者 polipo
以 proxychains
为例
安装:
sudo apt-get install proxychains
修改配置文件 /etc/proxychains.conf
#socks4 127.0.0.1 9050
socks5 127.0.0.1 1080
重启应用
sudo /etc/init.d/proxychains restart
打开命令行窗口,在输入命令的前面增加 proxychains
即可
proxychains curl www.google.com
问题:proxychains ping www.google.com
出错
ProxyChains-3.1 (http://proxychains.sf.net)
ERROR: ld.so: object 'libproxychains.so.3' from LD_PRELOAD cannot be preloaded (cannot open shared object file): ignored.
PING www.google.com (74.86.17.48) 56(84) bytes of data.
参考:
proxychains-ld-preload-cannot-be-preloaded
Is ping not supposed to work via proxychains?
这里面共有两个问题,第一个问题:没有预加载 libproxychains.so.3
查找:
locate libproxychains.so.3
/usr/lib/x86_64-linux-gnu/libproxychains.so.3
/usr/lib/x86_64-linux-gnu/libproxychains.so.3.0.0
可以修改预加载文件 /usr/bin/proxychains
cat /usr/bin/proxychains
#!/bin/sh
echo "ProxyChains-3.1 (http://proxychains.sf.net)"
if [ $# = 0 ] ; then
echo " usage:"
echo " proxychains <prog> [args]"
exit
fi
export LD_PRELOAD=libproxychains.so.3
exec "$@"
或者自己添加到环境变量
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libproxychains.so.3
第二个问题:proxychains
对 ping
没用
参考:Is ping not supposed to work via proxychains?
proxychains
使用的协议和 ping
使用的协议不同
SwitchyOmega代理设置¶
之前进行浏览器代理设置时只是简单的添加了代理服务器,并没有添加代理规则实现自动切换国内国外网站
参考用SwitchyOmega管理代理设置进行自动切换代理设置
配置¶
删除已配置模式¶
安装完成后默认已设置好两个情景模式:auto switch
和proxy
,可以删除它们,删除顺序为auto switch->proxy
添加代理服务器¶
新建一个情景模式New Profile
,选择类型为Proxy Profile
(代理服务器),命名为ss
在Proxy Servers
中选择Protocol
为SOCKS5
,Server
为127.0.0.1
,Port
为1080
,最后点击左下角的Apply Changes
添加自动切换模式¶
再次新建一个New Profile
,选择类型为Switch Profile
,命名为ss_auto_switch
规则列表设置¶
首先配置Rule List Config
,选择Rule List Format
为AutoProxy
,在Rule List URL
中填入规则列表
https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt
点击Download Profile Now
,里面包含了许多国外网址
其次配置Switch Rules
,对于类型Rule list rules
,选择Profile
为ss
(就是刚才配置的代理服务器),选择类型Default
为Direct
(直连,不经过代理服务器)
其操作规则就是符合下面规则列表中的网址都经过代理服务器
情景模式设置¶
规则列表中没有包含全部的国外网站,还可以单独设置情景模式
在Switch rules
中点击Add condition
添加一行,在Condition Details
中添加想要切换的网址,比如*.github.com
,在Profile
中选择ss
,这样符合条件的网址会通过代理服务器进行连接
也可以在实际操作中添加切换情景,点击SwitchyOmega
图标,选择failed resources->add condition
,即可将这些网址添加到情景模式中
ip查询¶
使用https://www.geoiptool.com/zh/或者http://ip111.cn/查询我的ip
地址
当我直连时,使用的是杭州的ip
;当我使用代理服务器时,使用的是美国的ip
Ubuntu全局代理设置¶
配置SwitchyOmega代理设置仅仅能够实现浏览器代理,还需要设置全局代理才能在命令行访问国外资源
生成pac
文件¶
参考Ubuntu代理配置安装genpac
参考ubuntu使用shadowsocks设置全局代理生成配置文件autoproxy.pac
$ genpac --proxy="SOCKS5 127.0.0.1:1080" --gfwlist-proxy="SOCKS5 127.0.0.1:1080" -o autoproxy.pac --gfwlist-url="https://raw.githubusercontent.com/gfwlist/gfwlist/master/gfwlist.txt"
系统配置¶
打开系统设置->Network->Network proxy
,选择Method
为Automatic
,在Configuration URL
中填入生成的文件路径
file://文件路径
# 我的
file:///home/zj/software/vpn/autoproxy.pac
点击Apply system wide
即可生效
代理工具设置¶
代理操作使用SOCKS5
协议,大多命令行操作使用HTTP/HTTPS
协议,所以需要使用代理工具进行转换
参考Ubuntu代理配置安装ProxyChains
测试命令
$ proxychains curl www.google.com
# 或
$ proxychains wget www.google.com
ssr配置¶
最近这几天经常出现网络断线的问题,重新找了ssr
(酸酸乳)的服务端设置方法
SSR服务端¶
文章正确的翻墙姿势-SS&SSR比较详细的讲述了SS/SSR
的发展历程,并给出了一些配置的建议
文章记录酸酸乳(SSR)服务器搭建历程,我只是想查个资料比较详细的讲解了利用vultr
进行ssr
服务端搭建的过程,其仓库地址已失效,使用如下地址:
# 原来的这个库被作者清空了
git clone https://github.com/Flyzy2005/ss-fly
# 在github上找了一个,自己也备份了一下
git clone https://github.com/zjZSTU/ss-fly.git
当前操作
- 执行
ssr
$ ss-fly/ss-fly.sh -ssr
- 输入密码
Please enter password for ShadowsocksR:
(Default password: teddysun.com):
- 输入端口号(默认)
Please enter a port for ShadowsocksR [1-65535]
(Default port: 10644):
- 选择流密码(默认)
Which cipher you'd select(Default: aes-256-cfb):
- 选择协议:
auth_chain_a
Which protocol you'd select(Default: origin):7
- 选择混淆(默认)
Which obfs you'd select(Default: plain):
完成服务端配置:
Congratulations, ShadowsocksR server install completed!
Your Server IP : xx.xx.xx.xx
Your Server Port : xxxxx
Your Password : xxxxxx
Your Protocol : auth_chain_a
Your obfs : plain
Your Encryption Method: aes-256-cfb
Welcome to visit:https://shadowsocks.be/9.html
Enjoy it!
注意:配置完成后如果失效,尝试删除已有的进程,再重新配置一遍
$ ps -aux | grep shadowsock
SSR客户端¶
之前使用SS
搭梯子的时候使用的是Shadowsocks-Qt5
,里面没有加密协议的选项,所以参考在 Ubuntu 上使用 SSR 梯子安装electron-ssr
安装electron-ssr
完成后打开,输入服务器端配置,设置为PAC
代理即可
关于浏览器配置和系统设置,参考:
[brook]服务端+客户端设置¶
最近用ssr
搭建的梯子经常会被封掉,打算换一种代理工具 - brook
下载¶
$ wget https://github.com/txthinking/brook/releases/download/v20190601/brook
赋值可执行权限:
$ chmod +x brook
其他版本参考Download
客户端设置¶
$ ./brook client -l 127.0.0.1:1080 -i 127.0.0.1 -s server_ip:port -p passwd
1080
是sock5
协议默认端口号,依次修改服务器IP
(server_ip
)、端口号(port
)和密码(passwd
)
在浏览器和全局设置参考之前文章即可
优化¶
可以将命令行设置为后台运行或启动服务运行
后台运行¶
参考:
格式如下:
$ nohup 命令 &
可以新建服务端脚本brook-server.sh
:
#!/bin/bash
nohup ./brook server -l :$1 -p $2 &
执行脚本命令:
$ sh brook-server.sh port passwd
依次输入端口号和密码即可
同样可以新建客户端脚本brook-client.sh
:
#!/bin/bash
nphup ./brook client -l 127.0.0.1:1080 -i 127.0.0.1 -s server-ip:port -p passwd &
执行脚本命令:
$ sh brook-client.sh server-ip port passwd
依次输入服务器ip,端口号和密码即可
启动服务运行¶
参考:Brook---一款优秀的小众代理软件(酸酸乳和酸酸的完美替代品)
通过启动服务来运行服务端brook
。新建文件brook.service
[Unit]
Description=brook service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
ExecStart=/path/to/brook server -l :port -p passwd # 使用绝对路径
[Install]
WantedBy=multi-user.target
设置root权限:
$ sudo chmod 777 brook.service
放置在/etc/systemd/system
文件夹内,使用工具systemctl
启动服务
systemctl start brook # 启动brook
systemctl stop brook # 停止brook
systemctl status brook # 查看brook服务状态
systemctl restart brook # 重启brook服务
systemctl enable brook # 将brook加入开机启动项
相关¶
除了brook
外,还找到一个代理工具V2Ray
youtube
上有关翻墙软件的测评:哪种翻墙软件更隐蔽?!联通后台数据实测SS/SSR/V2Ray/Brook 翻墙APP!请耐心看完本教程,能让你避免被请喝茶!
v2ray使用¶
参考:
如果使用SS或SSR频繁被墙IP墙端口那么你需要使用v2ray科学上网
今天翻墙又双叒叕不行了,这次打算使用v2ray,不过其官网一直打不开,所以主要参考233boy/v2ray
什么是v2ray¶
v2ray
是一个代理软件,相比于shadowsocks
,它实现了更多的代理协议和功能(包括shadowsocks
)
安装¶
有2
种方式:
- 官方脚本
- 第三方脚本(推荐)
官方脚本¶
v2ray
提供了一个安装脚本
$ sudo su
# bash <(curl -L -s https://install.direct/go.sh)
Installing V2Ray v4.20.0 on x86_64
Downloading V2Ray: https://github.com/v2ray/v2ray-core/releases/download/v4.20.0/v2ray-linux-64.zip
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 608 0 608 0 0 527 0 --:--:-- 0:00:01 --:--:-- 528
100 11.3M 100 11.3M 0 0 1442k 0 0:00:08 0:00:08 --:--:-- 2501k
Extracting V2Ray package to /tmp/v2ray.
Archive: /tmp/v2ray/v2ray.zip
inflating: /tmp/v2ray/config.json
creating: /tmp/v2ray/doc/
inflating: /tmp/v2ray/doc/readme.md
inflating: /tmp/v2ray/geoip.dat
inflating: /tmp/v2ray/geosite.dat
creating: /tmp/v2ray/systemd/
inflating: /tmp/v2ray/systemd/v2ray.service
creating: /tmp/v2ray/systemv/
inflating: /tmp/v2ray/systemv/v2ray
inflating: /tmp/v2ray/v2ctl
extracting: /tmp/v2ray/v2ctl.sig
inflating: /tmp/v2ray/v2ray
extracting: /tmp/v2ray/v2ray.sig
inflating: /tmp/v2ray/vpoint_socks_vmess.json
inflating: /tmp/v2ray/vpoint_vmess_freedom.json
PORT:19088
UUID:98405c82-8056-4694-9676-d166da29f0c8
Created symlink from /etc/systemd/system/multi-user.target.wants/v2ray.service to /etc/systemd/system/v2ray.service.
V2Ray v4.20.0 is installed.
其仅实现了安装功能,其他操作(管理/卸载等)都很麻烦,不推荐使用
第三方脚本¶
233boy提供了一个一键安装和管理脚本,参考V2Ray一键安装脚本,里面不仅集成了安装/卸载功能,还具备配置选项
下载并执行脚本v2ray.sh
,当前选择默认配置
$ bash <(curl -s -L https://git.io/v2ray.sh)
........... V2Ray 一键安装脚本 & 管理脚本 by 233v2.com ..........
帮助说明: https://233v2.com/post/1/
搭建教程: https://233v2.com/post/2/
1. 安装
2. 卸载
请选择 [1-2]:1
请选择 V2Ray 传输协议 [1-32]
1. TCP
2. TCP_HTTP
3. WebSocket
4. WebSocket + TLS
5. HTTP/2
6. mKCP
7. mKCP_utp
8. mKCP_srtp
9. mKCP_wechat-video
10. mKCP_dtls
11. mKCP_wireguard
12. QUIC
13. QUIC_utp
14. QUIC_srtp
15. QUIC_wechat-video
16. QUIC_dtls
17. QUIC_wireguard
18. TCP_dynamicPort
19. TCP_HTTP_dynamicPort
20. WebSocket_dynamicPort
21. mKCP_dynamicPort
22. mKCP_utp_dynamicPort
23. mKCP_srtp_dynamicPort
24. mKCP_wechat-video_dynamicPort
25. mKCP_dtls_dynamicPort
26. mKCP_wireguard_dynamicPort
27. QUIC_dynamicPort
28. QUIC_utp_dynamicPort
29. QUIC_srtp_dynamicPort
30. QUIC_wechat-video_dynamicPort
31. QUIC_dtls_dynamicPort
32. QUIC_wireguard_dynamicPort
备注1: 含有 [dynamicPort] 的即启用动态端口..
备注2: [utp | srtp | wechat-video | dtls | wireguard] 分别伪装成 [BT下载 | 视频通话 | 微信视频通话 | DTLS 1.2 数据包 | WireGuard 数据包]
(默认协议: TCP):
V2Ray 传输协议 = TCP
----------------------------------------------------------------
请输入 V2Ray 端口 [1-65535]
(默认端口: 60663):
V2Ray 端口 = 60663
----------------------------------------------------------------
是否开启广告拦截(会影响性能) [Y/N]
(默认 [N]):
广告拦截 = 关闭
----------------------------------------------------------------
是否配置 Shadowsocks [Y/N]
(默认 [N]):
....准备安装了咯..看看有毛有配置正确了...
---------- 安装信息 -------------
V2Ray 传输协议 = TCP
V2Ray 端口 = 60663
是否配置 Shadowsocks = 未配置
---------- END -------------
按 Enter 回车键 继续....或按 Ctrl + C 取消.
extracting: /tmp/v2ray/v2ctl.sig
inflating: /tmp/v2ray/v2ray
extracting: /tmp/v2ray/v2ray.sig
inflating: /tmp/v2ray/vpoint_socks_vmess.json
inflating: /tmp/v2ray/vpoint_vmess_freedom.json
..由于你的 VPS 内核支持开启 BBR ...已经为你启用 BBR 优化....
---------- V2Ray 配置信息 -------------
地址 (Address) = 207.xx.xx.22
端口 (Port) = 6xx63
用户ID (User ID / UUID) = 7ca73c1f-9f46-4bf7-9435-75b26724xxxa2
额外ID (Alter Id) = 233
传输协议 (Network) = tcp
伪装类型 (header type) = none
---------- END -------------
V2Ray 客户端使用教程: https://233v2.com/post/4/
提示: 输入 v2ray url 可生成 vmess URL 链接 / 输入 v2ray qr 可生成二维码链接
完成之后如果想要重新配置,直接在命令行输入v2ray即可
# v2ray
........... V2Ray 管理脚本 v3.14 by 233v2.com ..........
## V2Ray 版本: v4.20.0 / V2Ray 状态: 正在运行 ##
帮助说明: https://233v2.com/post/1/
反馈问题: https://github.com/233boy/v2ray/issues
TG 群组: https://t.me/blog233
捐赠脚本作者: https://233v2.com/donate/
捐助 V2Ray: https://www.v2ray.com/chapter_00/02_donate.html
1. 查看 V2Ray 配置
2. 修改 V2Ray 配置
3. 下载 V2Ray 配置 / 生成配置信息链接 / 生成二维码链接
4. 查看 Shadowsocks 配置 / 生成二维码链接
5. 修改 Shadowsocks 配置
6. 查看 MTProto 配置 / 修改 MTProto 配置
7. 查看 Socks5 配置 / 修改 Socks5 配置
8. 启动 / 停止 / 重启 / 查看日志
9. 更新 V2Ray / 更新 V2Ray 管理脚本
10. 卸载 V2Ray
11. 其他
温馨提示...如果你不想执行选项...按 Ctrl + C 即可退出
请选择菜单 [1-11]:
配置文件¶
v2ray
安装完成后通过/etc/v2ray/config.json
文件进行配置,首先查询服务器配置信息:
---------- V2Ray 配置信息 -------------
地址 (Address) = 149.xx.8x.30
端口 (Port) = xxxxx
用户ID (User ID / UUID) = 9d514xxx0-069e-4979-9b6e-c66085a915e1
额外ID (Alter Id) = 233
传输协议 (Network) = tcp
伪装类型 (header type) = none
在客户端安装v2ray
,修改配置文件如下:
$ cat /etc/v2ray/config.json
{
"inbounds": [{
"port": 1080,
"listen": "127.0.0.1",
"protocol": "socks",
"settings": {
"udp": true
}
}],
"outbounds": [{
"protocol": "vmess",
"settings": {
"vnext": [{
"address": "149.28.84.30", // 服务器IP
"port": 39755, // 服务器端口号
"users": [{ "id": "9d514420-069e-4979-9b6e-c66085a915e1" }] // 用户ID
}]
}
},{
"protocol": "freedom",
"tag": "direct",
"settings": {}
}],
"routing": {
"domainStrategy": "IPOnDemand",
"rules": [{
"type": "field",
"ip": ["geoip:private"],
"outboundTag": "direct"
}]
}
}
启动¶
v2ray
以服务形式管理应用
# 启动v2ray
$ service v2ray start
# 停止v2ray
$ service v2ray stop
# 查看v2ray状态
$ service v2ray status
SS¶
v2ray
允许开启Shadowsocks
功能,在命令行输入v2ray
,选择5. 修改 Shadowsocks 配置
即可
$ v2ray
...
...
请选择菜单 [1-11]:5
大佬...你没有配置 Shadowsocks ...不过现在想要配置的话也是可以的 ^_^
是否配置 Shadowsocks [Y/N]
(默认 [N]): Y
请输入 Shadowsocks 端口 [1-65535],不能和 V2ray 端口相同
(默认端口: 47133):
Shadowsocks 端口 = 47133
----------------------------------------------------------------
请输入 Shadowsocks 密码
(默认密码: 233blog.com): zhujian
Shadowsocks 密码 = zhujian
----------------------------------------------------------------
请选择 Shadowsocks 加密协议 [1-7]
1. aes-128-cfb
2. aes-256-cfb
3. chacha20
4. chacha20-ietf
5. aes-128-gcm
6. aes-256-gcm
7. chacha20-ietf-poly1305
(默认加密协议: chacha20-ietf-poly1305):2
Shadowsocks 加密协议 = aes-256-cfb
----------------------------------------------------------------
按 Enter 回车键 继续....或按 Ctrl + C 取消.
---------- Shadowsocks 配置信息 -------------
服务器地址 = 207.xx.xx.22
服务器端口 = 4xx33
密码 = zhujian
加密协议 = aes-256-cfb
SS 链接 = ss://YWVzLTI1Ni1jZxxxemh1amlhbkAyMDcuMTQ4LjQuMjI6NDcxMzM=#233v2.com_ss_207.148.4.22
备注: Shadowsocks Win 4.0.6 客户端可能无法识别该 SS 链接
提示: 输入 v2ray ssqr 可生成 Shadowsocks 二维码链接
[Google Helper]辅助搜索工具¶
最近一段时间梯子限速很严重,听朋友介绍了一个Chrome
插件Google Helper
,能够在没有梯子的情况下进行Google
搜索
概述¶
官网地址:Google Helper
其介绍如下:
专门为科研、外贸、跨境电商、海淘人员、开发人员服务的上网加速工具,chrome内核浏览器专用!可以解决chrome扩展无法自动更新的问题,同时可>以访问谷歌google搜索,gmail邮箱,google+等谷歌产品
体验¶
安装完成后在插件栏会出现以下图标
需要点击登录账户
首次登录会有3
天的VIP
体验,这时候就可以使用Google
搜索了,除了一些指定网站不能打开(比如YOUTUBE/FACEBOOK
等),其他一些国外的学习网站(比如KAGGLE
)都可以打开
之后的使用可以点击左侧加速白名单
,可以选择设置代理
(之前有的话)或者购买VIP会员
(就是官方的代理)
使用Chrome Helper
会关闭其他代理软件,比如SwitchyOmega
[Android]V2ray使用¶
移动客户端¶
下载2dust/v2rayNG的最新版本
配置¶
进入服务器,输入命令v2ray
,选择选项3
3. 下载 V2Ray 配置 / 生成配置信息链接 / 生成二维码链接
再选择选项4
,即可生成二维码链接
请选择菜单 [1-11]:3
1. 直接下载 V2Ray 客户端配置文件(仅支持 Xshell)
2. 生成 V2Ray 客户端配置文件下载链接
3. 生成 V2Ray 配置信息链接
4. 生成 V2Ray 配置二维码链接
使用手机客户端扫描浏览器生成的二维码即可完成配置
[todo]google cloud¶
参考:
用Google Cloud Platform搭建Shadowsocks服务教程
google云服务地址:google cloud
信用卡¶
需要申请visa信用卡或者master信用卡