RexOps / RexOps/Rex

Do not set by default SSH port when using Net::OpenSSH

Open
#1,495 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

feature request
Dominant language
Perl
Stars
737
Forks
214
PR merge metrics
No merged PRs in 30d

Description

(R)?ex can't parse complex OpenSSH configuration file, i.e. with host templates, includes, etc.
Net::OpenSSH use OpenSSH library and handle complex .ssh/config right like OpenSSH itself.

So if (R)?ex can find port for SSH connection inside (simple plain) .ssh/config - let's use this port value,
and if it can't - do not force port to 22/tcp so Net::OpenSSH can try to find it by itself (or failover to the
same 22/tcp inside Net::OpenSSH).

This allows complex OpenSSH configs, and resolves related #1209 and #1229 and #1458 issues.

Contributor guide

Open the contributing guide

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.

Research direction

Start by tracing Rex's SSH connection setup and how it reads .ssh/config, then inspect the port passed to Net::OpenSSH when a simple port is found versus when parsing fails. Done means Rex does not force port 22 when it cannot determine a port, allowing Net::OpenSSH to handle complex OpenSSH configurations; no files or tests are named in the issue.

Written by the indexing model from the issue text.

Assessment

Tech stack
perl
Domain
devops, infrastructure
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.