25.2. ファイアウォールの設定
ファイアウォールを使用する場合、OpenShift Container Platform が機能するために必要なサイトにアクセスできるように設定する必要があります。一部のサイトにはアクセスを常に付与し、クラスターをホストするために Red Hat Insights、Telemetry サービス、クラウドを使用したり、特定のビルドストラテジーをホストする場合に追加のアクセスを付与する必要があります。
25.2.1. OpenShift Container Platform のファイアウォールの設定
OpenShift Container Platform をインストールする前に、ファイアウォールを、OpenShift Container Platform が必要とするサイトへのアクセスを付与するように設定する必要があります。ファイアウォールを使用する場合は、OpenShift Container Platform が機能するために必要なサイトにアクセスできるように、ファイアウォールに追加の設定を行います。
ワーカーノードと比較して、コントローラーノードのみで実行されるサービスには、特別な設定上の考慮事項はありません。
ご使用の環境で OpenShift Container Platform クラスターの前に専用のロードバランサーがある場合は、ファイアウォールとロードバランサーの間の許可リストを確認して、クラスターに対する不要なネットワーク制限を回避してください。
手順
ファイアウォールの許可リストに次のレジストリー URL を設定します。
URL ポート 機能 registry.redhat.io
443
コアコンテナーイメージを指定します。
access.redhat.com
[1]443
コアコンテナーイメージを含め、Red Hat Ecosytem Catalog に保存されているすべてのコンテナーイメージをホストします。
quay.io
443
コアコンテナーイメージを指定します。
cdn.quay.io
443
コアコンテナーイメージを指定します。
cdn01.quay.io
443
コアコンテナーイメージを指定します。
cdn02.quay.io
443
コアコンテナーイメージを指定します。
cdn03.quay.io
443
コアコンテナーイメージを指定します。
cdn04.quay.io
443
コアコンテナーイメージを指定します。
cdn05.quay.io
443
コアコンテナーイメージを指定します。
cdn06.quay.io
443
コアコンテナーイメージを指定します。
sso.redhat.com
443
https://console.redhat.com
サイトは、sso.redhat.com
からの認証を使用します。-
ファイアウォール環境では、
access.redhat.com
リソースが許可リストに含まれていることを確認してください。このリソースは、コンテナークライアントがregistry.access.redhat.com
からイメージを取得するときにイメージを検証するために必要な署名ストアをホストします。
許可リストで
cdn.quay.io
とcdn0[1-3].quay.io
の代わりに、ワイルドカードの*.quay.io
と*.openshiftapps.com
を使用できます。quay.io
などのサイトを許可リストに追加するには、*.quay.io
などのワイルドカードエントリーを拒否リストに加えないでください。ほとんどの場合、イメージレジストリーはコンテンツ配信ネットワーク (CDN) を使用してイメージを提供します。ファイアウォールがアクセスをブロックすると、最初のダウンロード要求がcdn01.quay.io
などのホスト名にリダイレクトされるときに、イメージのダウンロードが拒否されます。-
ファイアウォール環境では、
- ファイアウォールの許可リストを設定し、ビルドに必要な言語またはフレームワークのリソースを提供するサイトをリストに含めます。
Telemetry を無効にしていない場合は、以下の URL へのアクセスを許可して Red Hat Insights にアクセスできるようにする必要があります。
URL ポート 機能 cert-api.access.redhat.com
443
Telemetry で必須
api.access.redhat.com
443
Telemetry で必須
infogw.api.openshift.com
443
Telemetry で必須
console.redhat.com
443
Telemetry および
insights-operator
で必須Alibaba Cloud、Amazon Web Services (AWS) 、Microsoft Azure、または Google Cloud Platform (GCP) を使用してクラスターをホストする場合、クラウドプロバイダー API およびそのクラウドの DNS を提供する URL へのアクセス権を付与する必要があります。
クラウド URL ポート 機能 Alibaba
*.aliyuncs.com
443
Alibaba Cloud のサービスとリソースにアクセスするために必要です。Alibaba の endpoints_config.go ファイル を参照して、使用するリージョンを許可する正確なエンドポイントを確認してください。
AWS
aws.amazon.com
443
AWS 環境でのクラスターのインストールや管理に使用されます。
*.amazonaws.com
または、AWS API にワイルドカードを使用しない場合、次の URL を許可リストに含める必要があります。
443
AWS サービスおよびリソースへのアクセスに必要です。AWS ドキュメントの AWS Service Endpoints を参照して、使用するリージョンを許可する正確なエンドポイントを確認してください。
ec2.amazonaws.com
443
AWS 環境でのクラスターのインストールや管理に使用されます。
events.amazonaws.com
443
AWS 環境でのクラスターのインストールや管理に使用されます。
iam.amazonaws.com
443
AWS 環境でのクラスターのインストールや管理に使用されます。
route53.amazonaws.com
443
AWS 環境でのクラスターのインストールや管理に使用されます。
*.s3.amazonaws.com
443
AWS 環境でのクラスターのインストールや管理に使用されます。
*.s3.<aws_region>.amazonaws.com
443
AWS 環境でのクラスターのインストールや管理に使用されます。
*.s3.dualstack.<aws_region>.amazonaws.com
443
AWS 環境でクラスターをインストールし、管理するのに使用されます。
sts.amazonaws.com
443
AWS 環境でクラスターをインストールし、管理するのに使用されます。
sts.<aws_region>.amazonaws.com
443
AWS 環境でクラスターをインストールし、管理するのに使用されます。
tagging.us-east-1.amazonaws.com
443
AWS 環境でのクラスターのインストールや管理に使用されます。このエンドポイントは、クラスターがデプロイされているリージョンに関係なく、常に
us-east-1
です。ec2.<aws_region>.amazonaws.com
443
AWS 環境でのクラスターのインストールや管理に使用されます。
elasticloadbalancing.<aws_region>.amazonaws.com
443
AWS 環境でのクラスターのインストールや管理に使用されます。
servicequotas.<aws_region>.amazonaws.com
443
必須。サービスをデプロイするためのクォータを確認するのに使用されます。
tagging.<aws_region>.amazonaws.com
443
タグの形式で AWS リソースに関するメタデータを割り当てることができます。
*.cloudfront.net
443
CloudFront へのアクセスを提供するために使用されます。AWS Security Token Service (STS) およびプライベート S3 バケットを使用する場合は、CloudFront へのアクセスを提供する必要があります。
GCP
*.googleapis.com
443
GCP サービスおよびリソースへのアクセスに必要です。GCP ドキュメントの Cloud Endpoints を参照して、お使いの API を許可するエンドポイントを確認してください。
accounts.google.com
443
GCP アカウントへのアクセスに必要です。
Microsoft Azure
management.azure.com
443
Microsoft Azure のサービスとリソースにアクセスするために必要です。Microsoft Azure ドキュメントの Microsoft Azure REST API reference を参照して、お使いの API を許可するエンドポイントを確認してください。
*.blob.core.windows.net
443
Ignition ファイルのダウンロードに必要です。
login.microsoftonline.com
443
Microsoft Azure のサービスとリソースにアクセスするために必要です。Microsoft Azure ドキュメントの Azure REST API reference を参照して、お使いの API を許可するエンドポイントを確認してください。
以下の URL を許可リストに指定します。
URL ポート 機能 mirror.openshift.com
443
ミラーリングされたインストールのコンテンツおよびイメージへのアクセスに必要。Cluster Version Operator には単一の機能ソースのみが必要ですが、このサイトはリリースイメージ署名のソースでもあります。
storage.googleapis.com/openshift-release
443
リリースイメージ署名のソース (ただし、Cluster Version Operator には単一の機能ソースのみが必要)。
*.apps.<cluster_name>.<base_domain>
443
Ingress ワイルドカードをインストール時に設定しない限り、デフォルトのクラスタールートへのアクセスに必要。
quayio-production-s3.s3.amazonaws.com
443
AWS で Quay イメージコンテンツにアクセスするために必要。
api.openshift.com
443
クラスタートークンの両方が必要であり、クラスターに更新が利用可能かどうかを確認するために必要です。
rhcos.mirror.openshift.com
443
Red Hat Enterprise Linux CoreOS (RHCOS) イメージをダウンロードするために必要。
console.redhat.com
443
クラスタートークンに必須
sso.redhat.com
443
https://console.redhat.com
サイトは、sso.redhat.com
からの認証を使用します。Operator にはヘルスチェックを実行するためのルートアクセスが必要です。具体的には、認証および Web コンソール Operator は 2 つのルートに接続し、ルートが機能することを確認します。クラスター管理者として操作を実行しており、
*.apps.<cluster_name>.<base_domain>
を許可しない場合は、これらのルートを許可します。-
oauth-openshift.apps.<cluster_name>.<base_domain>
-
console-openshift-console.apps.<cluster_name>.<base_domain>
、またはフィールドが空でない場合にconsoles.operator/cluster
オブジェクトのspec.route.hostname
フィールドに指定されるホスト名。
-
オプションのサードパーティーコンテンツに対する次の URL を許可リストに追加します。
URL ポート 機能 registry.connect.redhat.com
443
すべてのサードパーティーのイメージと認定 Operator に必要です。
rhc4tp-prod-z8cxf-image-registry-us-east-1-evenkyleffocxqvofrk.s3.dualstack.us-east-1.amazonaws.com
443
registry.connect.redhat.com
でホストされているコンテナーイメージにアクセスできますoso-rhc4tp-docker-registry.s3-us-west-2.amazonaws.com
443
Sonatype Nexus、F5 Big IP Operator に必要です。
デフォルトの Red Hat Network Time Protocol (NTP) サーバーを使用する場合は、以下の URL を許可します。
-
1.rhel.pool.ntp.org
-
2.rhel.pool.ntp.org
-
3.rhel.pool.ntp.org
-
デフォルトの Red Hat NTP サーバーを使用しない場合は、プラットフォームの NTP サーバーを確認し、ファイアウォールでこれを許可します。
25.2.2. OpenShift Container Platform ネットワークフローマトリックス
ネットワークフローマトリックスは、OpenShift Container Platform サービスへの Ingress フローを説明します。マトリックス内のネットワーク情報は、ベアメタル環境とクラウド環境の両方に対して正確です。ネットワークフローマトリックスの情報を使用して、Ingress トラフィックを管理します。Ingress トラフィックを重要なフローに制限して、ネットワークセキュリティーを強化できます。
生の CSV コンテンツを表示またはダウンロードするには、このリソース を参照してください。
さらに、Ingress トラフィックを管理するときは、次の動的ポート範囲を考慮してください。
-
9000-9999
: ホストレベルのサービス - Kubernetes ノードポート
-
49152-65535
: 動的またはプライベートポート
ネットワークフローマトリックスは、基本 OpenShift Container Platform インストールの Ingress トラフィックフローを説明します。Red Hat Marketplace から入手できるオプションの Operator などの追加コンポーネントのネットワークフローは説明しません。このマトリックスは、Hosted-Control-Plane、MicroShift、またはスタンドアロンクラスターには適用されません。
方向 | プロトコル | ポート | namespace | Service | Pod | Container | ノードのロール | 任意 |
---|---|---|---|---|---|---|---|---|
Ingress | TCP | 22 | ホストシステムサービス | sshd | master | TRUE | ||
Ingress | TCP | 53 | openshift-dns | dns-default | dnf- デフォルト | dns | master | FALSE |
Ingress | TCP | 111 | ホストシステムサービス | rpcbind | master | TRUE | ||
Ingress | TCP | 2379 | openshift-etcd | etcd | etcd | etcdctl | master | FALSE |
Ingress | TCP | 2380 | openshift-etcd | healthz | etcd | etcd | master | FALSE |
Ingress | TCP | 5050 | openshift-machine-api | 皮肉なプロキシー | 皮肉なプロキシー | master | FALSE | |
Ingress | TCP | 6080 | openshift-kube-apiserver | kube-apiserver | kube-apiserver-insecure-readyz | master | FALSE | |
Ingress | TCP | 6385 | openshift-machine-api | 皮肉なプロキシー | 皮肉なプロキシー | master | FALSE | |
Ingress | TCP | 6443 | openshift-kube-apiserver | apiserver | kube-apiserver | kube-apiserver | master | FALSE |
Ingress | TCP | 8080 | openshift-network-operator | network-operator | network-operator | master | FALSE | |
Ingress | TCP | 8798 | openshift-machine-config-operator | machine-config-daemon | machine-config-daemon | machine-config-daemon | master | FALSE |
Ingress | TCP | 9001 | openshift-machine-config-operator | machine-config-daemon | machine-config-daemon | kube-rbac-proxy | master | FALSE |
Ingress | TCP | 9099 | openshift-cluster-version | cluster-version-operator | cluster-version-operator | cluster-version-operator | master | FALSE |
Ingress | TCP | 9100 | openshift-monitoring | node-exporter | node-exporter | kube-rbac-proxy | master | FALSE |
Ingress | TCP | 9103 | openshift-ovn-kubernetes | ovn-kubernetes-node | ovnkube-node | kube-rbac-proxy-node | master | FALSE |
Ingress | TCP | 9104 | openshift-network-operator | metrics | network-operator | network-operator | master | FALSE |
Ingress | TCP | 9105 | openshift-ovn-kubernetes | ovn-kubernetes-node | ovnkube-node | kube-rbac-proxy-ovn-metrics | master | FALSE |
Ingress | TCP | 9107 | openshift-ovn-kubernetes | egressip-node-healthcheck | ovnkube-node | ovnkube-controller | master | FALSE |
Ingress | TCP | 9108 | openshift-ovn-kubernetes | ovn-kubernetes-control-plane | ovnkube-control-plane | kube-rbac-proxy | master | FALSE |
Ingress | TCP | 9192 | openshift-cluster-machine-approver | machine-approver | machine-approver | kube-rbac-proxy | master | FALSE |
Ingress | TCP | 9258 | openshift-cloud-controller-manager-operator | machine-approver | cluster-cloud-controller-manager | cluster-cloud-controller-manager | master | FALSE |
Ingress | TCP | 9444 | openshift-kni-infra | haproxy | haproxy | master | FALSE | |
Ingress | TCP | 9445 | openshift-kni-infra | haproxy | haproxy | master | FALSE | |
Ingress | TCP | 9447 | openshift-machine-api | metal3-baremetal-operator | master | FALSE | ||
Ingress | TCP | 9537 | ホストシステムサービス | クリオメトリクス | master | FALSE | ||
Ingress | TCP | 9637 | openshift-machine-config-operator | kube-rbac-proxy-crio | kube-rbac-proxy-crio | kube-rbac-proxy-crio | master | FALSE |
Ingress | TCP | 9978 | openshift-etcd | etcd | etcd | etcd メトリック | master | FALSE |
Ingress | TCP | 9979 | openshift-etcd | etcd | etcd | etcd メトリック | master | FALSE |
Ingress | TCP | 9980 | openshift-etcd | etcd | etcd | etcd | master | FALSE |
Ingress | TCP | 10250 | ホストシステムサービス | kubelet | master | FALSE | ||
Ingress | TCP | 10256 | openshift-ovn-kubernetes | ovnkube | ovnkube | ovnkube-controller | master | FALSE |
Ingress | TCP | 10257 | openshift-kube-controller-manager | kube-controller-manager | kube-controller-manager | kube-controller-manager | master | FALSE |
Ingress | TCP | 10258 | openshift-cloud-controller-manager-operator | cloud-controller | cloud-controller-manager | cloud-controller-manager | master | FALSE |
Ingress | TCP | 10259 | openshift-kube-scheduler | scheduler | openshift-kube-scheduler | kube-scheduler | master | FALSE |
Ingress | TCP | 10260 | openshift-cloud-controller-manager-operator | cloud-controller | cloud-controller-manager | cloud-controller-manager | master | FALSE |
Ingress | TCP | 10300 | openshift-cluster-csi-drivers | csi-livenessprobe | csi-driver-node | csi-driver | master | FALSE |
Ingress | TCP | 10309 | openshift-cluster-csi-drivers | csi-node-driver | csi-driver-node | csi-node-driver-registrar | master | FALSE |
Ingress | TCP | 10357 | openshift-kube-apiserver | openshift-kube-apiserver-healthz | kube-apiserver | kube-apiserver-check-endpoints | master | FALSE |
Ingress | TCP | 17697 | openshift-kube-apiserver | openshift-kube-apiserver-healthz | kube-apiserver | kube-apiserver-check-endpoints | master | FALSE |
Ingress | TCP | 18080 | openshift-kni-infra | CoreDNS | CoreDNS | master | FALSE | |
Ingress | TCP | 22623 | openshift-machine-config-operator | machine-config-server | machine-config-server | machine-config-server | master | FALSE |
Ingress | TCP | 22624 | openshift-machine-config-operator | machine-config-server | machine-config-server | machine-config-server | master | FALSE |
Ingress | UDP | 53 | openshift-dns | dns-default | dnf- デフォルト | dns | master | FALSE |
Ingress | UDP | 111 | ホストシステムサービス | rpcbind | master | TRUE | ||
Ingress | UDP | 6081 | openshift-ovn-kubernetes | ovn-kubernetes ジュネーブ | master | FALSE | ||
Ingress | TCP | 22 | ホストシステムサービス | sshd | worker | TRUE | ||
Ingress | TCP | 53 | openshift-dns | dns-default | dnf- デフォルト | dns | worker | FALSE |
Ingress | TCP | 80 | openshift-ingress | router-default | router-default | ルーター | worker | FALSE |
Ingress | TCP | 111 | ホストシステムサービス | rpcbind | worker | TRUE | ||
Ingress | TCP | 443 | openshift-ingress | router-default | router-default | ルーター | worker | FALSE |
Ingress | TCP | 8798 | openshift-machine-config-operator | machine-config-daemon | machine-config-daemon | machine-config-daemon | worker | FALSE |
Ingress | TCP | 9001 | openshift-machine-config-operator | machine-config-daemon | machine-config-daemon | kube-rbac-proxy | worker | FALSE |
Ingress | TCP | 9100 | openshift-monitoring | node-exporter | node-exporter | kube-rbac-proxy | worker | FALSE |
Ingress | TCP | 9103 | openshift-ovn-kubernetes | ovn-kubernetes-node | ovnkube-node | kube-rbac-proxy-node | worker | FALSE |
Ingress | TCP | 9105 | openshift-ovn-kubernetes | ovn-kubernetes-node | ovnkube-node | kube-rbac-proxy-ovn-metrics | worker | FALSE |
Ingress | TCP | 9107 | openshift-ovn-kubernetes | egressip-node-healthcheck | ovnkube-node | ovnkube-controller | worker | FALSE |
Ingress | TCP | 9537 | ホストシステムサービス | クリオメトリクス | worker | FALSE | ||
Ingress | TCP | 9637 | openshift-machine-config-operator | kube-rbac-proxy-crio | kube-rbac-proxy-crio | kube-rbac-proxy-crio | worker | FALSE |
Ingress | TCP | 10250 | ホストシステムサービス | kubelet | worker | FALSE | ||
Ingress | TCP | 10256 | openshift-ovn-kubernetes | ovnkube | ovnkube | ovnkube-controller | worker | TRUE |
Ingress | TCP | 10300 | openshift-cluster-csi-drivers | csi-livenessprobe | csi-driver-node | csi-driver | worker | FALSE |
Ingress | TCP | 10309 | openshift-cluster-csi-drivers | csi-node-driver-registrar | csi-driver-node | csi-node-driver-registrar | worker | FALSE |
Ingress | TCP | 18080 | openshift-kni-infra | CoreDNS | CoreDNS | worker | FALSE | |
Ingress | UDP | 53 | openshift-dns | dns-default | dnf- デフォルト | dns | worker | FALSE |
Ingress | UDP | 111 | ホストシステムサービス | rpcbind | worker | TRUE | ||
Ingress | UDP | 6081 | openshift-ovn-kubernetes | ovn-kubernetes ジュネーブ | worker | FALSE |