Stargate Controller Hardening and SSH Key Distribution
The primary Ansible controller on stargate.research.bitsmasher.net underwent comprehensive authentication and configuration hardening on September 3rd.
Passwordless SSH from chonk
Established verified public-key authentication from chonk to stargate using the dedicated openclaw_stargate_id_ed25519 keypair. This is a machine-to-machine identity — no user key, no password prompt, no interactive authorization needed.
GSSAPI Elimination
Critical fix: corrected ~/.ssh/config across the stargate controller to explicitly disable GSSAPI authentication for all internal lab subnets. The previous configuration was triggering connection handshake timeouts and TCP reset spikes:
kex_exchange_identification: read: Connection reset by peer
This error was caused by OpenSSH attempting Kerberos ticket negotiation on hosts that had no KDC configured, causing the SSH daemon to drop the connection before key exchange. The fix is straightforward:
Host *.research.bitsmasher.net
GSSAPIAuthentication no
Automated Key Distribution
Executed the distribute_ssh_key.yml playbook from stargate, propagating the new public key across core nodes:
skynet— verified accessibility confirmedwonderland— verified accessibility confirmed- All other managed hosts updated and connectivity tested
Edge Node Diagnostics: node901
Troubleshooting the Jetson edge worker revealed a Python 3.6 ABI compatibility constraint. Modern Ansible modules require Python 3.8+ for certain standard library imports. Workaround: routing through an updated interpreter path rather than relying on the system default.
- Root cause: JetPack release ships Python 3.6 as the default; some required modules (notably
collections.abcvscollections) were imported from incompatible locations in that version. - Next step: Package a Python 3.10+ environment for Jetson via pyenv or NVIDA's CUDA toolkit chain, and point the Ansible module interpreter at that binary.