AWSを今更触ってみる1:Apacheインストールまで

これまでエックスサーバーなどレンタルサーバーを触ることが多かったのですが、AWSEC2を触る機会を流石にそろそろ増やした方がいいと思いその学習の記録です。

ゴール

/var/www/html/の階層を作成しサンプルのindex.htmlファイルをアップ、IPアドレスでアクセスしたらそのindex.htmlファイルの中身が表示されるようになること。

AWSのアカウントを作る

https://aws.amazon.com/jp/ec2

まずAWSのアカウントを作りました。ここでアカウント情報(メール、電話)や決済情報などを設定しました。

「MFAが割り当てられていません」と出ていたのでスマホ端末と連携して最低限のセキュリティも強化しました。

EC2のインスタンス立ち上げる

アカウント作った時のコンソール画面から、EC2と検索窓で打ち込みその後「インスタンスを起動」をクリック

インスタンスを起動からスペックやネットワークの設定をするみたいでした。

  • インスタンスの名前
  • マシンイメージ
  • インスタンスタイプ
  • キーペア(私の場合は.pem)

のなどの設定をしました。練習などでぶっちゃけよくわかってない点が多く、とりあえず初期値のまま進めるみたいな感じでした。
キーペアがないとFTPやターミナル経由でサーバーへ入れなくなるっぽいので安全な場所に保存しました。

とりあえずこの時点で箱が出来上がった感じですね。

AWSEC2というサービスのマンションの一部屋を借りた感じでしょうか。

WEBサーバー入れたい

index.htmlファイルを表示することがゴールなのでWebサーバーソフトを入れないとですね。

取得した.pemファイルを使ってサーバーにアクセスしてごにょごにょしました。

自分のPCのターミナル開く

  • 鍵ファイルの場所にcdコマンドで移動
  • ssh -i "my-key.pem" ec2-user@0.0.0.0 というコマンドで接続(IPやキーの名前は固有)

これでログインできるようになりました。

Apacheを入れる

sudo dnf install -y httpd

Apacheを起動

sudo systemctl start httpd

自動起動を設定する

sudo systemctl enable httpd

たしかこの時点でIPアドレスをURLのバーに打ち込むと、It works!って出てきたと思います。

/var/www/html/ができたんやね。(正確にはwwwフォルダができた?)

FTPソフトでファイルアップできない

という問題にぶち当たってターミナルで以下を打ちました

sudo chown -R ec2-user:ec2-user /var/www/html

他にも鍵ファイルの設定が644になっているなどのエラーが出て、

chmod 400 xxx.pemなどで変更した気がします。

終わり