-
Notifications
You must be signed in to change notification settings - Fork 760
CMP-3978: Incorporate SSH version into obsolete parameter rules #14189
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
rhmdnd
commented
Nov 26, 2025
- Add parameter for obsolete sshd configuration options
- Only check ssh protocol if openssh < 7.0
- Only check UsePrivilegeSeparation if openssh < 7.5
Certain SSH options are obsolete in that even if you set the value, OpenSSH is going to ignore it. This is true for UsePrivilegeSeparation, Protocol, and RhostsRSAAuthentication options. This commit updates the SSH oval templates to add another template variable called `obsolete_since_version` which gives us the flexibility of saying "only run this rule if the system has a version of OpenSSH less than version X". Otherwise, the check will short-circuit since OpenSSH is defaulting to a more secure configuration. This makes the rules more accurate, even if a user is setting something that doesn't make sense at run time (e.g., Protocol 1).
OpenSSH made the `Protocol` option obsolete in version 7.0. Even if you
try to specify it, it's not going to use the version you set for
security reasons:
Potentially-incompatible Changes
--------------------------------
* Support for the legacy SSH version 1 protocol is disabled by
default at compile time.
See the release notes for version 7.0 for more details.
https://www.openssh.org/releasenotes.html
OpenSSH hardcoded the `UsePrivilegeSeparation` option to `sandbox` in
7.5:
Potentially-incompatible changes
================================
This release includes a number of changes that may affect existing
configurations:
* This release deprecates the sshd_config UsePrivilegeSeparation
option, thereby making privilege separation mandatory. Privilege
separation has been on by default for almost 15 years and
sandboxing has been on by default for almost the last five.
https://www.openssh.org/releasenotes.html
Let's only check it if the ssh version is applicable.
| <criteria comment="sshd installed and option is obsolete" operator="AND"> | ||
| <extend_definition comment="sshd is required or requirement is unset" | ||
| definition_ref="sshd_required_or_unset" /> | ||
| {{% if product == "sle12" %}} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We may need other package manager support here?
|
@rhmdnd: The following test failed, say
Full PR test history. Your PR dashboard. Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here. |
|
Why not just |
|
See: |