feat(telnet): same PAM cred-capture, /etc/pam.d/login
Promotes auth-helper.c to decnet/templates/_shared/auth-helper/ and adds _sync_auth_helper_sources() — mirrors the existing sessrec sync pattern that keeps shared sources in step with per-template build contexts. Telnet's image grows the same multi-stage musl build, COPY of the static helper into /usr/sbin/auth-helper, and prepended pam_exec line in /etc/pam.d/login. Pulls in the `login` package (real Debian PAM-aware /bin/login, replacing busybox's PAM-less applet) and libpam-modules transitively for pam_exec.so. Verified inside the rebuilt telnet image: - /bin/login is the real 53KB Debian binary (PAM-aware) - /etc/pam.d/login top line is the auth-helper hook - pam_exec.so present at /usr/lib/x86_64-linux-gnu/security/pam_exec.so - helper smoke-run emits correct RFC 5424 line for `telnetpw` → password_b64="dGVsbmV0cHc=" SSH Dockerfile updated to read auth-helper.c from auth-helper/ subdirectory so both templates use the synced layout. The canonical source lives in _shared/; per-template copies are tracked in git AND synced at deploy time so a drift on either side rebases on the next deploy. Closes the telnet half of DEBT-038's #5 follow-up.
This commit is contained in:
@@ -7,7 +7,7 @@ ARG BASE_IMAGE=debian:bookworm-slim
|
||||
FROM debian:bookworm-slim AS auth-helper-build
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends musl-tools \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
COPY auth-helper.c /tmp/auth-helper.c
|
||||
COPY auth-helper/auth-helper.c /tmp/auth-helper.c
|
||||
RUN musl-gcc -static -O2 -s -Wall -Wextra \
|
||||
-o /auth-helper /tmp/auth-helper.c
|
||||
|
||||
|
||||
Reference in New Issue
Block a user