前回そんな感じでサーバーの勉強をしようと決めたわけですが、
まぁ、先ず何からやったらいいのかわからない。
とりあえずApacheからやってみようかな…。
そんな感じでLinuxのLAMP環境を作成してみることにしました。
OSはCentOS7を選択してみました。
一応AWSの選択枠にもあるしね。
ただ、AWS上で環境入れる実験をして、
インスタンスを作成したり、削除したり繰り返したりすると
結構データ量を無駄にしてしまうと思ったので、
先ずはVirtualBox上の仮想OSでやってみようと。
そういう感じです。
自分がやったことのまとめとして書いていこうと思います。
この内容が正しいかどうかは…要検証ですね。
-------------------------------------------
1.VirtualBox
有名ですね。
仮想OSを動かすアプリケーションです。
https://www.virtualbox.org/
とりあえずサクッとインストールしちゃいましょう。
Linux環境でもインストールできるんで(Linux on Linuxになっちゃうけど)
sudo apt-get install virtualbox
-------------------------------------------
2.イメージから仮想OSを作成
CentOS7のイメージをダウンロードして、
VirtualBoxから仮想OSを作成しましょう。
サーバー勉強用なので最小(minimal)のでいいと思います。
実際の作業は仮想OS上ではしないですからね。
少しの修正だったらコンソール上からviとかでいいですし、
本格的な作業は別PCでやったソースをWinSCP等で送信する感じになると思います。
だいたいこの辺から
http://ftp.riken.jp/Linux/centos/7/isos/x86_64/
ダウンロードしたらVirtualBoxから仮想OSを作成しましょう
とりあえず気にするような項目も特にないので、
サーッと作ってしまいましょう。
ネットワーク設定だけはONにしておいた方がいいですかね…。
-------------------------------------------
3.Linuxのアップデート
仮想OSのLinux環境が出来たら、
とりあえずアップデートしてしまいましょう。
OSインストール時にROOTのパスワードを設定していると思います。
それでログインしてからOSのアップデートをします。
yum -y update
yum -y upgrade
立ち上げ直後だといろいろアップデートするので
少し時間がかかると思います。
RaspberryPiとかはapt-getだったけどこっちはyumなんですねぇ
アップデートが完了したら、Apacheをインストールしておきましょう。
あと、起動したら有効になるようにしておきましょう。
yum -y install httpd
systemctl start httpd
systemctl enable httpd
最後に、現状でApacheが有効になっているか確認しておきましょう。
エラーしてたら、どうしましょうね…(適当)
service httpd status
-------------------------------------------
4.VirtualBoxのネットワーク設定
作成した仮想OSで立ち上げたサーバーを
作業PCからアクセスする際に必要な設定です。
この設定やって、なんか上手くいかなかったら
SELinuxの無効とか試してみましょう。
本番だとSELinuxは無効にしないほうがいい?と思います。(適当…)
下のコマンドを実行して1が返ってきたら有効になってます。
getenforce
無効にする場合は次のコマンド
setenforce 0
んで、ネットワーク設定ですね。
こっちが大事。
VirtualBoxの「デバイス>ネットワーク>ネットワーク設定」を選択します。
で、現在有効にしているネットワークの「高度」を選択して表示します。
上のような感じになりますね。多分。
で、「ポートフォワーディング」から設定を行います。
上の「http」「ssh」の部分の設定をします。
「Rule1」とかいう設定がありますが、これは必要ないです。
設定したら次は仮想OS側の設定ですね。
-------------------------------------------
5.仮想OSのファイアウォール設定
仮想OS内のファイアウォールの設定を行います。
これをしていないとサーバーへのアクセスとかがまだ通りません。
「このポート番号は許可するよ」っていう設定が必要です。
先程のポートフォワーディングで通した部分と合わせる形で設定します。
firewall-cmd --add-port=80/tcp --zone=public --permanent
firewall-cmd --add-port=22/tcp --zone=public --permanent
firewall-cmd --reload
順に「http」「ssh」の設定をした後にリロードで有効にしています。
設定したら、VirtualBoxを起動しているPCからブラウザアクセスしてみましょう。
localhost:8080
成功していればApacheのページが表示されると思います。
これは、
先程の4で設定したポートフォワーディングを辿って、表示されています。
1.デスクトップ上からローカルホストの8080番
2.VirtualBoxの80番(ポートフォワーディングで8080→80)
3.仮想OSの80番はファイアウォールの許可をしているのでアクセスできる
4.Apacheインストール時に設定されているページが表示される
上のような順序で辿っているんだと思います。(曖昧)
とりあえずこれでメインPCからVirtualBox内の仮想OSにあるページに
アクセスできることが分かると思います。
-------------------------------------------
6.いったんここまで
とりあえずVirtualBoxにCentOS7をインストールして、
そこのApacheで動作しているページに外からアクセスする感じに出来ました。
まあ、ローカル上でしか繋がっていないわけで、
このメインPCが外に繋がっていて、それがアクセス可能でないと
本当に外部からはアクセスできないんですが…
その辺の役割は本番環境としてのレンタルサーバー等に任せようと思います。
どっちかっていうとApacheとかPhpとかの学習用途やけんね。今回は。
次回は、ここからPHPやMySQLを入れていく方向で設定を続けていきます。
意外と純粋なサービス作りの前の環境作成がいろいろあるねんな…。
0 件のコメント:
コメントを投稿