1. 首页
  2. 学术上网
  3. wireguard

CentOS7一键脚本安装WireGuard

视频版教程:点击查看youtube视频(需FQ)

WireGuard(可略过

WireGuard ®是一种非常简单而现代,快捷的VPN,利用国家的最先进的加密技术。它旨在比IPSec更快,更简单,更精简,更有用,同时避免大规模的头痛。它打算比OpenVPN更高效。WireGuard设计为通用VPN,可在嵌入式接口和超级计算机上运行,​​适用于多种不同情况。最初是为Linux内核发布的,现在它是跨平台的,可广泛部署。它目前正在大力发展,但它已经被认为是业内最安全,最易于使用,最简单的VPN解决方案。

下一代高速wireguard,以上来自英文自动翻译,避免大规模的网络传输的headers,大体意思是更底层一些,效率更高一些,速度更快一些,测试过程中分别使用搬瓦工GIA和GCE台湾,两者均能秒开4K,前者40M左右,后者60M左右,可以说速度起飞了,放下youtube截图。视频教程已上传youtube,点击观看(需FQ)

CentOS7一键脚本安装WireGuard CentOS7一键脚本安装WireGuard

关于一键脚本(必看

1、仅适用于centos7系统,ubuntu一键脚本可使用另一篇教程:ubuntu一键安装wireguard

2、VPS架构必须是KVM

3、测试了搬瓦工、谷歌云、Vultr的centos7,可以完美搞定

4、cento7大部分内核都是3.10,不能正确安装,所以需要升级

5、有些厂商的vps内核貌似升级不了,例如vpsserver,这个还是要自行解决

6、wireguard是一个peer对应一个客户端,如果需要多个客户端使用可查看多用户配置视频


几款VPS推荐(可看

需要稳定GIA线路可考虑hostdare,性价比不错,目前新春活动,年付7折。

方案内存硬盘流量优惠码(年付7折)价格(优惠后)购买链接
KVM1(推荐)756M35G1000G/月 80M带宽SPRING32.19$/年点击购买
KVM21.5G75G1500G/月 100M带宽SPRING48.99$/年点击购买
KVM存储1756M150G1000G/月 80带宽SPRING41.99$/年点击购买
KVM存储21.5G300G1500G/月 100M带宽SPRING69.99 $/年点击购买

需要香港VPS推荐阿里云24元/月的轻量服务器,联通移动直连,电信回程直连。

点击查看阿里云香港轻量服务器介绍。

也可以看看搬瓦工,可以换机房,ip被墙可每10周免费换一次,稳定性不错。

点击查看搬瓦工VPS推荐。

教程开始(必看

1、VPS应安装为centos7系统,使用xshell或其他ssh工具连接VPS后,执行下面命令:

yum install -y wget && wget https://raw.githubusercontent.com/atrandys/wireguard/master/wireguard_install.sh && chmod +x wireguard_install.sh && ./wireguard_install.sh

2、执行脚本会弹出选择项,首先我们选择安装内核,安装过程中需要几分钟,最后按照提示重启。

CentOS7一键脚本安装WireGuard

3、重启完毕,使用xshell连接VPS,执行下面命令:

./wireguard_install.sh

4、执行命令会弹出和第2步相同的选择项,这次我们选择安装wireguard,安装过程中需要等几分钟,安装完成服务即自行启动了。

CentOS7一键脚本安装WireGuard

5、使用xftp等ftp工具连接vps,进入/etc/wireguard/目录,然后将client.conf下载到本地电脑。(这个配置文件里面包含的是客户端的各种参数,mac、linux客户端也是使用这些参数。)

CentOS7一键脚本安装WireGuard

6、下载安装TunSafe,这是一个windows端的第三方客户端,因为官方windows版本的还没开发完成,先用这个软件代替,TunSafe已经开源了,可以放心使用。

官网下载:TunSafe

7、打开TunSafe,点击file,选择import file,选择第5步下载的client.conf文件,导入到软件中。

CentOS7一键脚本安装WireGuard

8、导入后会自动连接,连接成功后,所有流量都会被代理,也就是全局代理。

9、使用Linux、Mac系统的同学,可以去官方查看一下如何安装对应的客户端,比较简单,这里就不讲了。

安卓版客户端教程

1、去Google Play下载wireguard,目前这个软件在Google Play中是未发布版,也可直接下载下面的f-droid的安装包。

安卓版wireguard:点击下载

2、将软件安装好,并将本教程服务端获取的client.conf文件传输到手机中。打开软件,点击加号,在弹出的页面选择create from file or archive,然后选择保存在手机的conf文件。

注意:这里可能会提示错误,原因是没有文件操作权限,去权限管理里给软件勾上存储权限即可。

CentOS7一键脚本安装WireGuard

选择文件后如下图所示

CentOS7一键脚本安装WireGuard

开启代理即可。

iOS版客户端

现在是测试版,官方和tunsafe都提供了测试版,需要先进链接安装testflight,然后再在手机上打开这个测试版连接,就可以跳转到testflight,然后安装就可以了

官方ios版:wireguard测试版

Tunsafe ios版:在非国区app store搜索tunsafe安装即可。

导入测试文件很简单,可以直接打开软件,扫描服务上生成的二维码,也可以把文件复制到手机,然后用软件打开。

多用户

wireguard一个配置文件同一时间只能连接一个设备,所以你如果需要多用户,那么需要多个配置文件。

多用户配置可以参考这个视频,讲解的应该够清楚。

非常重要

这里是一些大家wireguard后遇到各种问题的排查过程,遇到问题先来这里看,有遇到问题自行解决过了而且下面没提及到的,请各位童鞋留言,我会补充上。

服务端

1、首先使用 wg 命令,查看wireguard服务是否正常启动,peer是否正常。

2、检查配置文件wg0.conf,ip不可使用ipv6,因为ip是自动联网查询的,有可能会得到ipv6地址,需要改成ipv4的地址。

3、使用 ip link 命令查看物理网卡是否为eth0,如果不是将真实名称(除了lo、wg0的那个网卡)替换wg0.conf中的eth0。

4、你的云服务商的防火墙是否放行。像谷歌云/阿里云等在web控制台都可以看到防火墙设置,需自行配置放行规则。

5、你的云服务器的内网IP段不要和10.0.0.1/24冲突,我遇到过谷歌云内网网段(自己配置的)和wg使用的网段冲突的情况,这种问题很少见,除非是你自己配置的内网IP。

客户端(windows)

1、用管理员权限打开tunsafe,不要同时开启其他代理类软件。

2、如果是电脑直接拨号上网,可能会出现无法连接的情况,换路由器拨号。

3、有安装过SSTAP的情况(它安装的虚拟网卡会设置静态IP),wireguard可能会共用sstap安装的网卡,注意把这个虚拟网卡的ip和dns设置为自动获取。

4、安装过其他VPN的卸载一下,重装tunsafe试试。

5、本地ip地址可能是10.0.0.1/24网段的,会有冲突,给wireguard设置其他网段,默认10.0.0.1改成其他,例如10.8.0.1。

重装!!!

如果以上问题你确实排查过了,那么很可能是tunsafe安装有问题,需要你卸载tunsafe,卸载TAP虚拟网卡,重新安装tunsafe,安装过程中所有权限都有要允许,有什么安全软件提示也要允许,重新试一下。

原创文章,作者:atrandys,如若转载,请注明出处:https://www.atrandys.com/2018/886.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注

评论列表(288条)

  • Spectre 2019年11月26日 下午5:08

    嗨,我按照提示在vultr centos7上执行的操作,安装完成启动服务的时候会失败,systemctl中的报错信息显示“Line unrecognized: `eth1-jMASQUERADE’”, 请问有什么解决方案吗?

    • atrandys 回复 Spectre 2019年11月26日 下午5:54

      你的VPS是多网卡哦,修改/etc/wireguard/wg0.conf 删除全部的eth1即可

  • Hayek 2019年10月22日 下午3:21

    Oracle Cloud貌似不行,有二维码输出,但是上不了网

  • LHJ 2019年10月6日 上午11:38

    您好,我使用的您的一键部署脚本「添加用户」功能,再添加好用户之后,并且生成新的二维码,用我的iPhone手机扫描二维码添加配置是可以成功翻墙的,另外一台iPhone手机扫了同样的二维码添加之后,是完全无法上网?请问还需要其他额外的操作设置吗

    • LHJ 回复 LHJ 2019年10月6日 上午11:41

      补充一下是centos7系统,vps是vultr的

  • pluto 2019年9月24日 上午12:32

    安装好后导入client.conf后 电脑彻底无法上网了 怎么回事??

    • atrandys 回复 pluto 2019年9月24日 上午1:19

      wireguard是全局的,没能代理成功

  • haoren 2019年9月19日 下午5:57

    wg命令服务器显示连接了,也看到本地IP。
    transfer: 1.45 KiB received, 920 B sent
    但是客户机一直显示
    [17:38:26] Retrying handshake, attempt 8…
    [17:38:32] Retrying handshake, attempt 9…
    [17:38:37] Retrying handshake, attempt 10…

  • githubchy 2019年9月5日 下午11:01

    请教一下,校园网环境,如果使用wireguard+vps将所有本地电脑流量都通过wireguard走掉,达到“绕过ipv4计费”,可以请教一下怎么配置吗?网上很多帖子都是关乎ssr、ss与vps,只能做到socks5也即浏览器绕过v4,或者借助proxifier这种软件强制走代理。我想试下wireguard做成一个vpn代理掉本地所有任何应用的流量。但是一直找不到合适的教程。想请教下 大佬。

    • atrandys 回复 githubchy 2019年9月6日 上午10:20

      VPS修改端口为53试试,不知道现在校园网是不是放行访问53端口流量。

  • shilezhi 2019年8月3日 下午8:22

    大神,我的vps是centos7的,我按照上面的操作,为什么导出来的配置文件用不了。 老是提示[05:21:28] Sending handshake…
    [05:21:34] Retrying handshake, attempt 2…
    [05:21:39] Retrying handshake, attempt 3…
    能帮我解答一下吗,拜托了

    • 相声演员大呲花 回复 shilezhi 2019年8月3日 下午11:49

      端口冲突!是不是用过sstap