vnts-git
LOW
maintainer taotieren
0 votes
scanned 2026-08-26 09:30:02.614524
Why flagged
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
Triggered rules
Low
Few votes, recently uploaded
zero_votes_recent
Uploaded within the last 14 days with 2 or fewer community votes — little peer review so far.
PKGBUILD
1
# Maintainer: taotieren <admin@taotieren.com>
2
3
pkgname=vnts-git
4
pkgver=2.0.2.r0.g6ef1451
5
pkgrel=1
6
pkgdesc="vnt server"
7
arch=($CARCH)
8
url="https://github.com/vnt-dev/vnts"
9
license=(Apache-2.0)
10
provides=(${pkgname%-git})
11
conflicts=(${pkgname%-git})
12
replaces=()
13
depends=(
14
libgcc
15
)
16
makedepends=(
17
git
18
protobuf
19
rust
20
)
21
optdepends=('vnt: A virtual network tool (or VPN),简便高效的异地组网、内网穿透工具')
22
backup=(
23
'etc/vnts/config.toml'
24
)
25
options=('!lto' '!debug')
26
install=vnts.install
27
source=(
28
"${pkgname}::git+${url}.git"
29
"vnts.install"
30
)
31
sha256sums=('SKIP'
32
'5d3129ee455c0180ebd1ff15bd6765080db0206f01cc2a6559fc06c2704ff318')
33
34
pkgver() {
35
cd "${srcdir}/${pkgname}/"
36
37
git describe --exclude=nightly --long --tags | sed 's/^v//g;s/\([^-]*-g\)/r\1/;s/-/./g'
38
}
39
40
prepare() {
41
git -C "${srcdir}/${pkgbase}" clean -dfx
42
43
cd "${srcdir}/${pkgbase}/"
44
45
# cargo fetch --locked --target "$(rustc -vV | sed -n 's/host: //p')"
46
cargo fetch --locked --target host-tuple
47
cargo fetch --target "$CARCH-unknown-linux-gnu"
48
}
49
50
build() {
51
cd "${srcdir}/${pkgname}/"
52
53
export RUSTUP_TOOLCHAIN=stable
54
export CARGO_TARGET_DIR=target
55
cargo build --release
56
}
57
58
check() {
59
cd "${srcdir}/${pkgname}/"
60
61
export RUSTUP_TOOLCHAIN=stable
62
# cargo test --all-features
63
}
64
65
package() {
66
cd "${srcdir}/${pkgname}/"
67
68
find target/release \
69
-maxdepth 1 \
70
-executable \
71
-type f \
72
-exec install -Dm0755 -t "$pkgdir/usr/bin/" {} +
73
74
install -Dvm644 /dev/stdin "${pkgdir}/usr/lib/systemd/system/vnts.service" <<EOF
75
[Unit]
76
Description=VNT2 virtual network service (vnts2)
77
Documentation=https://github.com/vnt-dev/vnts
78
Wants=network-online.target
79
After=network-online.target
80
81
[Service]
82
Type=simple
83
User=vnts
84
Group=vnts
85
WorkingDirectory=/var/lib/vnts
86
ExecStart=/usr/bin/vnts2 --conf /etc/vnts/config.toml
87
Restart=on-failure
88
RestartSec=5s
89
# 服务端仅转发数据,无需 TUN 虚拟网卡能力
90
NoNewPrivileges=true
91
# 运行数据与日志目录
92
ReadWritePaths=/var/lib/vnts
93
ProtectSystem=strict
94
ProtectHome=true
95
PrivateTmp=true
96
97
[Install]
98
WantedBy=multi-user.target
99
EOF
100
101
# 系统用户 vnts,用于以最小权限运行服务端
102
install -Dvm644 /dev/stdin "${pkgdir}/usr/lib/sysusers.d/vnts.conf" <<EOF
103
#Type Name ID GECOS Home directory Shell
104
u vnts - "VNT virtual network server" /var/lib/vnts /usr/bin/nologin
105
EOF
106
107
# 运行数据与日志目录
108
install -Dvm644 /dev/stdin "${pkgdir}/usr/lib/tmpfiles.d/vnts.conf" <<EOF
109
#Type Path Mode User Group Age Argument
110
d /var/lib/vnts 0750 vnts vnts - -
111
d /var/lib/vnts/logs 0750 vnts vnts - -
112
EOF
113
114
# vnts2 配置文件模板(自动生成自 vnts2 --conf-example,备份,升级时保留用户修改)
115
{
116
cat <<'EOF'
117
# ============================================
118
# VNTS2 服务端配置文件 (vnts2)
119
# 修改后执行: sudo systemctl restart vnts
120
#
121
# ⚠️ 安全提示:
122
# 默认启用网页管理 web_bind="0.0.0.0:29871",账号 admin/admin
123
# 若监听公网请务必修改 username / password,避免管理端被公开访问
124
# ============================================
125
EOF
126
./target/release/vnts2 --conf-example
127
} > config.toml
128
install -Dvm644 config.toml -t "${pkgdir}/etc/vnts/"
129
130
install -Dvm644 /dev/stdin "${pkgdir}/etc/sysctl.d/80-vnts.conf" <<EOF
131
net.ipv4.ip_forward = 1
132
net.ipv6.conf.default.forwarding = 1
133
net.ipv6.conf.all.forwarding = 1
134
EOF
135
}
136
Scan history
| Scanned at (UTC) | Severity | Rules |
|---|---|---|
| 2026-08-26 09:30:02 | Low | 1 |