群晖DS218+安装 WireGuard 保姆级教程

最近群晖出了点故障,我给它手动重新安装了,这里简单记录一下如何配置Wireguard

配置套件

默认官方提供的套件中没有Wireguard,只能添加一些第三方套件源(类似软件源)

在套件中心添加"套件来源",这里我选的是矿神的套件源

  1. 单击“套件中心”
  2. 点“设置”
  3. 点“套件来源”
  4. 点“新增”
  5. 输入名称“矿神”及位置https://spk7.imnks.com/
  6. 顺便把"SynoCommunity"也配置上https://packages.synocommunity.com/

安装套件

从社群里查找Wireguard套件或者直接搜索Wireguard即可。
由于我已经安装过了,这里就跳过,按默认的走就行。
首次安装会自动运行并停用该套件,这个不用管后面需要通过SSH远程连接配置相关。

群晖开启ssh功能

需要打开群辉SSH端口,远程连接上去。

  1. 打开控制面板
  2. 找到终端机和SNMP
  3. 启用SSH功能, 默认22,可以根据个人喜好修改
  4. 单击应用,保存生效

SSH连接

使用任意终端工具连接, 使用当前管理员账号登录群晖的ip,使用你配置的端口,这里我给出我的 示例,如下所示:

ssh [email protected] -p 9966

SSH操作

切到root用户

获取root权限, 密码还是你当前用户的密码

sudo -i

修改Wireguard套件权限

sed -i "s#package#root#g' /var/packages/WireGuard/conf/privilege

修改完可以确定一下, 如果有问题还可以用vi去编辑

root@nas:~# cat /var/packages/WireGuard/conf/privilege
{
    "defaults": {
        "run-as": "root"
    }
}

配置wireguard

由于我是配置wireguard节点,相关配置已经由控制端生成好了,拿来启用就可以了,大家根据自己实际情况操作哈,这里仅以我自己为例

mkdir /etc/wireguard/
cd /etc/wireguard/
# 自行生成wg0.conf
wget https://c.ysicing.local/wireguard/nas.conf
mv nas.conf wg0.conf

启用wireguard

# 启动
wg-quick up wg0
# 关闭
wg-quick down wg0
# 查看
wg show

设置开机启动

systemctl enable pkg-wg-quick@wg0
systemctl start pkg-wg-quick@wg0

最后

分享手搓wireguard配置

#!/bin/bash

# set -x

key=$1
ip=$2

[ -z "$key" ] && exit 1
[ -z "$ip" ] && exit 1

wg genkey | tee $key-privatekey | wg pubkey > $key-publickey

cat > $key.conf <<EOF
[Interface]
PrivateKey = $(cat $key-privatekey)
Address = 192.168.94.$ip/24

[Peer]
PublicKey = $(cat gw-publickey)
AllowedIPs = 192.168.94.0/24
Endpoint = wg.rdns.example.com:33360
PersistentKeepalive = 10
EOF

cat > $key.conf.local <<EOF
# $key
[Peer]
PublicKey = $(cat $key-publickey)
AllowedIPs = 192.168.94.$ip/32
EOF

cat $key.conf.local

rm $key.conf.local

其他

  • 如果想避免安全风险,用完可以把ssh端口关了
  • 使用wireguard ip进行访问

Sponsor

Like this article? $1 reward

Comments

小饿 ·v1 河北石家庄 Reply

wireguard可以在小火箭上使用么?

ysicing 👨‍💻 ·v1 Reply

@小饿 我看是可以配置的,但是我通常用独立wireguard软件来搞。