ノート:

セキュアなアプリケーション開発のためのOracle Cloud Infrastructure Kubernetes EngineによるSSHトンネリングを活用

イントロダクション

イメージ

Ali Mukadamの助けを借りてOKEでSSHトンネリングを受けた時、私はそれを「魔法」と呼んだ。

彼は私に次のメッセージで答えた。

「魔術(まじゅつ)は、あなたにも使(つか)うことができますよ」。わたしがどこにいるかは、一つであり、同じである」。

オリジナルタイトル: A Thor Movie

「あなたの祖先はそれを魔法と呼んでいましたが、あなたはそれを科学と呼んでいます。「I Come From a Land Where They Are One and the Same」です。

この魔法って何?

最新のアプリケーション開発では、特にOracle Cloud Infrastructure Kubernetes Engine (OCI Kubernetes EngineまたはOKE)を使用する場合、ローカル・リソースとクラウド・ベースのリソース間の接続を保護することが不可欠です。SSHトンネリングは、OKEクラスタに安全に接続するためのシンプルで強力な方法を提供し、開発者はパブリック・インターネットに公開することなくリソースを管理および操作できます。このチュートリアルでは、OKEでSSHトンネリングを設定する方法と、開発者がこのアプローチをワークフローに統合してセキュリティと効率を向上させる方法について説明します。初期構成からベスト・プラクティスまで、OKEベースのアプリケーションでSSHトンネリングを効果的に活用するために必要なすべてのものについて説明します。

次の図は、2つの異なるアプリケーションをトンネリングするSSHの完全なトラフィック・フローを示しています。

イメージ

目的

タスク1: OKEへのKubernetesクラスタのデプロイ(要塞およびオペレータ・インスタンスを使用)

OKEにKubernetesクラスタがデプロイされていることを確認します。

タスク2: KubernetesクラスタへのNGINX Webサーバーのデプロイ

オペレータはインターネットから直接アクセスできず、Bastionホストを経由する必要があります。

新しいポッド/アプリケーションのテスト

タスク3: Localhostエントリを含むSSH構成スクリプトの作成

SSHトンネルを機能させるには、/Users/iwhooge/.sshフォルダにあるSSH構成ファイルで次のエントリを追加する必要があります。

タスク4: SSHトンネルの設定およびLocalhostを使用したNGINX Webサーバーへの接続

タスク5: KubernetesクラスタへのMySQL Databaseサービスのデプロイ

SSHトンネルを介してNGINXアプリケーションにアクセスし、OKE環境内で実行されているMySQLデータベース・サービスを追加できるようになりました。

タスク6: SSH構成スクリプト内の追加のLocalhostエントリの追加

SSH構成スクリプト内にさらにlocalhostエントリを追加して、新しいMySQLデータベース・サービスにアクセスします。

タスク7: SSHトンネルの設定およびLocalhostを使用したMySQL Databaseへの接続

タスク8: すべてのアプリケーションおよびサービスのクリーン・アップ

次のステップ

OKEクラスタへのアクセスを保護することは、最新のアプリケーション開発において重要なステップであり、SSHトンネリングは堅牢で簡単なソリューションを提供します。このチュートリアルのステップを実装することで、開発者はリソースを保護し、ワークフローを合理化し、複数のアプリケーションの機密接続を制御できます。SSHトンネリングをOKE設定に統合すると、セキュリティが向上するだけでなく、パブリック・インターネットへのリソースの公開に関連するリスクも最小限に抑えられます。これらの演習を実施することで、OKEクラスタを自信を持って利用し、スケーラブルでセキュアかつ効率的なアプリケーションの構築に集中できます。

承認

その他の学習リソース

docs.oracle.com/learnの他のラボを確認するか、Oracle Learning YouTubeチャネルで無料のラーニング・コンテンツにアクセスしてください。また、education.oracle.com/learning-explorerにアクセスしてOracle Learning Explorerになります。

製品ドキュメントは、Oracle Help Centerを参照してください。