averainy's Blog

averainy

14 May 2022

Use Wireguard as Relay Node to Access Lan Network in Openwrt

背景

平时为了能够在外面随时连接家庭内部网络,通常有以下几种方式:
1.有公网ip的情况下,做端口映射
2. 没有公网ip的情况下,可以使用frp类似的技术做反向代理.
3. 使用vpn技术连接.

前面两种方式都需要将端口映射到公网,这就带来了被入侵的风险.这就不得不提到新冠病毒肆虐的第一年,我们采用了frp方式用远程桌面连接公司内网导致中了勒索木马的倒霉事儿. 最后权衡之后还是采用了vpn.采用vpn有以下几种vpn技术可以选择:

  1. ipsec
  2. openvpn
  3. wireguard

看到过ipsec的开源实现,但是配置起来挺麻烦的.openvpn十来年前倒是搞过,如果wireguard没有出来之前,应该是我的不二选择.可惜呀,只能说openvpn生>不逢时,还是用wireguard更方便一些.

这次安装的openwrt版本是esir大佬编译的版本,你如果需要的话可以点击这里下载. 具体安装方法就不说了,网上一大堆. 重点说下如何配置防火墙规则.

防火墙规则设置

  1. 首先在防火墙里的nat rules添加一条nat rule.其中192.168.0.2是openwrt的局域网ip

    防火前添加nat rule

  2. 之后在Port forwards里添加一条端口映射,其中192.168.0.4是要转发的ip,10022是端口.这样设置好之后,访问openwrt的10022端口就会转发到192.168.0.4的10022端口上

    端口映射

基本上设置就是这样.