Techfirm Cloud Architect Blog

テックファーム株式会社クラウドインフラグループのブログ

FalcoでAWS Fargateのランタイムを保護してみる

はじめに 最近コンテナをプロジェクトで使う機会も増えてきましたが、コンテナのセキュリティ対策で悩むことも多いのではないでしょうか。 FalcoがAWS Fargateに対応しているようなので、今回はFalcoでAWS Fargateのコンテナランタイムの保護ができるか検証…

AWS IP アドレスの範囲を確認する方法

AWS

はじめに たまにAWSサービスのIPアドレス範囲を確認する必要があったりするため、備忘として記しておこうかと思います。 AWSだけで完結するシステムは、マネージドプレフィックスリストがあるサービスだと省略できることもあるのですが、他クラウドやオンプ…

AWS WAFで複数ステートメントからなる独自ルールを作成して特定ウェブリクエストをブロックする手順

はじめに システム運用を行っていると、特定条件に当てはまったウェブリクエストのみ許可あるいは拒否したい等の要望が出てくることがあります。 AWS WAFの独自ルールで以下の条件すべてに当てはまるウェブリクエストをブロックする手順についてまとめてみた…

【AWS】EC2の自動起動/停止をTerraformで実装

はじめに 以前、こちらの記事でAmazon EventBridgeを使った、EC2の起動・停止を自動化する方法、を紹介しました。 techblog.techfirm.co.jp この仕組みを、Terraformで作成している環境に追加する機会がありましたので、コードを紹介します。 前提 今回は既…

AWS環境構築に役立ちそうなCISベンチマーク

AWSでのセキュリティ設定に役立つCISベンチマークをご紹介します。

Terraformで作ったHTTP APIにServerless Frameworkからデプロイしてみた

Terraformで作成したHTTP API(API Gateway)にServerless Frameworkからデプロイする方法をREST APIと比較しながら紹介します。

Amazon RekognitionとAWS Lambdaを使用してS3内に保存された画像データ内にある顔の類似度判定を行う

Amazon Rekognitionとは Amazon Rekognitionはディープラーニング技術を基盤とした画像および動画分析サービスです。 画像や動画の中の物体、人物、テキスト、シーンなどを検出・分析できます。 具体的には以下のようなケースで利用されます。 マスクやヘル…

S3 MFA Deleteでオブジェクトの削除保護を有効化する

S3 MFA Deleteとは S3 MFA DeleteとはAmazon S3オブジェクトの誤削除を防止するセキュリティ機能の1つで、バケットからオブジェクトを削除する際にMFAデバイスによる二段階認証を必須にできます。 なおこの機能を使用する際に以下の制限を考慮する必要があり…

パーティション射影を使用したAthenaでの AWS WAF ログ分析

はじめに AWS WAFのログ分析を手軽に実現したいと検討していたところ、AWS公式ドキュメント上にAWS WAF ログのクエリ - Amazon Athenaを見つけて試してみました。 ポイントはパーティション射影を利用している点です。 前提 AWS WAFと紐づけ先のCloudFront、…

AWS Lambda を使用して"Hello World"をサーバーレスで実行する

はじめに 近年、ITシステムの設計の開発手法として、「サーバーレス」が非常に注目されています。 サーバーレスとは、個々の利用ユーザ企業の管理者がクラウド上にあるサーバの存在を意識せずにアプリケーションやデータベースの利用ができるクラウド利用形…

【AWS】SSMを使ったポートフォワードで、Windows端末からEC2に接続

はじめに 前回、こちらの記事でAWS Systems Manager(以降、SSM)のSession Managerを使った、AWSマネジメントコンソールからのEC2インスタンスアクセスを紹介しました。 techblog.techfirm.co.jp 普段の運用では、AWSマネジメントコンソールからではなく、Ter…

Amazon Managed Blockchainの概要とブロックチェーン技術の実用例について

昨今ブロックチェーン技術の利用が急速に拡大しており、2025年度には多くの企業にブロックチェーンが普及することで市場規模は約7247.6億円に達するとの予測もあります。 そこで本稿では、ブロックチェーンとスマートコントラクトの基本的な概念から始め、Am…

EBSボリュームの暗号化方法について

EBSとは Amazon EBS(Elastic Block Store)は、持続的で高性能なブロックストレージサービスです。 ※以降、Amazon EBSのサービスそのものを指す場合は EBS、作成したボリュームを指す場合は EBSボリュームと表記します。 EBSはAmazon EC2インスタンスのデー…

AWS Amplify を使ってウェブアプリケーションをデプロイしてみた

AWS Amplifyは開発者がモバイルアプリケーションやウェブアプリケーションを簡単かつ迅速に作成し、デプロイすることができる開発プラットフォームです。 利用者はバックエンドの構築をAWSの様々なクラウドサービスに任せることでアプリケーション開発の工数…

【AWS】RDS Aurora マルチAZ環境のリザーブドインスタンス購入時のオプションについて

はじめに AWSのRDSを運用する上で、経費削減のためリザーブドインスタンスを購入する機会は少なくないと思います。 今回マルチAZ環境のAuroraインスタンスのリザーブドを購入する際に少し混乱した項目があったので、知見としてまとめます。 前提 マルチAZ環…

Amazon S3のバケットポリシーを利用してアクセス制御を行う

はじめに Amazon S3(Simple Storage Service)は、データの保存と管理に使用されるストレージサービスであり、その利用にはアクセス制御が不可欠です。 本稿ではAmazon S3のアクセス制御において重要な役割を果たす「バケットポリシー」について解説し、既…

Amazon CloudWatch Logs Live Tail を試してみる

はじめに 先日、Amazon CloudWatch Logs Live Tailがリリースされました。 今までCloudWatch Logsのログをリアルタイムで見る場合にはマネジメントコンソールで手動でリロードを行ったり、別途ツールを作成する必要がありましたが、ログをほぼリアルタイムに…

【AWS】CLIでAuroraレプリカインスタンスのオートスケール最大・最小数を変更する

はじめに あるプロジェクトで、Auroraレプリカインスタンスの最大数・最小数を運用で柔軟に変更する必要がありました。 AWS CLI・APIを使って変更できるよう、IAMロールを作成していたのですが、以下の2つのコマンドで使い分けに迷う部分があったので記事と…

初心者向けAWS解説シリーズ~データベース編~

はじめに 本稿は、AWSが提供しているデータベースサービスAmazon RDS(Amazon Relational Database Service)で利用可能なデータベースエンジンの種類・RDSの機能について主に触れていきます。 RDSとは RDSとはMySQLやOracleなどの6つのDBエンジンから好きな…

【AWS】クロスアカウントスイッチロールの設定

はじめに 開発・本番環境をアカウントで分けるなど、1つのプロジェクトで複数のAWSアカウントを扱う場合があると思います。 各環境にIAMユーザを作成していると、開発者も管理者も、たくさんの認証情報を管理しなければならなくなり、大変です。 この問題を…

Direct Connect 未経験から始める Advanced Networking - Specialty (ANS-C01) 合格体験記

先日受験した AWS Certified Advanced Networking – Specialty (ANS-C01) の試験に合格したので、個人的に効果的だった学習方法や試験の所感を記録しておこうと思います。

IAMユーザでMFAを強制し、自身でMFAデバイスや認証情報を管理できるようにする方法

はじめに IAMユーザーをセキュアに運用したいが、IAM管理者の運用負荷は抑えたいという要件を想定して、どのようなIAMポリシーを作成していけばよいか記載していきたいと思います。 今回は、以下の要件があった場合を想定してみます。 IAMユーザーにMFAを強…

予期せぬコスト予測オーバーの要因をAWS Cost Explorerで調査してみた

「コスト予測オーバー190%!?」これは月初に鳴り響いたAWS BudgetsアラートをAWS Cost Explorerで調査した奮闘録である※実際の出来事を脚色してお送りしております。

S3上の機密情報ファイルへタグベース制御を行う

はじめに 各種リソースへのアクセスを個別に制御する場合、IAMポリシーでAction、またResource要素を個別に設定すると思います。 ですがAWSには、より厳密かつ柔軟にアクセスを制御するABAC(タグベースのアクセス制御)といった手法があります。 今回は、S3上…

EC2インスタンスの起動失敗メッセージの解読とPassRole権限

はじめに あるAWS環境でAMIからEC2インスタンスを起動したところ、以下のメッセージと共にEC2インスタンスの起動に失敗しました。 You are not authorized to perform this operation. Encoded authorization failure message: XXXXXXX(中略) 調査 操作アカ…

CloudFront+S3環境へデプロイするCI/CDパイプラインの設計

Vue.js等で開発されたフロントエンドをS3バケットにデプロイし、バックエンドはAPI GatewayとLambdaで実装するサーバレス構成も増えてきました。 今回は、フロントエンドのCI/CDパイプラインをどのように設計するか考えていきたいと思います。 構成とキャッ…

【AWS】CodeDeployのInstallイベントが終わらない

はじめに AWSのECSを使用している環境でアプリケーションの更新を行うにあたり、CodeBuildやCodeDeploy等のサービスを使用する機会があります。 CodeDeployでは更新が完了するまでに各種ライフサイクルイベントがありますが、その中のInstallイベント時にタ…

S3に出力したログをAmazon Athenaでクエリする

はじめに ウェブアプリケーションの運用で、ログを解析するとき、 解析専用サーバを構築したり、有料の解析ソフトを使うケースが一般的だと思うが、 生ログをエクセルなどで解析するケースも稀ではないように思う。 たとえば、ALBのアクセスログはS3に保存す…

CloudWatch Logs メトリクスフィルターのテスト方法

はじめに CloudWatch Logs利用時のログ監視のテスト方法について、ときどき思い出す必要があるので備忘的に記しておこうかと思います。 EC2であればOSへログインし、loggerコマンドで監視対象文字列をログ出力させ、監視ツールが正常に異常検知するかという…

Terraformで作ったREST APIにServerless Frameworkからデプロイしてみた

Terraformで作成したREST API(API Gateway)にServerless Frameworkからデプロイするための設定ポイントを紹介します。