WindowsシステムでのTerraformの構成について
Terraformを使用してOracle Cloud Infrastructureコンポーネントを作成するには、Terraformをダウンロードしてインストールする必要があります。必要なインフラストラクチャ・コンポーネントの作成に使用する構成ファイルを作成するTerraformモジュールもダウンロードします。
Terraformをインストールし、Teraformモジュールを格納するシステムは、オンプレミスでもクラウドでもかまいません。便宜上、これをローカル・システムまたはローカル・ホストと呼びます。
Terraformを実行する前に:
-
コンピュート・インスタンスへのアクセスを許可するために使用されるSSHキー・ペアの生成
-
TerraformによるAPIコールの認証に使用されるAPI署名キーの生成
-
アクセスを認証し、計画を実行するためにTerraformで使用される環境変数を設定します。
これらのステップを完了すると、Terraform構成ファイルを適用してOracle Cloud Infrastructureにインフラストラクチャ・コンポーネントを作成する準備が整います。
要塞ホストにアクセスするためのSSHキー・ペアの生成
SSH鍵ペアを使用して、パブリック・サブネットで作成されたインスタンスに安全にアクセスできます。SSHキー・ペアをローカル・ホスト上に生成します。その後、TerraformモジュールによりSSH公開鍵が要塞ホストに追加されます。パブリック・インターネットを介して要塞ホストに接続する必要がある場合は、アクセスを認証するためにSSH秘密キーを指定します。
PuTTYgenを使用してSSHキー・ペアを生成できます。SSH鍵のパスフレーズを設定しないでください。
他のインスタンスにアクセスするためのSSHキー・ペアの生成
Bastionホストは、パブリックIPアドレスを持たない他のインスタンスへのSSH転送を有効にし、パブリック・インターネットへのアクセスを許可しないために使用されます。要塞ホストから他のインスタンスに安全にアクセスするには、プライベート・サブネットのインスタンスに格納されている公開キーがローカル・マシンに格納されている秘密キーと一致するSSHキー・ペアを使用します。
要塞ホストから他のインスタンスへのアクセスを有効にするために使用するSSH鍵ペアは、OpenSSLやssh-keygen.
などのユーティリティを使用して生成する必要があります。PuTTYで使用される.ppk
形式はOracle Linuxまたは他のUNIX系オペレーティング・システムではサポートされていないため、PuTTYを使用してWindowsで生成されたSSH鍵ペアは使用できません。SSHトラフィックを他のインスタンスに転送する要塞ホストは、Oracle Linuxイメージを使用することに注意してください。
API署名キーの生成
Oracle Cloud InfrastructureでTerraformスクリプトを認証するには、Privacy Enhanced Mail (PEM)形式のRSAキー・ペアを指定する必要があります。このAPI署名キーは、インスタンスへのアクセスに使用するSSHキー・ペアと同じではないことに注意してください。このキー・ペアは、Git BashでOpenSSLを使用して生成できます。ローカル・システムにGit Bashがすでにインストールされている必要があります。
- Git Bashを起動します。
- PEMキーを格納する非表示フォルダを作成します。PEMキーは任意の場所に格納できますが、簡単にするために、Terraformモジュールがあるフォルダの下にこのフォルダを作成します。キー・ペアを格納する場所を書き留めておいてください。その場所に移動し、
mkdir ./.oci
と入力します。 - API署名キーを作成するには、
openssl genrsa -out ./.oci/key_name.pem 2048
と入力します - 秘密キーの権限を変更して、秘密キーを読み取れないようにします。Enter:
chmod go-rwx ./.oci/key_name.pem
- 次に、特定の秘密キーの公開キーを生成するには、
openssl rsa -pubout -in ./.oci/key_name.pem -out ./.oci/key_name_public.pem
と入力します。
コンソールを使用したAPI署名キーのアップロード
API署名キーを生成したら、関連するユーザーの公開キーをOracle Cloud Infrastructureにアップロードする必要があります。API署名キーを初めてアップロードする場合は、コンソールを使用する必要があります。その後、APIを使用してAPIキーをアップロードすることもできます。
- Oracle Cloud Infrastructureコンソールにログインします。
- 「アイデンティティ」、「ユーザー」の順にクリックします。
- API署名キーを追加するユーザーをクリックします。
- ユーザーの詳細ページで、「公開キーの追加」をクリックします。
- ローカル・システムで、Git Bashを起動します。API署名キー・ペアを格納したフォルダに移動します。
- 公開キーをコピーするには、
cat ./key_name_public.pem.
と入力します。公開キーの値が表示されます。この値(行-----BEGIN PUBLIC KEY-----
および-----END PUBLIC KEY-----.
を含む)をコピーします。 - コンソールで公開鍵の値を貼り付け、「追加」をクリックします。