Amazon EC2編~Amazon Linuxでメンテナンス用サーバを作ってみよう!~

1.まずはEC2を2台用意します。メンテナンス用の踏み台サーバと本番サーバを作成。

今回は以下の条件で作成してください。

【インスタンス名】

踏み台サーバは「fumidai」という名称で、本番サーバは「honban」で作成

【セキュリティグループ名】

踏み台サーバは「fumidai」という名称で、本番サーバは「honban」で作成

【Key Pair名】

踏み台サーバは「fumidai」という名称で、本番サーバは「honban」で作成

【VPC】

今回はメンテナンス用の目的で作成しますので、踏み台・本番サーバを同じVPC内に作成

インスタンスの作成方法は、下記を参考にしてください。

/archives/20

2.次に踏み台サーバのホスト名を変更します。ホスト名を変更する事により、どのサーバ(honbanまたはfumidai)にログインしているか一目で分かるようにします。

ホスト名の変更には、hostsファイルとnetworkファイルを書き換える必要があります。

踏み台サーバにsshでログインし「vi /etc/hosts」と入力。

/etc/hostsを下記のように書き換えます。

「127.0.0.1 fumidai localhost.localdomain localhost」

次に「 vi /etc/sysconfig/network 」と入力。

/etc/sysconfig/networkの下記部分を書き換えます。

「HOSTNAME=localhost.localdomain」を 「HOSTNAME=fumidai」へ変更

上記の設定変更を反映させるため、踏み台サーバをリブートさせます。

マネージメントコンソールのEC2画面に行き、該当インスタンスを選択。

マネージメントコンソールのEC2画面に行き、該当インスタンスを選択。

右クリックし「Reboot」を選択。

reboot

SSHログインします。すると「[ec2-user@ローカルip]$」だったのが、「[ec2-user@fumidai ~]$」という表記に変わっていると思います。

3. 「2. 次に踏み台サーバのホスト名を変更・・・」で行なった事を、本番サーバでも行ないます。

セキュリティグループ 設定変更

4.セキュリティグループを変更します。

踏み台サーバへのアクセスは限られた拠点からしかアクセスできないようにし、

本番サーバへは踏み台サーバ経由でしか接続できないように設定します。

踏み台サーバのセキュリティグループを選択し、Inboundタブをクリック。

「Create a new rule :」で「SSH」を選択。

「Source:」に自分のIP(自拠点のIP)を設定。

「+Add Rule」をクリック。

「Apply Rule Changes」を選択。

security group source ip
本番サーバのセキュリティグループを選択し、Inboundタブをクリック。

「Create a new rule :」で「SSH」を選択。

「Source:」に踏み台サーバのセキュリティグループのGroup IDを設定。

「+Add Rule」をクリック。

「Apply Rule Changes」を選択。

security group group id

pemファイルの設置

踏み台サーバ(fumidai)から本番サーバ(honban)へSSHログイン出来るよう設定を行います。踏み台サーバに本番サーバのpemファイルを設置する事により、踏み台サーバから本番サーバへログイン可能にします。

5.まず本番サーバのpemファイル(今回はhonban.pemというファイルで作成)を、踏み台サーバ上にアップロードしましょう。

インスタンス作成時にダウンロードした「honban.pem」を「honban.txt」へ、リネーム。

「honban.txt」を開き、ファイルの中身を全てコピーします。

「fumidai」サーバにsshログインし、「cd /任意のディレクトリ」で移動します。

「vi honban.pem」と入力。

Cntrl+Insertキーを押下し、「honban.txt」でコピーした内容を「honban.pem」へ書き込み、保存。

「chmod 600 honban.pem」でhonban.pemファイルのパーミッションを変更します。

(honban.pemのパーミッションを変更しないと、ssh接続した際エラーになります。)

6.次にconfigファイルを作成します。

「cd /root/.ssh」で移動します。

移動した先で「vi config」と入力。configファイルに下記内容を記述します。

Host ホスト名(今回の場合はhonban)

Hostname 本番サーバのIPアドレス(パブリック・プライベートどちらでも可)

User ec2-user

IdentityFile /pemファイルまでのパス/pemファイル名

上記設定を行う事により、簡単にssh接続する事が出来るようになります。

踏み台サーバから本番サーバへ接続確認

さて、それでは踏み台サーバから本番サーバへ接続してみましょう!

7.「ssh ec2-user@honban」でssh接続を行ないます。

「・・・Are you sure you want to continue connecting (yes/no)?」というMSGが出力されると思いますので、「yes」を応答します。

※上記MSGは、ssh接続で初回時に出力されるMSGです。

8. 「[ec2-user@honban~]$」と表示されれば、成功です。

※もしここでPermission denied (publickey).と表示された場合は、本番サーバ用の

pemファイルのパーミッションを設定し間違えている可能がありますので、pemファイルのパーミッションを確認してみましょう。

いかがでしたでしょうか。

次回はSNSのunsubscribeリンクの無効化について、ご紹介したいと思います!

お楽しみに!

この記事を書いた人

aws-recipe-user