ヤマムギ

growing hard days.

*

AWS CloudHSMを起動してみました

      2021/07/30

なかなか触る機会のないサービス、CloudHSM。
起動してみました。

手順はユーザーガイドAWS CloudHSM の使用開始を参照しました。

CloudHSMクラスターの作成

[クラスターの作成]からスタートしました。


VPCとAZを指定しました。
本番では複数のAZを指定するべきですが、今回はお試しなので1つだけ。


バックアップは消すからなんでもいいのですが、一応最低の7日にしました。


作成中になりました。

クライアントEC2の起動


HSMクライアント用のEC2インスタンスを起動しました。
IAMロールにSSMManagedInstanceCoreを設定しているので、キーペアなし、セキュリティグループはVPCのデフォルトにしました。


CloudHSMによってセキュリティグループができましたので、それをEC2インスタンスに追加しました。
セキュリティグループはインバウンド、アウトバウンドともに自分自身がソースで、ポートは2223-2225が許可されていました。

AWS CloudHSM クライアントとコマンドラインツールのインストール

EC2にセッションマネージャで接続して実行しました。

HSM作成


CloudHSMクラスターがとりあえずできたみたいなので、選択して[アクション]-[初期化]を選択しました。


最初のHSMを作成するAZを指定しました。


指定したサブネットのENIが作成されました。

クラスターの初期化


4つの証明書ダウンロードリンクから全部ダウンロードしました。

ローカルのmacOSでプライベートキーを作成しました。

自己証明書の作成

クラスターのCSRに署名


指定どおりアップロードして、[アップロードと初期化]を実行しました。

クラスターの初期化とアクティブ化

customerCA.crtを/opt/cloudhsm/etc/customerCA.crtにコピーしなければ、なので、適切なS3バケットにアップロードしてEC2からダウンロード。

コピー終了後次のコマンドを実行しました。
172.31.14.232はHSMのIPアドレスです。

アクティブ化は次のコマンドを実行しました。

listUsersコマンドを実行してみました。

PRECO ユーザーとして HSM にログインしました。

パスワードを変更しました。

User TypeがPRECOからCOに変わりました。

初期設定はできたようです。

カスタムキーストアの作成をしてみる

せっかく環境があるので、KMSのカスタムキーストアを作ってみました。

CloudHsmClusterInvalidConfigurationException – CloudHSM cluster must contain active HSMs in at least two Availability Zones.

こんなメッセージで失敗しました。
AZが1つだとダメみたいです。
また今度機会があれば。

削除

HSMを削除しました。

クラスターを削除しました。

クライアント用のEC2も削除しました。

バックアップもと思ったら、7日間削除が保留されるそうです。
さすがHSM。守られてますね。


最後までお読みいただきましてありがとうございました!

「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。

「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。

「AWS認定資格試験テキスト AWS認定AIプラクティショナー」という本を書きました。

「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。

「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。

「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS ,

  関連記事

AWS CLIからIAM Identity CenterへサインインしてCodeCommitのリポジトリを使用する

Macで操作しました。 AWS CLIバージョンアップ [crayon-699f …

「JAWS-UG Osaka 第22回勉強会 東西の中の人が語る!!! Microservices × Serverless On AWS」で運営と懇親会LTをしてきました

「JAWS-UG Osaka 第22回勉強会 東西の中の人が語る!!! Micr …

AWS EC2 インスタンスステータスのチェックで失敗して起動しなくなり復旧

EC2のインスタンスに接続出来なくなったので、AMIから作成してElastic …

DynamoDB IAMポリシーで特定項目だけを許可する

検証記録です。 対象テーブル 書籍のサンプルで作ったこちらです。 所属バンドの楽 …

AWS Organizationsのルートユーザー管理(Root user management)でメンバーアカウントのルートユーザー認証を無効にしました

2024年11月発表のAWS Organizations を使用するお客様のため …

Amazon SESでメール受信

Amazon SES(Simple Email Service)にメールドメイン …

S3バケットのリクエスタ支払い

S3バケットのリクエスタ支払いを試しました。 バケットの設定 検証用のS3バケッ …

Feedlyのリフレッシュトークンを使ってアクセストークンを取得する

FeedlyというRSSリーダーから連携している構成があります。 Feedlyの …

S3バケットポリシーでクロスアカウントのPrincipalについて確認

確認したこと ドキュメントではこちらで確認しました。 AWS JSON ポリシー …

VPC環境でLambdaを100同時実行してプライベートIPアドレスを確認した

2019年9月発表のLambda 関数が VPC 環境で改善されます以降に、VP …