LoginSignup
1
2

More than 3 years have passed since last update.

OCIのNetwork Security Group をCLIで作成する

Last updated at Posted at 2020-07-22

OCIにはインスタンスなどの単位でアクセスを制御することができるNetwork Security Groups(NSG) という機能があります。

ネットワーク・セキュリティ・グループ

こちらのリソースの作成はOCIのコンソール画面からは簡単にできますが
OCI CLIから作成するときはjsonの書き方や指定の方法でハマることもあったので
今回はその方法を紹介します。

この記事ではNSGの作成部分を紹介します。
次の記事で作成したNSGへのルールの適用までを紹介します。

前提条件

  • OCI CLI が利用できること

NSG作成

まずはNSGを作成する際に必要になるjsonフォーマットを取得します。
CLIでcreateする場合のリファレンスは以下です。

今回はjsonフォーマットを取得するために以下のコマンドでjsonのフォーマットを取得します

oci network nsg create --generate-full-command-json-input > create.json

jsonのフォーマットがcreate.jsonに出力されたので中身を確認します。

create.json
{
  "compartmentId": "string",
  "definedTags": {
    "tagNamespace1": {
      "tagKey1": "tagValue1",
      "tagKey2": "tagValue2"
    },
    "tagNamespace2": {
      "tagKey1": "tagValue1",
      "tagKey2": "tagValue2"
    }
  },
  "displayName": "string",
  "freeformTags": {
    "tagKey1": "tagValue1",
    "tagKey2": "tagValue2"
  },
  "maxWaitSeconds": 0,
  "vcnId": "string",
  "waitForState": [
    "PROVISIONING|AVAILABLE|TERMINATING|TERMINATED"
  ],
  "waitIntervalSeconds": 0
}

今回は最低限の項目でいいため、以下まで項目を削り必要な項目を入力します。
compartmentIdにはNSG作成対象のコンパートメントのOCID
vcnIdにはNSG作成対象のVCNのOCIDを記載します。
今回はOCID部分はマスクしています。

create.json
{
  "compartmentId": "ocid1.compartment.oc1..XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
  "displayName": "cli_create",
  "vcnId": "ocid1.vcn.oc1.ap-tokyo-1.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
}

jsonファイルをinputにしてNSGを作成します。
使用するコマンドは以下です。
今回はOCI上のLinuxのデフォルトユーザのホームディレクトリで作業しているため
ファイルの場所は適宜読み読み替えてください。

oci network nsg create --from-json file:///home/opc/create.json

以下のような出力が表示されば正常にNSGの作成が開始されているはずです。

{
  "data": {
    "compartment-id": "ocid1.compartment.oc1..XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    "display-name": "cli_create",
    "freeform-tags": {},
    "id": "ocid1.networksecuritygroup.oc1.ap-tokyo-1.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
    "lifecycle-state": "AVAILABLE",
    "time-created": "2020-07-22T17:02:10.069000+00:00",
    "vcn-id": "ocid1.vcn.oc1.ap-tokyo-1.XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
  },
  "etag": "aa248bce"
}

実際にコンソール画面にアクセスして確認してみましょう。

OCIのコンソール画面で
ハンバーガーメニュー > ネットワーキング > 仮想クラウド・ネットワーク > 仮想クラウド・ネットワークの詳細 > ネットワーク・セキュリティ・グループ
と進むと今回作成したNSGが確認できるはずです。

image.png

まとめ

まずは今回はCLIを使用してNSGを作ってみました。
次の記事ではこのNSGへのルール適用をCLIから行っていきます。
(本当は1つの記事にしようと思いましたが眠気に負けて半分に・・・)

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2