awsの安全に運用をする上で理解しておきたいキーペアの基礎

awsを利用するときにはEC2を使ってインスタンスを作成し、ユーザーがアプリケーションなどを使用できる環境を整えて運用を開始するというのが一般的です。この際に理解しておかなければならない概念としてキーペアがありますが、どんなものか把握できているでしょうか。

awsを使う上で重要になる理由も合わせて紹介するので参考にして下さい。

→awsを運用することで得られるメリットと注意点

awsを運用するならセキュリティーが重要

キーペアの重要性について理解する上で、まず前提として知っておく必要があるのがawsのセキュリティーに関する考え方です。awsはクラウドサービスの一種で、アマゾンが管理しているクラウドサーバーの一部の領域を割り当ててもらえる仕組みになっています。

awsのユーザーは無数にいるので同じサーバーを共有していることになり、他のユーザーとの間に十分なセキュリティーがなければ安全に運用することができないのは想像できるでしょう。これはクラウドサービス全般に共通するセキュリティー問題で、サービスの運営会社によってどのようなポリシーを持っているかが異なっています。

awsではどのようなスタンスで対応しているのでしょうか。awsでは責任共有モデルを構築してアマゾンとユーザーがそれぞれ異なる領域のセキュリティーについて責任を負うシステムにしています。サーバーを利用する上でインフラに相当するawsのサーバー本体や、そのサーバー運用の際の基盤になるサービスについてはawsが責任を持ち、その上に構築する全てのプラットフォームやオペレーティングシステム、アプリケーションなどについてはユーザーが責任を持つというのがawsの責任共有モデルです。

つまり、クラウドサーバー本体についてはawsが十分なセキュリティーで管理を行い、その上に構築するインスタンスなどのセキュリティーはユーザーが整えることが求められています。awsではこのような切り分けをしている影響で、両社が責任を持つ部分の境界線の情報のやり取りはどうするのかという問題が生じます。

そこではユーザー認証などのプロセスが必要になることから必ず情報の行き来が起こります。パスワードによる認証が基本的なものですが、その際にパスワードの文字列自体はawsに知られずに認証のみ行われるようにしなければならないでしょう。

この観点からセキュリティーを整えておかないとawsとユーザーの間での情報の行き来についてトラブルが起こりかねません。このような問題点があることを念頭においてキーペアについて理解を深めていきましょう。

キーペアの概要を理解しよう

キーペアとは何かをまずは概要から理解していきましょう。キーペアとは名前の通り、鍵の組み合わせのことを指します。パブリックキーあるいは公開鍵と呼ばれるキーと、プライベートキーあるいは秘密鍵と呼ばれるキーのペアのことをキーペアと言います。

キーペアは特に暗号化理論で用いられている用語です。ある情報にパスワードをかけて暗号化し、暗号化された情報に対して適切なパスワードを適用することで復号するという方法で情報のセキュリティーを確保する方法がよく用いられています。

通信のときには暗号化がもはや常識になってきていますが、基本的にはこのようなパスワードを用いる暗号化と復号が行われているでしょう。仕事の書類のやり取りなどの場合にはパスワードが一つで暗号化も復号もそのパスワードだけで良いというのが一般的です。

しかし、キーペアを用いる暗号化方式は少しやり方が異なります。暗号化と復号を同一のパスワードで行うのではなく、適切な組み合わせのキーで行う仕組みになっています。例えば、パブリックキーで暗号化した場合にはペアになっているプライベートキーでのみ復号可能で、パブリックキーを使っても復号できません。

逆にプライベートキーで暗号化しときには、ペアのパブリックキーでは復号できるものの、プライベートキーでは復号できないという仕組みです。

キーペアの一般的な使い方を知ろう

このようなキーペアを用いる暗号化にはどんな意味があるのでしょうか。キーペアを利用するときには一般的にはパブリックキーは公開されていて誰もが知っている状況にあり、プライベートキーは特定の人のみが持っています。

するとパブリックキーで暗号化した情報はその特定の人にしか復号できず、他のパブリックキーを持っている人に内容を知られることはありません。一方、その特定の人がプライベートキーで暗号化した情報はパブリックキーを持つ全ての人が復号して内容を確認できます。

このような形で1対多での情報のやり取りに用いられる暗号化方式になっています。

awsとのやり取りでキーペアが必要

awsを運用するときには前述のようにサーバー側との情報の行き来があるので、その境界部分でのセキュリティー確保が必要です。同じサーバーを利用しているユーザーがたくさんいるため、万が一のトラブルで情報が他のユーザーに伝わってしまったときにも内容がわからないようにしなければならないでしょう。

そのため、awsがプライベートキーを持ち、パブリックキーを各ユーザーに持たせるという形のキーペアで情報セキュリティーを確保しています。

これによってユーザーが暗号化した情報が他のユーザーによって復号されることがない一方、awsがユーザー全体に送る情報は誰もが復号できるという体制が整っています。

割り当てられた領域の運用でもキーペアが必要

キーペアの運用はawsとのやり取りだけでなく、割り当てられた領域の運用にも必要です。領域上にインスタンスを作成し、多くのユーザーに利用してもらうときにはユーザー間の情報セキュリティーが確保されなければならないでしょう。

ECサイトの運営を考えてみれば明らかで、不特定多数のユーザーのログイン情報や発注情報などを他のユーザーに知られることなくやり取りできなければなりません。この際に運営側がプライベートキーを持ち、ユーザーがパブリックキーを持つという形にすればセキュリティーが確保されます。

ユーザーとの情報のやり取りが発生するときにはキーペアの設定が必要になると考えると良いでしょう。

キーペアの原理を理解して運用しよう

awsを利用するときにはawsの運営側との情報のやり取りでも、割り当てられた領域上のサービスにおけるユーザーとのやり取りでもセキュリティーの問題が生じます。パブリックキーとプライベートキーを組み合わせるキーペアに基づく暗号化方式は管理上最も単純で効果的なセキュリティー確保の方法なので、原理を理解して運用していきましょう。