Amazon EC2編~EC2インスタンスを監視するには~
先日AWSの方で、Amazon CloudWatchに新機能が追加されたと発表がありました。
新機能とは、Amazon CloudWatchでサービスに異常を検知してアラームがトリガされた場合、EC2などのインスタンスでサービスを停止または、終了する機能だそうです。
この機能はフェイルセーフ(異常な状態を検知してから行動する)やアプリケーションの処理ロジックの一部(期待される条件を待ってから行動する)として使うことができるので、非常に便利な機能です。このアラームアクションの設定についても後ほど、ご説明したいと思います。
ということで今回は、そんなAmazon EC2での監視について記述したいと思います。
システムを運用していくうえで懸念事項となるのは、やはり「障害」かと思います。
どんなに万全に設定をおこなっても、障害が起きてしまうことはあります。
障害をいち早く検知また、できるだけ障害を未然に防ぐには日々のシステム監視が重要になります。
監視方法はいくつかありますが、まずは「Amazon CloudWatch」を紹介しましょう!
基本的にAWSでの監視はこのAmazon CloudWatch行えます。
Amazon CloudWatchは、リソース監視のためにあらかじめAWSで用意されている測定基準(メトリクス)をもとに、インスタンスをモニタリングしてそのデータに基づくアラートアクションを構成できるサービスです。
あらかじめ、CloudWatchで設定をおこなっておけば何か監視項目で変動が起こった際、所定の通知先にアラートメールを通知することもできます。
下記画面が実際のEC2でのCloudWatch監視項目です。
(※通常にAWS管理コンソールにログインしていただき、EC2サービスに入った画面下部の「Monitoring」タブをクリックしていただくと、表示されます。)
また、EC2でのCloudWatchアラート通知設定方法についても説明しておきましょう!
1.AWS管理コンソールにログインして、サービスでEC2を選択し下記画面を開き、画面左メニューにある「Instances」をクリックします。
2.インスタンスの一覧から今回、設定をおこなう対象インスタンスをチェック、画面下部より「Monitoring」タブを選択して「Create Alarm」をクリックします。
3.「create topic」をクリックします。
4.「Send a notification to:」の項目に任意の名前(アラーム名称)を入力していただき、「with these recipients:」にメールアドレス(ア ラーム通知先)を入力します。
「Whenever」の「of」の後の項目で「Status Check Failed(Any)」を選択、「Create Alarm」をクリックします。
5.Closeをクリック
また、今回は監視項目で「Status Check Failed(Any)」を選択しましたが、監視の設定項目は他にも以下の項目を選択することが可能です。
それぞれAverage(平均)、最大(Maximum)、最小(Minimum)で表示させることができるので簡単に項目の設定をおこなうことができます。
・CPU Utilization(CPU使用率)
・Disk Reads(ディスク読み込み状況)
・Disk Writes(ディスク書き込み状況)
・Network In,Out(ネットワーク状況)
・Status Check Failed(ステータスチェックに失敗した際)
また、手順3の画面にも表示されているしきい値のグラフはリアルタイムに反映され、下記画面のように確認することができます。
アラーム通知設定の手順2と同様、画面下部で「Monitoring」タブをクリックすると、グラフが表示されます。
これで、アラーム通知設定は完了です!
ただ、CloudWatchの基本設定だけではLoad Average(処理を待っているプロセス数)やメモリ利用状況、Disk Usage(ディスク利用状況)といったOS内部の情報を監視することはできません。その補完としてあるのが、「カスタムメトリクス」です。
「カスタムメトリクス」はCloudWatchにある機能の1つで、先述であげたような、CloudWatchの基本設定だけだと監視することができないけど、この部分については監視したい!という項目のメトリクスを独自に作成し監視をおこなうことも可能です。
加えて、冒頭でお話したCloudWatchのアラームアクションの設定に関する説明ですがもし、このアラームアクションの設定をおこなう際は、先ほどのアラーム通知設定の手順3の画面の「Take the action」の項目にチェックを付け、「Stop」か「Terminate」を選択してアラームがトリガされた場合の処理を決めましょう!
最後にもうひとつだけ、監視ツールをご紹介します。「Nagios」という監視ツールです。
Nagiosはサーバ自体の稼動状態を監視するツールです。
Nagiosには、システムの異常を検知してメールで報告する機能、Webインターフェースによるサーバステータスの一覧や、レポートの出力機能などがあります。
こちらでご紹介した監視ツールおよび監視方法は、ほんの一例です。
特に監視方法については、紹介したCloudWatchの「カスタムメトリクス」を用いることで様々なパターンで監視をおこなうことが可能です。
また監視をおこなう上で、「カスタムメトリクス」については公式のものも公開されていますので詳細については以下のページも参考にしてみてください。
■Amazon CloudWatch開発ガイドはこちら
いかがでしたでしょうか?
是非、監視ツールを活用していただき、負荷なく監視をおこないましょう!
次回は、「SnapshotやAMIを使ったバックアップと運用~パート①~」と題して、SnapshotやAMIを使ったバックアップについてお話しますのでお楽しみに!
Amazon RDS編~DBインスタンスを立ちあげてみよう!~
こちらについての最新記事が更新されました!
Amazon RDS編~DBインスタンスを立ちあげてみよう!Update~
先日、Amazon Relational Database Services(Amazon RDS)の方でも無料枠が追加され、SQL ServerのマイクロDBインスタンスを毎月750時間、20GBのデータベースストレージ、1000万I/O、20GBのバックアップストレージを1年間無料で使えるようになりました。
これにより、今までは利用しづらかったRDSも気軽に利用できるようになったと思います。
というわけで今回はそんなRDSの利用について紹介していきます。
以前の記事ではEC2入門編ということで掲載致しましたが、今回はそのRDS編!!基本設定や監視設定を実施する上での注意事項また、MySQLとの違いについてなど、入門から少し詳細な部分まで、RDSの利用法を解説していきます。
RDS(Relational Database Service)は、データ管理方式の1つでその各々で決定した方式に基づいて設計したデータベース(リレーショナルデータベース)を簡単にセットアップ、運用、拡張することのできるサービスです。
第1回目は、RDSのDBインスタンスの立ちあげ方法について、ご紹介します。EC2同様、簡単な操作ですぐにインスタンスを立ちあげることができるので是非、参考にしてください!
それでは、RDSを立ちあげてみましょう!
1. AWS管理コンソールのログインページにてメールアドレスとパスワードを入力、「Sign in using our secure server」をクリックします。
2. ログイン後、表示されるメニュー画面の「Amazon Web Services」の項目で、「RDS」を選択します。
予め、セキュリティグループとパラメータグループを作成しておきます。
3. 「DB Security Groups」をクリックします。
4. 「Amazon RDS: My DB Instances」項目の中の「Create DB Security Group」をクリック。
5. 「Name」、「Description(概要説明:日付等)」を入力して、「Yes, Create」をクリックします。
6. 「Navigation」のメニューの中の「DB Parameter Groups」をクリックします。
7. 「Amazon RDS: My DB Instances」の中の「Create DB Parameter Group」をクリックします。
8. 下記3項目を選択(入力)し「Yes, Create」をクリック。
「DB Parameter Group Family」
「DB Parameter Group Name」
「DB Parameter Group Description(概要説明:日付等)」
※「Family」、「Name」、「Description」は、任意のものを選択および入力してください。
これでパラメータグループが作成されます。
以上で、セキュリティグループおよびパラメータグループの作成は完了です。
いよいよ、DBインスタンスの作成に入ります!
9. 「Navigation」のメニューの中の「DB Instances 」をクリックします。
10. 「Amazon RDS: My DB Instances」の中の「Launch DB Instance」をクリックします。
11. 任意の項目を「Selectします」。
12. 下記7項目を選択(入力)し、「Continue」をクリックします。
「DB Engine Version」
「DB Instance Class」
「Multi-AZ Deployment」
「Allocated Storage」
「Master User name」
「DB Instance Identifier(DBインスタンス名称)」
「Master Password」
※ 「Master User Name」は「root」と入力して下さい。
※ 選択項目および入力項目は、任意のものを選択および入力してください。
13. 「Database Name」、「Availability Zone」をそれぞれ選択および入力します。
なおセキュリティグループとパラメータグループは、先ほど作成したものを選択して、「Continue」をクリックします。
※任意のものを入力および選択してください。
14. 「Enabled Automatic Backups(自動バックアップ設定)」、「Backup Retention Period(バックアップ期間)」をそれぞれ選択し、「Continue」をクリックします。
※任意のものを選択してください。
15. 「Launch DB Instance Wizard」の画面で設定内容を確認し、「Launch DB Instance」をクリック。
16.「Close」をクリックします。
これで、RDSインスタンスの立ち上げは完了です!いかがでしたでしょうか?
今回の記事を参考に是非、RDSを開始してみてください!
次回は、「Amazon EC2編~EC2インスタンスを監視するには~」と題して、Amazon EC2の監視についてお話していきたいと思いますのでお楽しみに!
Amazon EC2編~EC2インスタンスからメールを送る場合には(送信制限解除について)~
Amazon EC2からのメールの送信についてお話をする前に、少しAWSに関する情報をご紹介します。
先日、米アマゾン・ウェブ・サービスは、AWSが「SAP Business Suite」の実行環境として認定されたと発表しました。
SAP Business Suiteとは顧客管理関係ソフトのことで、企業の方が業務で利用するソフトをAWSで稼動できるようになったというものです。
これにより、EC2インスタンスなどでも顧客管理をおこなえるので、より業務が効率的に進むことと思います。
さて、ここから本題に入ります。
今回は、作成したAmazon EC2インスタンスからメールを送信したい!
そんな場合にやっておくべきことについてお話します。
AWS上のEC2インスタンスからSMTPサーバを稼動させてメールを送信する場合、デフォルトの状態だとメールの送信数に制限がかけられています。
さらにそのままの状態だと、送信したメールが迷惑メールとして扱われてしまう場合があります。これは最近、Amazon EC2のサーバが迷惑メール一斉送信に利用されていることが増えているためです。
今回は、これらを回避するために必要と思われる主な3点の実施を以下に紹介します。
① DNS逆引き設定
② SPF設定
③ メール送信制限解除申請
これさえおこなっていれば、EC2からのメール送信も安心!ということでさっそく、設定してみましょう。
①EC2でのDNS逆引き設定
メールサーバによっては送信元のホストでDNS逆引き設定がない、もしくは正引き設定(※DNS逆引き、正引きについては、文末に記載)との間に差異がある場合、SMTP接続を拒否されることがあります。
以前Amazon EC2では、DNS逆引き設定に以下のような既定値が設定されていたため基本的にユーザが設定をおこなうことはできなかったのですが、現在はAWSでDNS逆引き設定が正式にサービス化され、申請をおこなうことが可能になりました。
・DNS逆引き設定申請はこちら
※DNS 逆引き
→逆引きはDNSを利用してIPアドレスに対するホスト名を調べること、です。
基本的なネットワークサービスを利用する際にはあまり必要ではないのですが、エラーメッセージの表示や調査、ログに残ったIPアドレスを集計して統計情報を作成したり、アクセス元の詐称を防止するなど管理上の用途に利用されます。これはエラーなどの際、IPアドレスを直接表示するよりホスト名で表示した方が分かりやすいから、ということになります。
※ DNS 正引き
→逆に、ホスト名からIPアドレスを調べること、です。
ホスト名からは常に対応するIPアドレスを割り出すことができますが、IPアドレスには必ずしもホスト名を割り当てる必要はなくその場合、逆引きが失敗すると
いうこともあるため正引き設定についてもこなっておく必要があるのです。
②SPFの設定
SPFというのは、メールの送信元アドレスの偽装を防止することです。つまり、"@example.com"のメールは、正真正銘"xxx.xxx.xxx.xxx"のIPアドレスから送信されています!という証明を、所有者がサーバのDNS設定でおこないます。
DNSの設定は、以下のようなかたちです。
③ メール送信制限解除申請
①のDNS逆引き設定申請と同様に、AWSサイトページのフォームから申請をおこないます。
すると、数日後には下記のような形でAWSよりメールが届き、申請完了となります。
という訳で上記で紹介した3点を実施すれば、EC2インスタンスからのメールも問題なく送付できると思います。
EC2からのメールを利用する際は是非、確認を!
次回からは「RDS入門編」ということで、RDSに関する設定や操作についても記述していきます!
お楽しみに!
------------------------------------------------------------------------------------------------------
ナレコムクラウドのFacebookに『いいね!』をクリックして頂くと
最新のお役立ちレシピが配信されます★
┏━━━━━━━━━━━━━┓
┃ナレコムクラウド Facebook┃
┗━━━━━━━━━━━━━┛
------------------------------------------------------------------------------------------------------
Amazon EC2~ELB設定編~
さて、今回は前回に引き続きEC2立ちあげ後の初期設定ということで、ELB(Elastic Load Balancing)の設定について記述します!
そもそもELBとは何なのかということですが・・・
複数のEC2インスタンス間で、アプリケーショントラフィックの負荷を自動的に分散してくれるものです。
ELBは、耐障害性に優れたアプリケーション運用を可能にし、流入するアプリケーショントラフィックに対応した負荷分散機能をシームレスに提供して、プール内(プログラムを置いておく場所)で不具合のあるインスタンスを検出し、不具合が修復されるまでこれらのインスタンスに対するトラフィックのルートの変更を設定したELB間で自動的におこないます。
もちろん単一のゾーン内だけで有効にすることも、アプリケーションのパフォーマンスをさらに安定させるために複数のゾーンにわたって有効にすることもできます。
それではここで、そんなELBの設定方法を紹介しておきましょう!
ELBの設定方法
1. AWS管理コンソールにログインしてサービスでEC2を選択、下記画面を開いて左メニューにある「ロードバランサー」を選択し、画面上部の「ロードバランサーの作成」をクリックします。
2. 下記画面で「ロードバランサー名」の項目に作成するロードバランサの名前を入力します。「リスナーの設定」の「追加」で適宜プロトコルの追加します。(デフォルトの設定でかまいません。)入力をしたら「次の手順:セキュリティグループの割り当て」をクリックします。
3. ELBにセキュリティグループを割り当てます。すでに作成済みのセキュリティグループを割り当てる場合は「既存のセキュリティグループ」をポイントし、割り当てたいセキュリティグループを選んでください。セキュリティグループを設定したら「次の手順:セキュリティ設定の構成」をクリックします。
4. そのまま「次の手順:ヘルスチェックの設定」をクリックします。
※「ステップ1:ロードバランサーの定義」でプロトコルにHTTPSやSSLを追加した場合、下記画面でSSL証明書の登録をします。
5. ELBは負荷分散されたそれぞれのEC2インスタンスについて、定期的に状態をチェックします。そのため、EC2インスタンスでは、pingポートで着信トラフィックを受け入れる必要があります。
ここでは、各インスタンスに実行中のHTTPサーバーがあり、ポート80で着信トラフィックを受け入れることとします。項目の詳細は以下の通りです。
ヘルスチェックの設定 | |
---|---|
Ping プロトコル | ヘルスチェックの際に利用するネットワークプロトコルの設定 |
Ping ポート | ヘルスチェックの際に使用するポートの番 |
Ping パス | ヘルスチェックの際に使用するファイルの場所 |
高度な詳細 | |
応答タイムアウト | ヘルスチェックからの応答を受信した場合の処理の待ち時間。設定した時間を過ぎた場合は処理が中断する |
ヘルスチェック間隔 | 実際にヘルスチェックをおこなう間隔 |
非正常のしきい値 | インスタンスが「異常な状態」という判断に至るまでに実施するヘルスチェックの回数 |
正常のしきい値 | インスタンスが「正常な状態」という判断に至るまでに実施するヘルスチェックの回数 |
設定はすべてデフォルトのまま「次の手順:EC2インスタンスの追加」をクリック。
6. 下記画面でどのEC2インスタンスにELBを設定するか選択をします。選択をしたら「次の手順:タグの追加」をクリックします。
7. リソース管理用のタグを任意で追加できます。特に必要がなければ、そのまま「確認と作成」をクリックします。
8. 設定内容を確認して、「作成」をクリックします。
7. これで、ELBの作成は完了です! 「閉じる」でウィンドウを閉じてください。
ELB運用における注意点
ELBを運用する上で注意して頂きたい点として、ELBは固定IPアドレスを設定することができず、意図せずにIPが変更される場合があります。
ELBにはドメインを設定することをお勧めします。
オンプレミス環境で負荷分散装置を用意しようとすると、とても高価になってしまいますがAWSであれば安価にそして、簡単にELBを利用することができます。
是非、負荷分散装置が必要なインフラ環境を構築する際はAWSのELBを利用しましょう!
3回にわたってAWSの基本サービスの初期設定について記述してきましたが、いかがでしたか?
記述したものは立ちあげ初期の基本的な内容になりますので、最低限の設定としておこなっていただければと思います。
次回は、「Amazon EC2編~EC2インスタンスからメールを送る場合には(送信制限解除について)~」と題して、立ち上げたAmazon EC2からメールを送信する場合の設定についてお話しますのでお楽しみに!
ナレコムではAWSに興味がある、AWSを仕事にしたいクラウドエンジニアを絶賛募集中です!興味がある方はこちらからお問い合わせください。
Amazon EC2の立ちあげ後に設定すること!パート②~EIP編~
今回は前回に引き続き、Amazon EC2立ち上げ後の設定編です!
Amazon EC2を立ち上げたらまず、Elastic IP(固定IP:以後EIP)を設定しましょう。
Amazon EC2のIPアドレスおよびドメインの仕様は以下のようになっています。
・Public DNS/IP → インスタンスの停止/起動で変更されます(再起動はOK)
・EIP → EIP自体を開放しない限り固定です
Public DNSはネット上の共有DNSになるため、Webページへのアクセス速度が向上する等のメリットがありますが、特定インスタンスだけの調子が悪くなってしまった等、どうしても変更が必要な場合には再度設定が必要になるため少し厄介です…
それに比べEIPは、EIP自体をインスタンスに対して開放しない限り、固定となるためpublic DNSのようなデメリットはありません。
ですから必ず、EIPもあわせて設定しておく必要があります。
それでは、早速【EIPの設定方法】を以下にご説明します!
1. AWSの管理画面にログインして「EC2」を選択し以下の画面を開き、左メニューにある「Elastic IPs」をクリックします。
2. 画面上部にある「Allocate New Address」をクリックします。
3. ポップアップの「Yes, Allocate」をクリックします。
4. 一覧に、作成したIPが表示されるので対象のIPを右クリックし、「Associate」を選択します。
5. EIPを設定する対象のインスタンスを選択し、「Yes, Associate」をクリックします。
■EIP運用における注意点
○デフォルトでは1リージョンあたり5EIPまで!!
デフォルトで設定できるEIPは、1リージョン当たり5EIPまでとなっておりますので、それ以上必要な場合は以下のURLから申請してください。
数日で設定可能EIPが増えますが、必要になる可能性がある場合は早めに申請しておいた方が安全です。
・EC2用
・VPC用
○実行中のインスタンスに紐付けましょう!
利用中の(実行中のインスタンスに紐づけている)EIPには利用料金がかかりませんが、インスタンスとの紐付けをおこなっていないEIPは課金の対象となりますので、不要なEIPはすぐに開放しましょう。
○EIPを別EC2に付け替えたときはSSH接続する側のホストでキーを再生成しましょう!
何らかの障害によりEIPを別インスタンスに付け替えた時にはSSH接続元ホストで以下を実行しましょう。
[crayon-6039776631d3b259697929/]
上記を行わないと、ホスト情報が違っていると以下のエラーで怒られます…
[crayon-6039776631d44503573749/]
○インスタンス間の通信にはpublic DNSを利用しましょう!
EIPを利用する場合でも同一AZ内ではPublic DNSを利用しましょう。
※EIPを指定しまうと、転送料が発生します。
このように、Amazon EC2の立ちあげ後にEIPを設定をすることはとても重要になります。
今は問題ないからと後回しにせず、Amazon EC2インスタンス立ちあげ後は必ずEIPの設定をおこないましょう!
引き続き、Amazon EC2立ちあげ後の初期設定ということで次回は、「Amaon EC2~ELB設定編~」と題して、ELBの設定についてお話したいと思いますのでお楽しみに!
Amazon EC2の立ちあげ後に設定すること!~パート①~
「Amazon EC2の立ち上げ後に設定すること!」をお話する前に、少しだけ新しいインスタンスをご紹介します!!
以前の記事で新たに追加されるAmazon EC2のインスタンスファミリーを紹介したかと思いますが、もうひとつ新しいインスタンスがあります。
それは、「ハイストレージインスタンス」というインスタンスです。
「ハイストレージインスタンス」では、最大秒間2.4GBのI/O性能を出せる24個のハードディスクドライブで構成された48TBのインスタンスストレージを提供します。
インスタンスごとに大容量のダイレクトアタッチトストレージを持ち、AWSのログ処理やデータウェアハウジングのようなデータ集中型のアプリケーション、大量のデータセットの処理と分析するための並列ファイルシステムに最適なインスタンスとなっています。
こちらは、以前の記事で紹介した新しいインスタンスと同じく、現在は米国東部リージョンのみ利用可能ですが、今後数か月の間に他のAWSリージョンでも利用できる予定です。
ハイストレージインスタンスは、最も要求が厳しいアプリケーションの性能と効率性を高めるように設計され、ペタバイト級のデータウェアハウジングサービスになるので、大容量データ処理をおこなう方には注目のインスタンスだと思います。
さて、ここからは本題の「Amazon EC2の立ちあげ後に設定すること!」という設定について、ご説明します。
※なお、下記の設定は以前のレシピ「Amazon EC2インスタンスにPuTTYで接続!」で紹介した方法で対象のインスタンスにログインして設定をおこなってください。
よく使うものを入れよう!
Amazon Linuxはできるだけ軽量かつ、シンプルに設計されており不必要なアプリケーションや、サービスはまったく入っていないため安全性は高いのですが同時に、よく使用するものも入っていなくて戸惑うこともあります。
その為、必要なパッケージは独自にインストールする必要があるので下記のように、いくつかインストールすることをオススメします。
[crayon-60397766347bc944063956/]
→gcc/gcc-c++ は、OSで使用するソフトウェアを「rpm」などのインストールコマンドでインストールせず、ソースコードをコンパイルしてインストールするためのコンパイラになります。
コマンド投入( yum -y install gcc gcc-c++ make )
タイムゾーンの設定をしよう!
EC2は、立ち上げた時点ではEDT(Eastern Daylight Saving Time: 米国東部夏時間)となっているので変更します。
[crayon-60397766347c3326267608/]
多くのミドルウェアはOSのタイムゾーンを利用しているのでそのままもしくは、再起動をすることで反映されますが一部PHPのようにタイムゾーンを設定ファイルに書き込む必要があります。
PHPについては下記の様に設定します。(というか、設定がないとエラーが沢山でるので必ず設定しましょう。)
[crayon-60397766347c4878360995/]
コマンド投入( /etc/rc.d/init.d/httpd restart )
いかがでしたでしょうか?
「Amazon EC2の立ちあげ後に設定すること!」の基本事項は以上です。
他にも様々パッケージはありますので、必要に応じて、使用するインスタンスにパッケージをインストールしましょう!
次回も引き続き、「Amazon EC2の立ちあげ後に設定すること!パート②~EIP編~」と題して、Amazon EC2立ちあげ後に設定する必要のあるEIPについて記述していきますのでお楽しみに!
Amazon EC2編~EC2インスタンスにRemote Desktopで接続してみよう!(Windows Server2012編)~
今までの記事でEC2に関する基本的な設定とSSH接続については、お分かりいただけたかと思います。
今回はリモートデスクトップでの接続ということですが、リモートデスクトップはWindowsのターミナルサービスで対象システムに対して、遠隔地からでも通常OSとしてリモート操作することができる機能です。
現在、最新のWindows OSとして新しく登場した「Windows 8」や「Windows Server2012」に合わせて、リモートデスクトップ機能も、機能の追加や強化がされています。クイックスタートが可能となったり、通信効率が向上したりとOSとともにリモートデスクトップも進化してさらに便利になっています。
また、AWSの場合Windowsに関しても簡単にインスタンスを立ちあげることができるので接続も簡単です。
というわけで実際にリモートデスクトップの接続をおこなう前に、まず最新OSの「Windows Server2012」を「Amazon EC2インスタンス」で起動してみましょう!
1. AWS管理コンソールにログインしてサービスで「EC2」を選択し、下記画面を開き「Launch Instance」をクリックします。
2. 下記画面で「Quick Launch Wizard」をクリック、画面右側のOS選択肢の中から「Windows Server2012」を任意で選択し、「Continue」をクリックします。
3. 「Edit details」をクリックします。
4. 任意で以下、「Instance Details」を含めた3つの項目を設定して保存し、「Save details」をクリックします。
・Instance Details
・Security Settings
・Storage Device Configuration
5. 下記画面に戻り、「Launch」をクリックします。
※また、「Launch」をクリックした後、最後の画面で表示される「Download shortcut file」をクリックしてファイルをダウンロードしておきます。
これで、「Amazon EC2インスタンス」での「Windows Server2012」の立ちあげは完了です!
ではいよいよ実際に、起動したWindowsにリモートデスクトップで接続してみましょう!
このまま先ほどのWindowsの起動の手順の流れで、続けて説明します。
6. 最後の画面を閉じて、先ほどダウンロードしたファイルをクリックします。
すると以下のリモートデスクトップ接続画面が開かれるので、ユーザ名・パスワードを入力して「OK」をクリックします。
7. 以下のデスクトップ画面が表示されれば、接続は成功です!
リモートデスクトップは、遠隔地からでもリモートコントロールがおこなえるためとても便利な機能ではありますが、セキュリティの面ではデメリットもあるということを認識しておきましょう。
なぜかと言うと、ルーター設定画面にアクセスすることも可能ですし、他のパソコンの共有フォルダにアクセスすることも出来てしまいます。
ですので、リモートデスクトップの接続ポートはデフォルトのままではなく必ず、変更するようにしてください。
また、接続ポートの番号もパスワードをきちんと管理できる方にのみ教えるようにした方がよいと思います。
デメリットもしっかり把握して、リモートデスクトップ機能を有効活用しましょう!
今回は、3回にわたって起動したEC2インスタンスへの接続について記述しましたが、いかがでしたでしょうか?
次回からは、EC2立ちあげ後におこなうべき設定についてお話していきたいと思います。
まず最初は、「Amazon EC2の立ちあげ後に設定すること!~パート①~」と題してお話しますので、お楽しみに!
Amazon EC2編~EC2インスタンスにTera Termで接続するには?~
Tera Termも、前回お話したPuTTYと同じSSHクライアント接続ツールになります。
Windows専用国産クライアントツールということで需要が増加しており、PuTTYと同様、次々と最新版がリリースされているのでこちらもさらなる改善が期待されています。
では、本題に入りましょう。
今回も前回のPuTTYと同様に、このTera Term を使用したEC2インスタンスへの接続方法に関するお話です。
また今回も、秘密鍵とパスフレーズを使用しますが、前回のレシピ【Amazon EC2編~EC2インスタンスにPuTTYで接続してみよう!】で接続の際に作成したものをそのまま利用できます。
※なお、あらかじめ下記の参考ページ等をご覧いただき、【tera Term】のインストールをしておいてください。
それではさっそく、「【Tera Term】でEC2に接続するには?」をご説明しましょう!
1. まずは、【Tera Term】を起動し、「ホスト」の項目に接続対象インスタンスのIPアドレスを入力、「OK」をクリックします。
2. 「SSH認証」のウィンドウで「ユーザ名」の項目に「ec2-user」(前回のPuTTYで接続の際に、設定した場合は、パスフレーズも)を入力、「RSA/DSA鍵を使う」を選択して同じく、前回のレシピ「Amazon EC2編~EC2インスタンスにPuTTYで接続してみよう!」接続の際に作成した秘密鍵を選択して「OK」をクリックします。
3. 下記画面が表示されれば、接続成功です。
2回にわたってEC2に接続する際に使用するSSH接続クライアントツールについて紹介してきましたが、いかがでしたでしょうか?
どちらも簡単にEC2インスタンスへの接続ができ、各ツールとも接続を行なう上で非常に便利なツールとなっています。
是非、どちらも操作していただき、お好みのツールをご活用ください!
次回は、「Amazon EC2編~EC2インスタンスにRemote Desktopで接続してみよう!(Windows Server2012編)~」と題して、起動したEC2インスタンスにWindowsのリモートデスクトップで接続してみたいと思いますのでお楽しみに!
Amazon EC2編~EC2インスタンスにPuTTYで接続してみよう!~
Linuxインスタンスに接続する際のツールとしては、これから紹介するPuTTYが有名かと思います。
PuTTYというのは、Windows OSで稼動するSSH接続クライアントツールで、フリーのソフトウェアになります。また、ファイル転送機能や公開鍵認証機能など、UNIX版SSHクライアントの機能も多数サポートしているものです。
最近では約4年ぶりにはなりますが、PuTTYの最新版がリリースされました。
この最新版では高速化も特徴となり、インスタンスへの接続の際に使用するSSH鍵の交換速度が前バージョンの3倍となったほか、接続効率も上がり、またWindows7でのサポート面も強化されました。SSH接続クライアントツールは、新しいものもいくつか登場はしていますが、PuTTYもまだまだ改善がおこなわれ最新版が次々と登場するのではないでしょうか。
さて、ここからが本題になります。
今回は、以前のレシピ『Amazon EC2インスタンスを立ちあげてみよう!~Amazon Linux編~』で立ち上げたEC2インスタンスへ、実際にPuTTYを利用して接続をしてみましょう!
※あらかじめ、以下のサイト等を参考にPuTTYをインストールしておいてください。
■参考サイト
・PUTTYのインストール①
・PuTTYのインストール②
では、PuTTYを使ったEC2への接続を実際におこなってみます。
PuTTYからEC2インスタンスに接続するには、まず接続するための鍵を作成しないといけません。
その際、インストールしていただいたPuTTYと共にダウンロードされたPuTTYgenという鍵生成ツールを利用します。
前回のレシピ『Amazon EC2インスタンスを立ちあげてみよう!~Amazon Linux編~』でEC2を立ち上げていただいたかと思いますが、その中でKeyを作成した際にダウンロードしていただいたpemファイルも今回使用しますので、あらかじめ確認しておいてください。
1. まずPuTTYgenを起動して、メニューバーにある「変換」の「鍵のインポート」をクリック、前回ダウンロードしていただいたpemファイルを選択します。
2. 「秘密鍵の保存」をクリックします。
※任意で、鍵のパスフレーズ(EC2インスタンスに接続する際のパスワード)を設定しましょう。
【鍵のパスフレーズ】に、パスワード(任意)を入力
【鍵のパスフレーズ】に入力したパスワードを【パスワードの確認】へ入力し・・・
【秘密鍵の保存(S)】をクリック
任意の名前で.ppkファイルを作成する。
これで鍵の作成は完了です。
この鍵を使用し、インスタンスに接続してみます。
1. PuTTYを起動してまず、ウィンドウ左側の「カテゴリ」にある「セッション」を選択、「接続先の指定」の「ホスト名」の項目に接続対象のインスタンスのIPアドレスを入力します。
2. 次に、同じく「カテゴリ」から「SSH」の項目の「認証」を選択します。
「認証パラメータ」の「認証のためのプライベートキーファイル」の項目の「参照」をクリックして、先ほどPuTTYgenで作成した秘密鍵ファイルを選択します。
3. 最初の画面に戻り、「セッションの読込、保存、削除」の「セッション一覧の項目」に、対象サーバに対して分かりやすい名称を入力し、「保存」をクリックします。
これで今回接続するサーバの情報が保存されました。
4. 接続対象サーバ情報の保存が終了したら「セッション一覧」から対象サーバを選択し、ウィンドウ下部の「開く」をクリックします。
5. 表示されたウィンドウで、「login as:」の項目に「ec2-user」(鍵のパスフレーズを設定していれば「Passphrase for key "imported-openssh-key":」の項目にパスフレーズ)を入力し、Enterキーを押します。
下記画面のように表示されれば、接続は成功です。
いかがでしたでしょうか?
このようにPuTTYを使用すれば、いつでも簡単にWindowsからLinuxインスタンスに接続することが可能です!
次回も引き続き、『Amazon EC2編~EC2インスタンスにTera Termで接続するには?~』と題してSSH接続ツールを使ったEC2インスタンスへの接続についてお話していきたいと思いますので、お楽しみに!
ナレコムではAWSに興味がある、AWSを仕事にしたいクラウドエンジニアを絶賛募集中です!興味がある方はこちらからお問い合わせください。
Amazon EC2編~基本セキュリティについて~
システムを運用していくうえで「セキュリティ」は、どうしても懸念事項としてあることでしょう。
ニュースなどでも、遠隔操作によるPCの不正利用などでますますセキュリティ面が問題になっています。
最近ではクラウドでもデータセキュリティに対する関心が高まり、クラウド環境でのデータを暗号化する製品や、暗号化を自動で実行する製品なども登場し、それだけセキュリティが重要視されているということが分かります。
そこで、今回はAWSを利用するにあたってのセキュリティの基本設定についてお話したいと思います。
クラウド環境ということで「情報流出はないのだろうか?」とか、「ウィルスはどうなのだろう?」など、半数以上の人がセキュリティ面の問題でクラウドサービスの採用を思いとどまっているかと思います。
でも!!
AWSはそんな心配もなく、安心してご利用いただけます!
AWSにはセキュリティグループ(仮想ファイアウォール)やVPC(仮想プライベートネットワーク)と言った様々なセキュリティ機能が用意されています。
ですので、Amazon EC2を使うにあたりセキュリティについて以下の様な事を行うことで簡単にセキュリティを高めることが可能になります。
そもそも、セキュリティグループとは何なのか。
セキュリティグループとは
EC2インスタンスに適用可能なAWS標準のファイアウォール機能です。
セキュリティグループは、EC2インスタンスへのアクセスを許可し、トラフィックを制御するファイアウォールとして動作します。
また、1つのセキュリティグループを複数のEC2インスタンスに割り当てることもできます。
各セキュリティグループでは、EC2インスタンスへのアクセスを許可するトラフィック規定のルールを設定し、ここで設定・許可しないアクセストラフィックは全て拒否されます。
なお、セキュリティグループのルール設定はいつでも変更可能です。
例えば、新しいルールを設定した場合、すべての既存EC2インスタンスとこれから立ちあげるEC2インスタンスに対しても自動的に新しいルールの設定が適用されます。
ただ、セキュリティグループを使用するうえで以下、いくつかの注意事項もあります。
注意点
①未設定の場合、基本的に外部からの通信は全て遮断され、許可する通信のみを設定、許可します。(ホワイトリスト方式)
②VPCで利用する以外はアウトバウンドに関して、セキュリティ設定ができない(VPC内でもデフォルトは全て許可されています)
③セキュリティグループにはログがないため、セキュリティグループまわりで問題があった場合、切り分けができない。
また、AWSアカウントには自動的にデフォルトセキュリティグループが適用されます。
EC2インスタンス起動時にセキュリティグループを指定しなかった場合、インスタンスは自動的にこのデフォルトセキュリティグループで起動されてしまうので必ず、設定は確認するようにしましょう。
それでは早速、セキュリティグループの設定を行なってみましょう。
設定方法
1. AWSの管理画面にログインしてEC2インスタンス一覧の画面を開き、左メニューにある「Security Groups」をクリックします。
2. 一覧から、該当のセキュリティグループを選択し「Inbound」のタブをクリックします。
3. プルダウンメニューからサービスを選び、「Add Rule」をクリックして加えます。最後に「Apply Rule Changes」をクリックして反映させます。
以上がセキュリティグループの設定方法となります。
セキュリティグループを利用してセキュリティを高めるには以下の様な方法が効果的です。
1. セキュリティグループに対して不要なポートは開放しない
2. TCP/IPの主要なプロトコルはウェルノウンポートを利用しない
3. SSHやRDPなどサーバ管理を行うサービスは指定IP以外からのアクセスを許可しない
特に2、3を行うことでEC2側のセキュリティログの不正アクセスが非常に少なくなり、精神衛生上も気持のち良いものです。
1台、2台程度であれば問題ないですが、多数のサーバを管理する場合にはきちんと上記運用ルールを反映させることが重要で、忘れてしまうと思わぬ障害時にログイン出来ない!と言った事象を引き起こすことにもなりかねないので注意してください。
余談ではありますが、VPC以外でEC2を立ちあげつつ、アウトバウンドのセキュリティも高めたいという場合はiptables等によりアウトバウンドのトラフィックについて設定することも可能です。
いかがでしたでしょうか?
上記のように、いくつかの点を注意するだけで簡単にセキュリティを高めることができます。
サーバの立ちあげは、セキュリティ面を十分考慮しておこなうことがとても重要になってきます。
次回は、『Amazon EC2編~EC2インスタンスにPuTTYで接続してみよう!~』と題して、これまで立ちあげ・設定をおこなってきたEC2インスタンスにSSH接続ツールを使って接続してみます。
お楽しみに!
ナレコムではAWSに興味がある、AWSを仕事にしたいクラウドエンジニアを絶賛募集中です!興味がある方はこちらからお問い合わせください。