Skip to content

Commit 4aa0f9f

Browse files
committed
1 parent 63c0d29 commit 4aa0f9f

File tree

8 files changed

+74
-2
lines changed

8 files changed

+74
-2
lines changed

_topic_map.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -878,6 +878,8 @@ Topics:
878878
File: migrate-from-openshift-sdn
879879
- Name: Rollback to the OpenShift SDN cluster network provider
880880
File: rollback-to-openshift-sdn
881+
- Name: IPsec encryption configuration
882+
File: about-ipsec-ovn
881883
- Name: Configuring an egress firewall for a project
882884
File: configuring-egress-firewall-ovn
883885
- Name: Viewing an egress firewall for a project

modules/nw-operator-cr.adoc

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ ifdef::openshift-origin[]
9999
endif::openshift-origin[]
100100

101101
[id="nw-operator-configuration-parameters-for-openshift-sdn_{context}"]
102-
== Configuration parameters for the OpenShift SDN default CNI network provider
102+
== Configuration parameters for the OpenShift SDN CNI cluster network provider
103103

104104
The following YAML object describes the configuration parameters for
105105
the OpenShift SDN default Container Network Interface (CNI) network provider.
@@ -165,7 +165,7 @@ value is normally configured automatically.
165165
endif::operator[]
166166

167167
[id="nw-operator-configuration-parameters-for-ovn-sdn_{context}"]
168-
== Configuration parameters for the OVN-Kubernetes default CNI network provider
168+
== Configuration parameters for the OVN-Kubernetes CNI cluster network provider
169169

170170
The following YAML object describes the configuration parameters for the OVN-Kubernetes default CNI network provider.
171171

@@ -180,6 +180,7 @@ defaultNetwork:
180180
ovnKubernetesConfig: <2>
181181
mtu: 1400 <3>
182182
genevePort: 6081 <4>
183+
ipsecConfig: {} <5>
183184
----
184185
ifndef::operator[]
185186
<1> Specified in the `install-config.yaml` file.
@@ -211,6 +212,15 @@ endif::operator[]
211212

212213
<4> The UDP port for the Geneve overlay network.
213214

215+
ifndef::operator[]
216+
<5> Specify an empty object to enable IPsec encryption.
217+
endif::operator[]
218+
219+
ifdef::operator[]
220+
<5> If the field is present, IPsec is enabled for the cluster.
221+
endif::operator[]
222+
223+
214224
[id="nw-operator-example-cr_{context}"]
215225
== Cluster Network Operator example configuration
216226

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * networking/ovn_kubernetes_network_provider/about-ipsec-ovn.adoc
4+
5+
[id="nw-ovn-ipsec-certificates_{context}"]
6+
= Security certificate generation and rotation
7+
8+
The Cluster Network Operator (CNO) generates a self-signed X.509 certificate authority (CA) that is used by IPsec for encryption. Certificate signing requests (CSRs) from each node are automatically fulfilled by the CNO.
9+
10+
The CA is valid for 10 years. The individual node certificates are valid for 5 years and are automatically rotated after 4 1/2 years elapse.
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * networking/ovn_kubernetes_network_provider/about-ipsec-ovn.adoc
4+
5+
[id="nw-ovn-ipsec-encryption_{context}"]
6+
= Encryption protocol and tunnel mode for IPsec
7+
8+
The encrypt cipher used is `AES-GCM-16-256`. The integrity check value (ICV) is `16` bytes. The key length is `256` bits.
9+
10+
The IPsec tunnel mode used is _Transport mode_, a mode that encrypts end-to-end communication.

modules/nw-ovn-ipsec-traffic.adoc

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
// Module included in the following assemblies:
2+
//
3+
4+
[id="nw-ovn-ipsec-traffic_{context}"]
5+
= Types of network traffic flows encrypted by IPsec
6+
7+
With IPsec enabled, only the following network traffic flows between pods are encrypted:
8+
9+
* Traffic between pods on the cluster network
10+
* Traffic from a pod on the host network to a pod on the cluster network
11+
12+
The following traffic flows are not encrypted:
13+
14+
* Traffic between pods on the host network
15+
* Traffic from a pod on the cluster network to a pod on the host network

modules/nw-ovn-kubernetes-matrix.adoc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@ ifeval::["{context}" == "about-ovn-kubernetes"]
1919

2020
|Egress router|Not supported|Supported
2121

22+
|IPsec encryption|Supported|Not supported
23+
2224
|Kubernetes network policy|Supported|Partially supported ^[2]^
2325

2426
|Multicast|Supported|Supported
@@ -32,6 +34,8 @@ ifeval::["{context}" == "about-openshift-sdn"]
3234

3335
|Egress router|Supported|Not supported
3436

37+
|IPsec encryption|Not supported|Supported
38+
3539
|Kubernetes network policy|Partially supported ^[2]^|Supported
3640

3741
|Multicast|Supported|Supported
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
[id="about-ipsec-ovn"]
2+
= IPsec encryption configuration
3+
include::modules/common-attributes.adoc[]
4+
:context: about-ipsec-ovn
5+
6+
toc::[]
7+
8+
With IPsec enabled, all network traffic between nodes on the OVN-Kubernetes Container Network Interface (CNI) cluster network travels through an encrypted tunnel.
9+
10+
IPsec is disabled by default.
11+
12+
[NOTE]
13+
====
14+
IPsec encryption can be enabled only during cluster installation and cannot be disabled after it is enabled.
15+
For installation documentation, refer to xref:../../installing/installing-preparing.adoc#installing-preparing[Selecting a cluster installation method and preparing it for users].
16+
====
17+
18+
include::modules/nw-ovn-ipsec-traffic.adoc[leveloffset=+1]
19+
include::modules/nw-ovn-ipsec-encryption.adoc[leveloffset=+1]
20+
include::modules/nw-ovn-ipsec-certificates.adoc[leveloffset=+1]

networking/ovn_kubernetes_network_provider/about-ovn-kubernetes.adoc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,4 +18,5 @@ include::modules/nw-ovn-kubernetes-matrix.adoc[leveloffset=+1]
1818
* xref:../../networking/ovn_kubernetes_network_provider/configuring-egress-firewall-ovn.adoc#configuring-egress-firewall-ovn[Configuring an egress firewall for a project]
1919
* xref:../../networking/network_policy/about-network-policy.adoc#about-network-policy[About network policy]
2020
* xref:../../networking/ovn_kubernetes_network_provider/enabling-multicast.adoc#nw-ovn-kubernetes-enabling-multicast[Enabling multicast for a project]
21+
* xref:../../networking/ovn_kubernetes_network_provider/about-ipsec-ovn.adoc#about-ipsec-ovn[IPsec encryption configuration]
2122
* xref:../../rest_api/operator_apis/network-operator-openshift-io-v1.adoc#network-operator-openshift-io-v1[Network [operator.openshift.io/v1]]

0 commit comments

Comments
 (0)