一、安装 WireGuard
最近我在使用 Ubuntu 18.04 LTS (Bionic),所以这边也是给出两种安装教程。
1、直接从软件仓库安装
执行下面的命令,从软件仓库安装 WireGuard:
sudo add-apt-repository ppa:wireguard/wireguardsudo apt-get updatesudo apt-get install wireguard
二、生成公钥密钥对
在 Server 和 Client 上进入
这样在每台主机上都会有两个文件:privateKey 和 publicKey。
三、网络规划介绍
WireGuard 是通过创建一个虚拟接口的方式来转发流量的,这里我们暂停一下,明确一下我们的网络规划。
在 Server 和 Client 上进入
/etc/wireguard/
目录,然后执行下面的命令生成自己机器的公私钥对:wg genkey | tee privateKey | wg pubkey > publicKey
三、网络规划介绍
WireGuard 是通过创建一个虚拟接口的方式来转发流量的,这里我们暂停一下,明确一下我们的网络规划。
Host | wg0 Address Wireguard 内部使用 | eth0 Address 服务商给的公网 IP |
Server | 10.0.0.1/24 | 1.1.1.1 |
Client | 10.0.0.2/24 | 2.2.2.2 |
四、文件配置(基于上面的网络规划)
Server 上开放 51820 端口(或其他端口,可在Server配置文件中修改,但切记是 UDP)用于 Client 连接,在每台机器上
在 Server 上的 wg0.conf:
Server 上开放 51820 端口(或其他端口,可在Server配置文件中修改,但切记是 UDP)用于 Client 连接,在每台机器上
/etc/wireguard/
目录下创建一个名为 wg0.conf
的文件,内容分别如下:在 Server 上的 wg0.conf:
[Interface]Address = 10.0.0.1/24SaveConfig = trueListenPort = 51820PrivateKey = < 这里填写 Server 上 privatekey 的内容 >
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE; ip6tables -A FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE; ip6tables -D FORWARD -i wg0 -j ACCEPT; ip6tables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
SaveConfig = true
# Client[Peer]PublicKey = < 这里填写 Client 上 publickey 的内容 >AllowedIPs = 10.0.0.1/24
在 Client 上的 wg0.conf:
[Interface]PrivateKey = < 这里填写 Client 上 privatekey 的内容 >Address = 10.0.0.2/24# Server[Peer]PublicKey = < 这里填写 Server 上 publickey 的内容 >Endpoint = 1.1.1.1:51820AllowedIPs = 10.0.0.1/24
然后在双方主机上各自
wg-quick up wg0
即可。五、配置检验
通过
通过
wg
指令即可查看目前接口使用情况。下面给出一个参考输出:interface: wg0public key: < Client 上的 publicKey >private key: (hidden)listening port: 12345peer: < Server 上的 publickey >preshared key: (hidden)endpoint: 1.1.1.1:51820allowed ips: 10.88.88.0/24latest handshake: 1 minute, 43 seconds agotransfer: 120.32 MiB received, 608.10 MiB sent
此时隧道已经建立,双方主机已经可以通过内网 IP (这里的例子中是 10.0.0.1 和 10.0.0.2 )进行加密地通讯了。特别是当TCP在特定情况下受阻的情况下,可以使用 WireGuard UDP 方式在 Internet 上工作,有效的提升网络效率和稳定性。对于UDP QoS过分的地方,也可以试着加一个 udp2raw,整体上看效果会有不错的提升。
六、UDP受干扰转TCP
源码下载地址:https://github.com/wangyu-/udp2raw-tunnel/releases
源码下载地址:https://github.com/wangyu-/udp2raw-tunnel/releases
工具运行
假设你的UDP已被屏蔽,假设你的服务器IP为44.55.66.77,你有一个服务在监听udp端口7777。
# Run at server side:
./udp2raw_amd64 -s -l0.0.0.0:4096 -r 127.0.0.1:7777 -k "passwd" --raw-mode faketcp -a
# Run at client side
./udp2raw_amd64 -c -l0.0.0.0:3333 -r44.55.66.77:4096 -k "passwd" --raw-mode faketcp -a
此时,已成功通过TCP端口4096在客户端和服务器端之间建立了一条经过加密的通信隧道。在客户端通过UDP端口3333连接,等同于在服务器端连接端口7777
转载自:
https://www.xiaox.link/2019/12/wireguard-vps.html
https://nova.moe/deploy-wireguard-on-ubuntu-bionic/
https://www.freebuf.com/sectool/187069.html
Gambling via cellphone will grow from a $1.four billion business in 2006 to a $16.6 billion business by 1xbet 2011. Indiana's legislation states that anyone who operates a gambling Web web site or who assists in the operation of such a web site commits a felony. In bookmaking; or wagering swimming pools with respect to a sporting occasion or in a numbers, coverage, bolita, or related recreation.
回复删除