1. HOME
  2. ブログ
  3. エンジニアになろう!
  4. 【AWSを利用するならマスト】SSMを導入すべき2つの理由
【AWSを利用するならマスト】SSMを導入すべき2つの理由

【AWSを利用するならマスト】SSMを導入すべき2つの理由

AWS Session Manager(SSM)のメリットは?

最近流行りのクラウドサービス。

なかでも、通販大手としておなじみの Amazon が提供する「AWS(Amazon Web Service)」は業界トップシェアを誇っています。

AWS には様々な機能がありますが、今回取り上げるのは、セッション管理が行えるマネージドサービス「AWS Session Manager(SSM)」です。

AWS を利用するならぜひ導入しておきたい、SSM のメリットについて解説していきます。

メリット①踏み台サーバが不要になる

ネットワーク構築は、セキュリティの対策のため、本命のサーバとは別に踏み台サーバを用意することがほとんどです。

本命サーバには、踏み台サーバからの SSH や RDP からしかアクセスできないようにしておきます。

例えるなら、踏み台サーバは「窓口」、本命サーバは「VIP ルーム」といったところでしょうか。

「窓口」までいくと、「VIP ルーム」までは特定のルール(=プロトコル)で行くよう指示されます。

「VIPルーム」に行くには、必ず「窓口」を経由し、決められたルールに従わなければなりません。

SSM を導入すれば、この「窓口」が不要となるのです。

AWS における踏み台サーバとは

クラウドサービスといえど、ネットワークの管理は必須。

AWS におけるネットワーク構築でも、踏み台サーバを設置することが一般的です。

AWS には「パブリックサブネット」「プライベートサブネット」という種類があり、それぞれ別個にネットワーク構築を行います。

パブリックサブネットインターネットからアクセス可能な EC2インスタンスを設置
プライベートサブネットインターネットから直接接続できない EC2インスタンスを設置

パブリックサブネットはいわば AWS における仮想マシンで、こちらが踏み台になります。

一方、プライベートサブネットには本命の EC2 インスタンスを設置することで、本命サーバの安全性を高めるというわけです。

踏み台サーバなしで安全に直接アクセスできる

通常、プライベートサブネットに設置されている EC2インスタンスに、Amazon EC2 コンソールが直接アクセスすることはできません。

パブリックサブネットにある EC2インスタンス(踏み台サーバなど)を経由して、接続する必要があります。

そこで、Amazon EC2 コンソールに SSM エージェントを導入し、「AWS IAM」の設定を行うのです。

すると、直接かつ安全に、プライベートサブネットの EC2インスタンスに対して接続できるようになります。

踏み台サーバなしで、本命サーバへの安全なアクセスができるのは、非常に画期的といえるでしょう。

メリット②SSH の管理が不要になる

さて、踏み台サーバが不要となると、「EC2 コンソールと 本命 EC2インスタンスはどうやって接続しているのか?本当に安全なのか?」と気になる人もいると思います。

なんらかのサーバにアクセスする場合、安全な接続方法としては SSH を利用するのが鉄板です。

しかし、SSH には、以下のような問題点があるのも事実…

  1. SSH キーの数が増えすぎて、管理が大変
  2. SSH の接続を可能にするには、サーバ側の穴あけ作業が必要

こうした問題を、SSM はどのように解消しているのか、見てみましょう!

トンネリングで SSH 管理が不要になる

SSM では、EC2コンソールと EC2 インスタンスを「トンネリング」で接続しています。

具体的には、EC2コンソールに「AWS CLI」という機能をインストールし、以下のコマンドを実行します。

あらかじめ AWS CLI や AWS IAM で適切な設定を済ませておかなければなりませんが、コマンド自体はこれだけ。

驚くほど簡単に、プライベートサブネットにある EC2インスタンスにアクセスできるのです。

インバウンドポートのオープンが不要になる

また、SSM を使えば、EC2インスタンスの穴あけ作業(インバウンドポートのオープン)も不要です。

サーバ側に不要なポートの穴あけをしたばかりに、そのポートが攻撃されてしまった…なんてことは珍しくありません。

サーバの穴あけは、必要最低限にしておくことがベストなのです。

SSM でのトンネリングが可能とはいえ、実際は、SSH(SCP)を使った方が便利なケースも多いです。

SSM では、トンネリングを行った状態であれば、EC2インスタンス側に SSH の穴あけ作業なしで、接続することができます。

具体的には、コンソール側の ~/.ssh/config に、以下の設定を行います。

※SSM のコマンドを実行後に、SSH接続することも可能です。

上記設定を行うことで、EC2コンソールから EC2インスタンスに SSH 接続する場合、SSM のセッションを貼った状態で SSH 接続ができるようになります。

穴あけ作業をしていないのに、SSH 接続できるのは、少し不思議な感じがするかもしれません。

一度コンソールとインスタンス間で SSM のトンネルがつながりさえすれば、そのトンネルの中は自由に行き来できるイメージです。

サーバのポートの穴あけ作業が不要というのは、セキュリティの観点からもうれしいですね。

さいごに

今回は、AWS で SSM を導入するメリットを解説しました。

もちろん、SSM なしで AWS ネットワークを構築することも可能です。

しかし、SSM を利用することで、セキュリティ的な安全度は飛躍的に高まることが期待されます。

もし、AWS を利用したシステム構築・ネットワーク構築を検討しているのなら、SSM の導入はマストだと思います。

不正アクセスや情報漏洩が騒がれている昨今、安全が高まる SSM はおすすめですよ!

記事を書いた人

\ 3度のメシよりAWSが好き /
(株)ライトコードは、WEB・アプリ・ゲーム開発に強い「好きを仕事にするエンジニア集団」です。
アプリ・WEBシステム開発依頼、お見積もりはこちらまでお願いします。
また、WEB・スマホ系エンジニアを積極採用中です!
※現在、多数のお問合せを頂いており、返信に、多少お時間を頂く場合がございます。

こちらの記事もオススメ!



書いた人はこんな人

ライトコード社員ブログ
ライトコード社員ブログ
「好きなことを仕事にするエンジニア集団」の(株)ライトコードです!
ライトコードは、福岡本社、東京オフィスの2拠点で事業展開するIT企業です。
現在は、国内を代表する大手IT企業を取引先にもち、ITシステムの受託事業が中心。
いずれも直取引で、月間PV数1億を超えるWebサービスのシステム開発・運営、インフラの構築・運用に携わっています。

システム開発依頼・お見積もりは大歓迎!
また、WEBエンジニアとモバイルエンジニアも積極採用中です!

ご応募をお待ちしております!

関連記事

採用情報

\ あの有名サービスに参画!? /

バックエンドエンジニア

\ クリエイティブの最前線 /

フロントエンドエンジニア

\ 世界を変える…! /

Androidエンジニア

\ みんなが使うアプリを創る /

iOSエンジニア