Switches authenticate SSH via RADIUS (aaa authentication login ssh
radius local), which is separate from the local admin account used
for the HTTPS GUI and baked into generated configs. Web Access
Control (HTTPS enable/disable and Disable Telnet) was reusing that
local admin credential (or per-switch NocoDB creds) for its SSH
connection, which is the wrong credential pair.
Adds a dedicated SSH Credentials (RADIUS) section in Settings and a
getSshCredentials() helper that Web Access Control uses exclusively,
plus an upfront error toast if those fields are left blank.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CLfUJoQTaUePx1m1d2v2j9
Adds a standalone DISABLE TELNET button (no enable counterpart, per
requirement) alongside the existing HTTPS enable/disable toggle. Reuses
the same target/concurrency controls and SSH push flow, backed by a new
"disable_telnet" action mapped to "no ip telnet" on the switch.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CLfUJoQTaUePx1m1d2v2j9
- Add "no ip telnet" to generated switch configs for security
- Bind-mount templates/ into the container (read-only) so template
edits take effect without a rebuild, matching config.py/configs/
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01CLfUJoQTaUePx1m1d2v2j9
Replaces the separate checkmk and jdisc SNMPv3 users with one
switchmon user, updating both the settings UI and config template
generation. The operatorauth SNMP group is unchanged.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
The previous default (NZXMkUA62QZHfG3FTYNCz4Y) was already base64-encoded,
causing the config generator to double-encode it via b64(). Updated to the
correct plaintext key (4VXMKUA62QZHFG3FTYNCZ4Y) so b64() produces the right
key-encrypted value in the switch config output.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>