Skip to content

[WIP] OSDOCS-13371-2: Ingress security parameters MicroShift #91560

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

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

tedaveryredhat
Copy link

@tedaveryredhat tedaveryredhat commented Apr 2, 2025

@openshift-ci-robot
Copy link

openshift-ci-robot commented Apr 2, 2025

@tedaveryredhat: This pull request references OSDOCS-13371 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.19.0" version, but no target version was set.

In response to this:

Version(s):
4.19

Issue:
https://issues.redhat.com/browse/OSDOCS-13371

Link to docs preview:

QE review:

  • QE has approved this change.

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 openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Apr 2, 2025
@openshift-ci openshift-ci bot added do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Apr 2, 2025
@ocpdocs-previewbot
Copy link

ocpdocs-previewbot commented Apr 2, 2025

🤖 Mon May 19 18:32:00 - Prow CI generated the docs preview:

https://91560--ocpdocs-pr.netlify.app/microshift/latest/microshift_configuring/microshift-ingress-controller.html


If not set, a wildcard certificate is automatically generated and used. The certificate is valid for the Ingress Controller `domain` and `subdomains`, and
the generated certificate's CA is automatically integrated with the
cluster's trust store.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] RedHat.TermsErrors: Use 'truststore' rather than 'trust store'. For more information, see RedHat.TermsErrors.

@openshift-ci-robot
Copy link

openshift-ci-robot commented Apr 2, 2025

@tedaveryredhat: This pull request references OSDOCS-13371 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.19.0" version, but no target version was set.

In response to this:

Version(s):
4.19

Issue:
https://issues.redhat.com/browse/OSDOCS-13371

Link to docs preview:
https://91560--ocpdocs-pr.netlify.app/microshift/latest/microshift_configuring/microshift-ingress-controller.html

QE review:

  • QE has approved this change.

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 openshift-eng/jira-lifecycle-plugin repository.

@openshift-ci openshift-ci bot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Apr 10, 2025

`clientTLS` has the required subfields, `spec.clientTLS.clientCertificatePolicy` and `spec.clientTLS.ClientCA`.

The `ClientCertificatePolicy` subfield accepts one of the two values: `Required` or `Optional`. Note that the ingress controller only checks client certificates for edge-terminated and reencrypt TLS routes; it cannot check certificates for cleartext HTTP or passthrough TLS routes. The `ClientCA` subfield specifies a config map that is in the openshift-ingress namespace. The config map should contain a CA certificate bundle. A config map is required for this field.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] RedHat.TermsErrors: Use 'plain text' rather than 'cleartext'. For more information, see RedHat.TermsErrors.

@@ -57,11 +71,31 @@ ingress:
# ...
----
+
.Ingress controller configuration fields definitions table
.Ingress controller operations and performance configuration fields definitions

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@tedaveryredhat , if we are going to keep it in the same page , can we separate this into new table called "Ingress controller security configuration fields definitions" , this is not related to operations and performance

[cols="3a,8a",options="header"]
|===
|Parameter |Description

|`certificateSecret`
|The `certificateSecret` value is a reference to a secret that contains the default certificate that is served by the Ingress Controller. When Routes do not specify their own certificate, `certificateSecret` is used.atehe Ingress Controller.
Copy link

@eslutsky eslutsky Apr 15, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
|The `certificateSecret` value is a reference to a secret that contains the default certificate that is served by the Ingress Controller. When Routes do not specify their own certificate, `certificateSecret` is used.atehe Ingress Controller.
|The `certificateSecret` value is a reference to a secret that contains the default certificate that is served by the Ingress Controller. When Routes do not specify their own certificate, `certificateSecret` is used.**atehe** Ingress Controller.

typo?

|`certificateSecret`
|The `certificateSecret` value is a reference to a secret that contains the default certificate that is served by the Ingress Controller. When Routes do not specify their own certificate, `certificateSecret` is used.atehe Ingress Controller.

For information about creating a secret, see https://docs.redhat.com/en/documentation/openshift_container_platform/4.18/html/security_and_compliance/configuring-certificates#replacing-default-ingress_replacing-default-ingress [Replacing the default ingress certificate].

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this doc is for openshift, the main difference is the namespace name,
we dont use openshift-config namespace, we use openshift-ingress , so the secret has to be created there.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

resolved


If not set, the default value is based on the `apiservers.config.openshift.io/cluster` resource.

When using the `Old`, `Intermediate`, and `Modern` profile types, the effective profile configuration is subject to change between releases. For example, given a specification to use the `Intermediate` profile deployed on release `X.Y.Z`, an upgrade to release `X.Y.Z+1` may cause a new profile configuration to be applied to the Ingress Controller, resulting in a rollout. `Intermediate` is the default setting.
Copy link

@eslutsky eslutsky Apr 16, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we dont have a concept of rollouts (its for operators only ) so this upgrade comment is not relevant.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is resolved

@ShaunaDiaz ShaunaDiaz changed the title (WIP): OSDOCS-13371-2: Ingress Security Parms (WIP): OSDOCS-13371-2: Ingress security parameters MicroShift Apr 22, 2025
@ShaunaDiaz ShaunaDiaz changed the title (WIP): OSDOCS-13371-2: Ingress security parameters MicroShift [WIP] OSDOCS-13371-2: Ingress security parameters MicroShift Apr 22, 2025
@@ -57,11 +71,36 @@ ingress:
# ...
----
+
.Ingress controller configuration fields definitions table
.Ingress controller configuration fields definitions
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
.Ingress controller configuration fields definitions
.Ingress controller configuration fields definitions table

let's leave "table" in for accessibility

@openshift-ci openshift-ci bot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Apr 23, 2025
@tedaveryredhat tedaveryredhat force-pushed the OSDOCS-13371-2 branch 2 times, most recently from 772c8f8 to 81efdcf Compare April 23, 2025 20:19
@ShaunaDiaz ShaunaDiaz added this to the Planned for 4.19 GA milestone Apr 24, 2025
@openshift-ci-robot
Copy link

openshift-ci-robot commented Apr 24, 2025

@tedaveryredhat: This pull request references OSDOCS-13371 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "4.19.0" version, but no target version was set.

In response to this:

Version(s):
4.19+

Issue:
https://issues.redhat.com/browse/OSDOCS-13371

Link to docs preview:
https://91560--ocpdocs-pr.netlify.app/microshift/latest/microshift_configuring/microshift-ingress-controller.html

QE review:

  • QE has approved this change.

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 openshift-eng/jira-lifecycle-plugin repository.


|`logEmptyRequests`
|Specifies connections for which no request is received and logged. Usually, these empty requests come from load balancer health probes or web browser speculative connections such as preconnects. Logging these types of empty requests can be undesirable. However, network errors and port scans can also create empty requests, so setting this field to `Ignore` can impede detecting or diagnosing problems and also impede the detection of intrusion attempts.
|'logEmptyRequests` specifies connections for which no request is received and logged. These empty requests come from load balancer health probes or web browser speculative connections (preconnect) and logging these requests can be undesirable. However, these requests can be caused by network errors, in which case logging empty requests can be useful for diagnosing the errors. These requests can be caused by port scans, and logging empty requests can aid in detecting intrusion attempts. Allowed values for this field are `Log` and `Ignore`. The default is `Log`.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
|'logEmptyRequests` specifies connections for which no request is received and logged. These empty requests come from load balancer health probes or web browser speculative connections (preconnect) and logging these requests can be undesirable. However, these requests can be caused by network errors, in which case logging empty requests can be useful for diagnosing the errors. These requests can be caused by port scans, and logging empty requests can aid in detecting intrusion attempts. Allowed values for this field are `Log` and `Ignore`. The default is `Log`.
|`logEmptyRequests` specifies connections for which no request is received and logged. These empty requests come from load balancer health probes or web browser speculative connections (preconnect) and logging these requests can be undesirable. However, these requests can be caused by network errors, in which case logging empty requests can be useful for diagnosing the errors. These requests can be caused by port scans, and logging empty requests can aid in detecting intrusion attempts. Allowed values for this field are `Log` and `Ignore`. The default is `Log`.


. Verify that all certificates which include `-----END CERTIFICATE-----` also end with one carriage return after that line.

. Create a configuration map that includes only the root CA certificate that is used to sign the wildcard certificate:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] Vale.Avoid: Avoid using 'configuration map'.

----
<1> `</path/to/example-ca.crt>` is the path to the root CA certificate file on your local file system. For example, `/etc/pki/ca-trust/source/anchors`.

. Update the cluster-wide proxy configuration with the newly created configuration map:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤖 [error] Vale.Avoid: Avoid using 'configuration map'.

@tedaveryredhat tedaveryredhat force-pushed the OSDOCS-13371-2 branch 2 times, most recently from 20d72af to d84f014 Compare May 13, 2025 19:23
@tedaveryredhat tedaveryredhat force-pushed the OSDOCS-13371-2 branch 3 times, most recently from 7aab754 to 3ac01c1 Compare May 19, 2025 17:37
@openshift-ci openshift-ci bot added size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. and removed size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels May 19, 2025
@openshift-ci openshift-ci bot added size/L Denotes a PR that changes 100-499 lines, ignoring generated files. and removed size/XL Denotes a PR that changes 500-999 lines, ignoring generated files. labels May 19, 2025
Copy link

openshift-ci bot commented May 19, 2025

@tedaveryredhat: The following test failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/validate-asciidoc dce6749 link true /test validate-asciidoc

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
branch/enterprise-4.19 do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. size/L Denotes a PR that changes 100-499 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants