[75]さくらVPSに挑戦、Webページ

(引き続き、http://www.さくらvps.com/8.htmlを参考に)

WEBページの設定

ここではWEBページ設定の一連の流れを実施します。

現在、表示されているページを確認しよう

さくらVPSの申込み時に届いた仮登録完了のお知らせのメールの中に記載してあるIPアドレスにアクセスしてみましょう。何もしていない状態ではApacheのページが表示されています。。と。

160.16.51.174

なので、やってみると、、、

Capture_2016_07_24_17_15_42_82

OK! デフォルト画面が出てます。

FTP接続しよう

SSHで接続できるFTPソフトでホームページをアップロードしてみましょう。SSHで接続できるFTPは代表的なものとしてFileZillaやWinSCPがあります。 ここではFileZillaを使って解説します。FileZillaでさくらVPSのサイト情報を登録します。サイトマネージャーでホストの欄にIPアドレスを入力し、ポートの欄に自身で設定したポート番号を入力します。 またProtocolの欄はSFTPを選択してください。最後にログオンの種類を通常を選択し、任意のユーザー名、パスワードを入力すれば接続可能です。

やってみる。。。

Capture_2016_07_24_18_06_45_236 Capture_2016_07_24_18_12_45_668

つながったらしい。。。

WEBページをアップしよう

さくらVPSのホームページのデフォルトの階層は var/www/html になります。FTPソフトで接続したら、。Apacheのページからアップロードしたページに切り替わります。

やってみようっと。。。。

サンプルのHTMLファイルを作成します。

Capture_2016_07_24_18_52_13_877

これをFileZillaを使って、var/www/html の場所にホームページをアップロードしてみましょう!あたり前だけど、rootで入らないと転送できなかった。。。そうだね!

Capture_2016_07_24_19_07_28_152

転送OK!、はたして表示されるか???

Capture_2016_07_24_19_09_10_230

おおお、行きましたね!!!!!!表示成功!

[74]さくらVPSに挑戦、Webサーバ設定

(引き続き、http://www.さくらvps.com/7.htmlを参考。実に丁寧な説明だし。。)

WEBサーバーの設定

ここではWEBサーバー設定の一連の流れをご紹介します。引き続きTeraTermで作業します。。。と。

Apacheをインストールしよう

ここからはroot権限が必要な作業が多いため、root以外のユーザーでTeraTermにログインしている場合には、root権限に切り替える必要があります。
まずはsu – コマンドでrootユーザーに切り替えて作業します。TeraTermのコンソール画面に su – と入力し、Enterキーを押します。

次にコンソール画面に yum -y install httpd と入力し、Enterキーを押します。メッセージが流れ、Complete!という文字が表示されていれば、Apacheのインストールが完了です。

Capture_2016_07_24_15_55_03_45 Capture_2016_07_24_15_55_55_51

OK?かな。

chkconfigの設定をしよう

さくらVPSが常に自動で起動するような設定をします。さくらVPSのコンソール画面に chkconfig httpd on と入力し、Enterキーを押します。

Capture_2016_07_24_15_57_59_735

WEBサーバーのセキュリティを高めよう

さくらVPSの設定ファイルを修正し、WEBサーバーのセキュリティを高めます。まずは設定ファイルのバックアップを取ります。 コンソール画面に cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.org と入力し、Enterキーを押します。これでバックアップが完了です。

Capture_2016_07_24_16_00_53_713

次に設定ファイル自体を修正していきます。 コンソール画面に vim /etc/httpd/conf/httpd.conf と入力し、Enterキーを押します。

まずは ServerTokens OS という記述を変更します。 コンソール画面に /ServerTokens と入力し、Enterキーを押し該当の箇所を検索してください。 ServerTokens OS の OS の文字を Prod と変更します。

Capture_2016_07_24_16_03_35_542

次に ServerSignature On という記述を変更します。コンソール画面に /ServerSignature と入力し、Enterキーを押し該当の箇所を検索してください。ServerSignature On の On の文字を Off に変更します。

Capture_2016_07_24_16_04_51_264

さらに Options Indexes FollowSymLinks という記述を変更します。コンソール画面に /Options Indexes FollowSymLinks と入力し、Enterキーを押し該当の箇所を検索してください。Options Indexes FollowSymLinks の Indexes の文字の前に – を追加します。(効果あんのかな??)

Capture_2016_07_24_16_08_19_184

これまでの一連の変更が無事に保存されているかを service httpd configtest と入力し、確認します。

Capture_2016_07_24_16_09_57_530

Syntax OK と表示されれば問題ありません。 最後に service httpd start と入力し、設定をスタートさせます。以上で、WEBサーバーの一連の設定が終了です。。。。と。

よしOK!

[73]さくらVPSに挑戦、SSH等設定

SSHとファイアーウォールの設定

次にさくらVPSのセキュリティを高めるため、SSHのポート設定とファイアーウォールの設定をします。。。と。

SSHのポート変更

引き続きTera Termでの作業。ここでは、SSHのポートを変更するため、Tera Termに sudo vi /etc/ssh/sshd_config と入力し、Enterキーを押します。。。と。

Capture_2016_07_24_15_11_35_827

上から12行目の#Port 22と記載されている箇所の先頭の#をxキーで削除し、22の番号を任意のポート番号に変更します。ここではポート番号61203に設定しています。(Webのとおりマネさせておらおう!ポート番号は61203である必要はありません。1024~65535の間でポート番号を設定してください。)変更後、Escキーを押してから、:wqを押して設定を保存します。

Capture_2016_07_24_15_16_06_491

最後にsshを再起動し、設定を反映させます。コンソール画面に sudo /etc/init.d/sshd restart と入力し、Enterキーを押します。

Capture_2016_07_24_15_18_43_454 Capture_2016_07_24_15_19_03_378

OK!!!

ファイアーウォールの設定

次にファイアーウォールの設定を行ないます。Tera Termに sudo vi /etc/sysconfig/iptablesと入力します。(無いので、新ファイルを作成するようです。)

で、下記をコピペすると。

*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0]
-A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp --dport 5353 -d 224.0.0.251 -j ACCEPT
-A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# SSH, HTTP, FTP1, FTP2, MySQL
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 61203 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 20 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited
COMMIT

最後に sudo /etc/rc.d/init.d/iptables restart と入力し、Enterキーを押します。これでファイアーウォールの設定作業は終了。

Capture_2016_07_24_15_47_59_139

一応終わった??かな?

TeraTermにポート22でログインしていましたが、今後は22では接続できなくなります。今後は、任意のポート番号(ここでは61203)で接続することになります。

 

 

 

 

[72]さくらVPSに挑戦、鍵認証

ここからは、鍵認証の設定。

http://www.さくらvps.com/5.html

を参考にします。

さくらVPSは基本パスワードで認証します。パスワード認証だとセキュリティが弱いので、鍵認証の設定を追加しVPSのセキュリティを高めます。。。と。AWSでもやったね。でも鍵を自分で作るみたい。。

ここからはコンソール画面ではなく、パソコン上での作業となります、、、と。公開鍵と秘密鍵の生成には専用の無料ソフトを利用します。ここでは「PuTTY ごった煮版」というソフトを使って説明します。

Capture_2016_07_24_12_06_24_418
PuTTY ごった煮のインストール後、Windowsの スタート → プログラム → PuTTY → PuTTYgenでソフトを立ち上げ、公開/秘密鍵ペアの生成ボタンを押します。

Capture_2016_07_24_12_10_19_100

鍵が生成されたら、自分のわかりやすい説明を付けておきましょう!

「sakura-vps-20160724」にしました。

次に鍵のパスフレーズを入力します。任意のパスワードを入力してください。パスワード入力後、生成された公開鍵と秘密鍵を保存しましょう。秘密鍵のファイル名は拡張子を.ppk、公開鍵は.pubとしておくと良いでしょう。

 

鍵認証用のフォルダを追加

次にTeraTermに戻り、コンソールを使って作業します。ここではrootユーザーではなく、前回作成した sakuravps というユーザーでTeraTermにログインします。

TeraTermにログインしたら、まずはVPSに鍵認証用のフォルダを追加します。ここではホームディレクトリの下に「ssh」というフォルダを作ります。
まずはTeraTermのコンソール画面に cd $HOME と入力し、ルートディレクトリに移動します。次に mkdir .ssh と入力し、Enterキーを押します。これでsshというフォルダが作られます。次に「ssh」というフォルダのパーミッションを「700」に変更します。パーミッションを変更するには「chmod」というコマンドを入力します。コンソール画面に chmod 700 .ssh と入力します。。。。と。

Capture_2016_07_24_13_11_30_813

 

さくらVPSへ公開鍵を登録

次に作成した公開鍵をさくらVPSに登録します。公開鍵の登録にはauthorized_keysコマンドを使います。コンソールに vi .ssh/authorized_keys と入力します。

Capture_2016_07_24_13_13_10_899 Capture_2016_07_24_13_13_58_55

最後にセキュリティの都合上、sshフォルダのパーミッションを600に変更します。コンソール画面に chmod 600 .ssh/authorized_keys と入力し、Enterキーを押します。

Capture_2016_07_24_13_17_33_605

これで一連の公開鍵の設定は終了です。

[71]さくらVPSに挑戦、基本設定

では、さくらのVPSに挑戦してみようと。レンタルサーバではPHP+MySQL自然体で使えたけど、JAVA環境ないし、サーバ管理そのものを勉強してみようかと。

さくらのマニュアルの沿ってやってみます。

http://www.sakura-vps.net/

Capture_2016_07_24_10_43_57_627

では、まずは申込み!

Capture_2016_07_24_10_45_31_725

商品は一番安いやつを。2週間なので。まずは!

Capture_2016_07_24_10_47_32_357

VPS仮想共用サーバを。ベアメタルという物理専用サーバでなく。

Capture_2016_07_24_10_51_10_204

では、

Capture_2016_07_24_10_58_37_258 Capture_2016_07_24_10_58_51_680 Capture_2016_07_24_10_59_06_538

申し込んじゃった!!!

Capture_2016_07_24_11_00_07_817

仮登録メールもきました!

Capture_2016_07_24_11_02_34_246

お試し期間      :2016年08月07日 まで!!!

早速アクセス、   URL      :https://secure.sakura.ad.jp/vps/

名前も、「さくらVPS_20160724」に修正。

Capture_2016_07_24_11_09_47_646

サーバを起動してみる!

起動したので、ここからは、

http://www.さくらvps.com/4.html

を参考に設定をしてみます!!(お世話になります!!)

基本設定

TeraTermというVPSリモートコンソールを使って、アプリケーションの更新とVPSの日本語化をします。1**.16.51.1**へ

Capture_2016_07_24_11_28_38_360

Capture_2016_07_24_11_31_21_653

で接続。つながりました!

Capture_2016_07_24_11_35_03_926

「yum update」!

次にコンソールにyum updateと入力し、Enterキーを押しましょう。
yumというのは、VPSにあるアプリケーションを管理するコマンドになります。 yum updateをすることで、さくらVPSサーバーに入っているアプリケーションを全て最新の状態にしてくれます。。。と。

Capture_2016_07_24_11_37_28_477

「さくらVPSの日本語化」

コンソールに vim /etc/sysconfig/i18n と入力(下図赤線枠参照)し、Enterキーを押しましょう。言語ファイルの設定を日本語にします。

LANG=”C”の C の箇所を ja_JP.UTF-8 に変更します。

Capture_2016_07_24_11_41_31_471

「作業用ユーザーの作成・設定」

VPSを設定する際には、rootユーザーではなく、作業用のユーザーを作成して利用していくことが一般的です。新しいユーザーを追加するには「useradd」というコマンドを使います。ここでは仮に「sakuravps」という新規ユーザーを追加します。 コンソールに useradd sakuravps と入力し、Enterキーを押します。

Capture_2016_07_24_11_44_12_654

次にパスワードを設定します。パスワードの設定は「passwd」というコマンドを使います。ここでは「sakuravps」というユーザーのパスワードを設定します。コンソールに passwd sakuravps と入力し、Enterキーを押します。

Capture_2016_07_24_11_48_35_479

最後に「sakuravps」というユーザーに全ての権限を持たせる設定をします。 全ての権限を持たせるには「usermod -G wheel」というコマンドを使います。ここでは「sakuravps」というユーザーに全ての権限を持たせます。コンソールに usermod -G wheel sakuravps と入力し、Enterキーを押します。

Capture_2016_07_24_11_50_59_469

次にvisudoと入力します。これはsudoというコマンドを利用できるようにするためです。「visudo」というコマンドを入力し、Enterキーを押します。

「/wheel」で検索ができます、、と。へええ。

コンソール画面が切り替わるので、# %wheel ALL=(ALL) ALL という箇所を探し、カーソルを移動。 xキーを押して#の文字を削除し「%wheel」が行の先頭にくるようにします。

Capture_2016_07_24_11_55_38_421

最後にsuコマンドをグループ内のユーザーだけが使用できるように設定します。コンソール画面に vim /etc/pam.d/su と入力し、Enterキーを押します。

画面が切り替わりますので、#auth required pam_wheel.so use_uid と記載されている箇所の#をxキーで削除し、:wq と入力し、Enterキーを押します。。。と。

Capture_2016_07_24_11_59_27_39

次は、鍵認証か、、、、。

[70]EC2 was attacked? dengerous, then Terminate EC2

Amazonから、強烈なパケットを送ったか、アタックに合ったようだとメール!!

Capture_2016_07_17_22_17_51_187

こんなんでお金とられたり訴訟はごめんなので、どうせ勉強のためだけだし、やはり動きのおかしかった?(翌日になったらURLにアクセスもできなくなっていた)のでこのinstanceはStop and Terminated((delete)することにしました。

操作は簡単だが、今後のほかのinstanceも心配だわ。。。。

Capture_2016_07_17_22_20_10_45

ちなみに請求料金は????

 

Capture_2016_07_17_22_22_56_227

うーん知らない間に、EC2の無料制限枠をもう超えている。。

おかしいな。やはりアタックを受けた感じ。

ちょっと危険なので残念だけEC2サービスはすべて

stop and Terminate することとします!

現在のところ$2.67のようなので。。。

Capture_2016_07_17_22_25_43_643

バイなら!!!Amazon!!

(一応記録とっとこ。。)

全件EC2の削除。

で、最終画面。

Capture_2016_07_17_22_29_57_20

終わった!!!

ええい、もうRDS(DB)も削除しよう!!

S3も削除しました!

Capture_2016_07_17_22_37_43_457

これで、EC2、RDS、S3のすべてサービスは削除したはず。。。

S3のバケットというものも削除した!

Capture_2016_07_17_22_39_34_314

うーーん、なんかセキュリティグループが1つとスナップショット1つが消えないけど。。instanceがなければ課金されないようだから、大丈夫かな???要注視!!!

Capture_2016_07_17_22_52_40_677

完!Amazon

 

[68]AWS Webアプリの動作確認 -未完成

Tomcat8が起動したら、動作確認をします。

コマンドは、

http://ec2-52-197-160-7.ap-northeast-1.compute.amazonaws.com:8080/WebAPSample/top.jsp

すると、、お、、何か出てきた。

Capture_2016_07_15_23_19_50_867

あれ???でないなあ。。。。

Capture_2016_07_15_23_22_40_328

失敗かな??????再度!!!

 

(7/16)検証してみるか、、、、

$ cd /usr/share/tomcat8/webapps/WebAPSample

に、connectDBが無い!って怒られたので、、、見ると。。。

Capture_2016_07_16_05_22_55_178

あーーー、無いわーーー。これじゃDBにつながらないね。。。

サンプルあるかな?

 

 

[67]AWS TomcatのGUIツールを使ったデプロイ

Tomcatの管理ツールを使うと、WebのGUIからもアプりをデプロイできます、、、と。管理ツールは、次のコマンドでインストールできます、と。

sudo yum -y install tomcat8-admin-webapps

では、やってみましょう!

Capture_2016_07_15_22_25_57_467

って、あっというまに終わった、Complete!

インストールが完了したら、管理ユーザを作成します。

/usr/share/tomcat8/conf配下に、

設定ファイルtomcat-users.xmlがあるので、

管理ユーザの認証情報を追加します、、、と。

(もう、言われるまま、、、、、悲)

あーーあった!

Capture_2016_07_15_22_30_05_881

では、viエディタで修正。

どうやら、

<user username=”tomcat” password=”s3cret roles=””manager-gui”/>

を追加するみたい。。。。

あれ、、でも管理者でないとダメ!だって。。。。

Capture_2016_07_15_22_43_31_612

どうすっかな???

めんどいから、このままやっちゃうか。(編集できないけど。。)

いや、だめだ。。GUIの画面でID、Passを聞かれるって。。

じゃ調べるか。。。

$ sudo vi ファイル名

で良い????なんだよ、、、あっさり行ったよ!

Capture_2016_07_15_22_56_24_702

では、追加を。

Capture_2016_07_15_23_02_01_101

編集したら、、、

Capture_2016_07_15_23_02_43_326

編集されたようだ!

tomcat8を再起動する、、、、と。

$ sudo service tomcat8 restart

OK!?かな???

Capture_2016_07_15_23_04_54_811

じゃ、EC2インスタンスのPublicDNSの8080ポートにアクセスします。今回のオレのは、

http://ec2-52-197-160-7.ap-northeast-1.compute.amazonaws.com:8080/manager

おお、認証を聞いてきた!確か、、、、

tomcat, s3cretだったな?

Capture_2016_07_15_23_08_42_623

入れてみると、、、入れた!っぴーーーーーうれぴー!

Capture_2016_07_15_23_09_48_922

 

[66]AWS Tomcat8の起動

では、いよいよTomcat8サーバを起動します。。

緊張するなあ。起動しなかったらどうしよう。。。。

コマンドプロンプトへ。

$ sudo service tomcat8 start

Capture_2016_07_15_21_47_40_834

あれ??動いたのかな???OKはでたけど。。。。

Capture_2016_07_15_21_48_39_601

次に、EC2ンスタンスを再起動したときにもTomcat8を自動起動させるため、次のコマンドを。。。。

$ sudo chkconfig tomcat8 on

Capture_2016_07_15_21_50_44_473

??

チェックできるみたい。

$ chkconfig –list |grep tomcat

すると、、、

Capture_2016_07_15_21_51_41_256

おお、ON/OFFが教科書どおりになっとる。(いいのかな?)