拉取镜像
docker pull place1/wg-access-server
启动容器
命令会映射wg-access-server-data文件夹,请提前cd到准备好的目录中
私钥生成看后面步骤,注意配置管理员密码
docker run -it -d \
--name wireguard \
--cap-add NET_ADMIN \
--device /dev/net/tun:/dev/net/tun \
-v wg-access-server-data:/data \
-e "WG_ADMIN_PASSWORD=<admin密码>" \
-e "WG_WIREGUARD_PRIVATE_KEY=<私钥>" \
-p 8000:8000/tcp \
-p 51820:51820/udp \
place1/wg-access-server
8000是管理界面的端口,51820是服务端口
生成私钥
打开电脑上的WireGuard,点击新建隧道==》新建空隧道,就会自动生成一个私钥
如果只是想尝鲜,用固定的私钥也可以,这里放一个私钥方便复制
8DuWy1X3gkdXnSJEaHqVWLZG7T+9Lpwq4dbyPp1CRkE=
访问http://服务器ip:8000,即可看到管理员界面(注意安全组设置)。
服务器ip就是跑docker的那台服务器的ip。
点击Basic登录,账号是admin,密码是自己设置的
点击添加设备,起一个设备名字(不要中文),然后可以看到下面界面
手机端下载App后,直接扫码就可以创建隧道。
电脑端安装对应应用程序后,下载配置文件到电脑上,然后通过“新建隧道”选择下载的配置文件即可创建隧道
创建完手机和电脑的隧道后,都连接上这个隧道,即可。
测试
现在手机和电脑都连接上了VPN,并且手机使用的数据流量,电脑使用的WiFi,也就是说手机和电脑本来不在同一个局域网里。
在电脑上启动一个http服务,如下图已经启动了一个5000端口的服务。
手机上输入电脑的ip地址(注意是电脑上的WireGuard上显示的地址,如下图)和端口,即可访问电脑上的服务,说明此时电脑和手机已经处于一个局域网中,准确说是处于一个虚拟专用网络中