ssh-config sync: emit a ProxyJump for single-VM (no sentinel) installs

Closed
#2,249 2 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 1 day

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
70/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
go
Domain
cli

Research direction

Start in internal/sshconfig/generate.go and reproduce ssh-config sync --http --server against the empty-ssh_host case; read section 4.2 of docs/DEPLOYMENT-GUIDE.md for the existing host-jump setup. Done means the generated Host block connects from a laptop and a unit test pins the empty-ssh_host output.

Written by the indexing model from the issue text.

Description

documentation product

Problem

On a fresh single-VM install (no sentinel, no --ssh-host), containarium ssh-config sync --http --server http://<vm>:8080 run from a laptop writes the box's private Incus bridge IP as HostName (internal/sshconfig/generate.go), so ssh <box> from the laptop cannot connect. The host jump account that create makes only works with a hand-written ProxyJump (docs/DEPLOYMENT-GUIDE.md section 4.2); ssh-config sync never writes one.

Proposed

In direct mode (daemon reports an empty ssh_host), have ssh-config sync emit a ProxyJump through the host so ssh <box> works from a laptop, or fail with a clear message pointing at --ssh-host / a sentinel.

Acceptance criteria:

  • Against a single-VM install with no sentinel, ssh-config sync --http --server ... on a laptop produces an entry that connects.
  • Unit test pins the generated Host block for the empty-ssh_host case.

Found while rewriting the Quick start (#2244). The README will label the remote variant as needing a sentinel or --ssh-host until this lands.

Dominant language
Go
Stars
296
Forks
38
Avg merge
7h 20m
Merged PRs (30d)
683

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from FootprintAI/Containarium

All issues in FootprintAI/Containarium

Similar issues

More Go issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.