Первичная настройка, часть 4: HTTPS веб-интерфейса (:8443, самоподписанный сертификат на имя и адреса сервера, свой сертификат, перенаправление браузера с HTTP); сервер времени из настроек (ntpd/chrony/timesyncd — bj-system-admin); постоянный адрес — bj-network (netplan try с откатом), вопрос при первой загрузке с образа; раздел «Сервер: HTTPS, время, сеть»; HTTPS в итоговой проверке; адреса https:// на экране установщика и консоли
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_014FsEKyJrYF69Cj9ZXzFLRi
This commit is contained in:
@@ -10,10 +10,11 @@ SETUP=/var/lib/bj/.bj/setup.json
|
||||
USERS=/var/lib/bj/.bj/users.json
|
||||
FIRSTRUN=/var/lib/bj/.bj/first-run.json
|
||||
PORT=8080
|
||||
TLSPORT=8443 # веб-вход по HTTPS (сертификат сервера — браузер попросит подтвердить исключение)
|
||||
HOST=$(hostname 2>/dev/null || echo bj)
|
||||
ADDRS=$(ip -4 -o addr show scope global 2>/dev/null | awk '{split($4,a,"/"); print a[1]}' | tr '\n' ' ')
|
||||
[ -z "$ADDRS" ] && ADDRS="<адрес не получен: проверьте сеть>"
|
||||
url() { for a in $ADDRS; do case "$a" in \<*) printf ' http://%s:%s%s\n' "<IP сервера>" "$PORT" "$1";; *) printf ' http://%s:%s%s\n' "$a" "$PORT" "$1";; esac; done; }
|
||||
url() { for a in $ADDRS; do case "$a" in \<*) printf ' https://%s:%s%s\n' "<IP сервера>" "$TLSPORT" "$1";; *) printf ' https://%s:%s%s\n' "$a" "$TLSPORT" "$1";; esac; done; }
|
||||
lic=""
|
||||
if [ -r "$SETUP" ]; then
|
||||
lic=$(python3 - "$SETUP" 2>/dev/null <<'PY'
|
||||
|
||||
Reference in New Issue
Block a user