Личный кабинет — модуль modules/lk: сборка в релизе, unit в комплекте, ключ вне unit-файла
Код bj-lk перенесён в modules/lk (cmd/bj-lk — запуск, флаг -version); релиз собирает bj-lk со своей версией (LK_VERSION), unit bj-lk.service встроен в комплект установщика и берёт адрес bj-server и ключ доступа из /etc/bj/lk.env, а не из unit-файла. Исправлено: признаки «администратор» и «кабинет клиента» читались из общей переменной последнего запроса (curReq) — при одновременной работе признак мог достаться чужому запросу. Теперь из кук своего запроса. Без BJ_URL/BJ_KEY кабинет показывает подсказку настройки вместо падения службы. Тесты: вход, портфель, health, флаг админа по запросу, без настройки. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
+1
-1
@@ -6,5 +6,5 @@ import "embed"
|
||||
|
||||
// Files — linux/sbin/* (в /usr/local/sbin) и systemd/*.service (в /etc/systemd/system).
|
||||
//
|
||||
//go:embed linux/sbin/* systemd/bj-server.service systemd/bj-crypto.service systemd/bj-keymedia.service systemd/bj-npr.service systemd/bj-quikexport.service
|
||||
//go:embed linux/sbin/* systemd/bj-server.service systemd/bj-crypto.service systemd/bj-keymedia.service systemd/bj-npr.service systemd/bj-quikexport.service systemd/bj-lk.service
|
||||
var Files embed.FS
|
||||
|
||||
@@ -0,0 +1,28 @@
|
||||
[Unit]
|
||||
Description=Bridge&Join: Личный кабинет клиента (bj-lk)
|
||||
Documentation=https://git.zetit.ru/zuevav/Bridge-and-Join-s
|
||||
After=network-online.target bj-server.service
|
||||
Wants=network-online.target
|
||||
|
||||
[Service]
|
||||
Type=simple
|
||||
User=bj
|
||||
Group=bj
|
||||
# Значения по умолчанию. Адрес bj-server, ключ доступа модуля (BJ_KEY), порт (LISTEN) и заголовок
|
||||
# (LK_TITLE) задаются в /etc/bj/lk.env (root, 0600), чтобы ключ не лежал в unit-файле.
|
||||
Environment=BJ_URL=http://127.0.0.1:8080
|
||||
Environment=LISTEN=:8099
|
||||
EnvironmentFile=-/etc/bj/lk.env
|
||||
ExecStart=/opt/bj/bj-lk
|
||||
Restart=on-failure
|
||||
RestartSec=5
|
||||
StandardOutput=append:/var/log/bj/bj-lk.log
|
||||
StandardError=append:/var/log/bj/bj-lk.log
|
||||
NoNewPrivileges=true
|
||||
ProtectSystem=strict
|
||||
ProtectHome=true
|
||||
PrivateTmp=true
|
||||
ReadWritePaths=/var/log/bj
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
Reference in New Issue
Block a user