当前位置: 首页 > 教程 > 原创 > Alpine连接Wireguard服务端,打通异地网络

Alpine连接Wireguard服务端,打通异地网络

发布于:2025-2-12 原创 2条评论 1,152 views
本站提供Linux服务器运维,自动化脚本编写等服务,如有需要请联系博主微信:xiaozme

接上一篇文章《爱快虚拟机安装Alpine系统》我们已经成功在爱快虚拟机中安装了Alpine系统,接下来就是使用Alpine作为客户端连接办公室的Wireguard服务端,然后进行内网打通。

网络情况

  • 办公室网段:192.168.6.x
  • 家里面的网段:192.168.50.x
  • 办公室网络状态:有公网IP

安装Wireguard服务端

在办公室的随便一台虚拟机上安装了Wireguard服务端,参考:《使用Docker安装Wireguard与客户端使用,带你轻松回家

服务端安装完毕后,在办公室的爱快软路由上进行端口映射,Wireguard使用的端口是51820,使用TCP + UPD协议。

c21889c5bf23c524.png

Alpine连接Wireguard服务端

Alpine需要先安装Wireguard客户端,命令如下:

# 更新软件包
apk update
# 安装wireguard客户端
apk add wireguard-tools

然后编辑/etc/wireguard/wg0.conf这个文件,把Wireguard服务端里面的配置内容复制到这个文件进行保存,然后输入命令wg-quick up wg0启动wireguard连接。

期间遇到错误:/usr/bin/wg-quick: line 32: iptables-restore: command not found,这个是因为iptables没安装,输入下面的命令安装下:

# 安装iptables
apk add iptables

安装完毕后重新启动:wg-quick up wg0

为了减少后续的操作,还需要将Wireguard设置开机自动连接,编辑这个文件:/etc/init.d/wireguard,写入下面的内容:

#!/sbin/openrc-run

name="WireGuard VPN"
description="Starts WireGuard VPN connection"

depend() {
    need net
    after firewall
}

start() {
    ebegin "Starting WireGuard"
    /usr/bin/wg-quick up wg0
    eend $?
}

stop() {
    ebegin "Stopping WireGuard"
    /usr/bin/wg-quick down wg0
    eend $?
}

然后执行:

# 添加执行权限
chmod +x /etc/init.d/wireguard
# 设置开机启动
rc-update add wireguard default

还没完,我们还需要在Alpine上启用转发功能,不然包无法转发,后续无法互通。使用下面的命令开启Alpine IP转发:

# 修改内核参数
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf
# 保存并应用参数
sysctl -p

还需要在 Alpine 上设置 NAT,否则可能办公室网络可能不回传,新建/etc/local.d/nat.start写入下面的内容:

#!/bin/sh
iptables -t nat -A POSTROUTING -o wg0 -j MASQUERADE

然后执行:

chmod +x /etc/local.d/nat.start
rc-update add local default
service local start

设置静态路由

在家里面的爱快路由后台添加一个静态路由,让其访问办公室网络的时候192.168.6.x走Alpine客户端(192.168.50.3

d10f8f054f97ff75.png

访问测试

最后家里面的所有网络设备(192.168.50.x)均可通过Wireguard访问到办公室网络(192.168.6.x),至此成功将家里面的网络和办公室网络打通,不过目前是单向的(家里 > 办公室),反向的话(办公室 > 家里)暂时还没需求,等后续需要了再研究反向打通。

adeeaf817ce92072.png

结语

至此,我们成功使用 WireGuard 实现了家庭与办公室网络的互通。但整个过程涉及 WireGuard 服务器搭建、端口映射、Alpine 配置、NAT 规则设定和静态路由等多项网络知识,操作较为复杂。

如果对 Linux 或网络配置不熟悉,可能会遇到较多问题,建议先了解相关概念或请有经验的朋友协助。由于涉及防火墙、端口转发等关键配置,错误操作可能影响网络或带来安全隐患。因此,这项操作较为专业,不适合新手小白直接上手。


发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注


已有2条评论


  1. mark备用,等到时候双向出来了辛苦站长再分享一篇,有计划把老家的网络和我现在工作地的网络进行打通,便于一些服务的部署和访问