logo科技微讯

如何安装并使用 WireGuard

作者:科技微讯
日期:2020-04-08
📜 文章

去年领取了 Google Cloud Platform 三百美金的体验金,还有二百多,今年八月到期,所以我部署到 GCP。

有一个叫 algo 的帮助用户全自动部署 wireguard 的开源项目,准确地说是几乎全自动,因为部署过程中需要你确定一些个性化的设置,需要你把 GCP 或者其他云服务器授权给它自动操作。

这里简单记录一下我在 macOS 的操作步骤,详细可看 algo 的官方文档

部署服务器

  • 把 algo 项目文件夹保存在本地电脑,git clone https://github.com/trailofbits/algo.git
  • 安装到写这篇文章为止时最新的 python 版本,即 python 3.8.2;
  • 进入 algo 文件夹,cd algo
  • 执行 python3 -m pip install --upgrade virtualenv
  • 执行如下命令安装相关依赖,需要确定 algo 文件夹中的 requirements.txt 文件中的 ansible 版本号为 2.9.1,截止到写本文时,该文件默认的版本号是 2.8.8,最新的版本号是 2.9.2,这两个版本我都无法成功部署,但 2.9.1 可以:
python3 -m virtualenv --python="$(command -v python3)" .env &&
  source .env/bin/activate &&
  python3 -m pip install -U pip virtualenv &&
  python3 -m pip install -r requirements.txt
  • 打开 algo 文件夹的 config.cfg 文件,根据里面的提示修改内容;
  • 运行 ./algo 开始部署,部署过程比较久,貌似超过 30 分钟? 中间提示我登录 GCP 获取一个 service accounts 的 credential key,以 json 文件的方式下载到本地,并告诉 algo 这个文件在哪里,除了这个步骤,其他都是全自动执行。如果使用了错误的 python 或 ansible 版本,可能会出错,可参考 algo 的 issue
"[WARNING]: Could not match supplied host pattern,ignoring: vpn-host"
"ERROR! Unexpected Exception,this is probably a bug: cannot pickle '_io.TextIOWrapper' object"
  • 提示部署成功之后,打开 algo 文件夹中的 configs 文件夹,里面有一个以 ip 地址命名的文件夹,再进入 wireguard 文件夹,里面可以找到二维码等文件。

在电脑/手机配置 wireguard

服务器部署完之后,在手机下载官方的 wireguard 客户端,iOS 和 macOS 的 wireguard 客户端需要非大陆的 apple id 才可以下载,因为它没有在大陆 app store 上架。安装客户端之后,扫描二维码即可添加这个服务器,然后就可以开始使用。

donation赞赏
thumbsup0
thumbsdown0
暂无评论