security: use StrictHostKeyChecking=accept-new instead of no - #303
security: use StrictHostKeyChecking=accept-new instead of no#303cluster2600 wants to merge 1 commit into
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (2)
📝 WalkthroughWalkthroughSSH host key checking policy changed from Changes
Estimated code review effort🎯 2 (Simple) | ⏱️ ~8 minutes Poem
🚥 Pre-merge checks | ✅ 2 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Comment |
|
@cluster2600 Hello! Thank you for contributing this PR. Could you rebase against main to resolve the branch conflicts? |
Done mate! |
StrictHostKeyChecking=no disables host key verification entirely, making SSH connections vulnerable to MITM attacks. Replace with accept-new which safely accepts first-time connections but verifies known hosts on subsequent connections. Signed-off-by: Maxime Grenu <maxime@cluster2600.com> Signed-off-by: Maxime Grenu <maxime.grenu@gmail.com>
d65f415 to
a548cd3
Compare
|
Rebased onto main and resolved the conflicts — kept the qname/runInteractive/try-finally improvements from main and applied the accept-new change on top. |
|
Closing — fully superseded by #691 (ericksoa), which implements trust-on-first-use: captures the host key via ssh-keyscan after the initial probe, then enforces StrictHostKeyChecking=yes with pinned known_hosts for all subsequent connections. Strictly stronger than accept-new, which still trusts the first connection without pinning. |
PR NVIDIA#281 removed the shared openshell-cluster Docker network in favor of the default bridge. This restores custom bridge networking but makes each gateway use its own isolated network named openshell-cluster-{name}, matching the existing container/volume naming convention. Changes: - Add network_name() to constants.rs for per-gateway network naming - Add ensure_network() with retry/backoff and force_remove_network() parameterized by network name instead of a global constant - Attach containers to their per-gateway network via network_mode - Disconnect and remove the network during gateway destroy - Wire ensure_network() into the deploy flow before ensure_volume() - Update architecture docs to reflect per-gateway network isolation
Summary
StrictHostKeyChecking=nowithStrictHostKeyChecking=accept-newin all SSH commandsbin/nemoclaw.js(7 instances) andtest/e2e/test-full-e2e.sh(1 instance)Motivation
StrictHostKeyChecking=nodisables host key verification entirely, making SSH connections vulnerable to MITM attacks.accept-newis the safe alternative — it accepts first-time connections (same UX asnofor new hosts) but verifies known hosts on subsequent connections, catching any key changes.Test plan
Summary by CodeRabbit