大企業営業から未経験ITエンジニアを目指すブログ

アラサー大企業営業から未経験ITエンジニアを目指すブログ。日々学んだことを忘備録的に記します。

Windows10にVagrantとVirtualBoxでCentOSの仮想環境を構築③失敗記録!Apacheインストール

ファイアウォールの設定

https://www.rem-system.com/linux-first-setting/#4_firewalldiptables

 

firewalldの稼働状況確認

firewalld-cmd --state

 

firewalldの有効化

sudo systemctl enable firewalld

 

firewalldの起動

sudo systemctl start firewalld

 

[vagrant@localhost ~]$ firewall-cmd --state
Authorization failed.
Make sure polkit agent is running or run the application as superuser.

 

firewall-cmd --get-default-zone

public →ok

 

$ sudo firewall-cmd --new-zone=manage --permanent
success →ok

 

$ sudo firewall-cmd --zone=manage --set-target=ACCEPT --permanent
success →ok

 

$ sudo firewall-cmd --zone=manage --add-service=ssh --permanent
success →ok

※サイトにあるftpは追加しなかった。

 

!!問題発生!!

7-2-3. 接続元のIPアドレス追加
項目7-2-2. で登録したサービスに対して接続できる、接続元IPアドレスを追加します。IPアドレスの追加は”--add-source”オプションで指定します。

→接続元のIPアドレスを何にすべきかが分からない!!

Vafrantfileでとりあえずホストしかアクセスできないようにはなってたよね?

新しいゾーン追加したの無駄だけど、とりあえず登録するのやめとく!

publicのssh削除だけして、入れなくなっちゃったら全部削除することに。

$ sudo firewall-cmd --reload
success

 

$ sudo firewall-cmd --remove-service=ssh --zone=public --permanent
success

 

$ sudo firewall-cmd --reload
success

 

$ sudo firewall-cmd --list-all

servicesから”ssh”が消えていればOK

 

<関係ないけど>

windows powershellでipconfigと叩くと自分のIPアドレスを知ることができる。

 

Apacheのインストール

 

 https://www.rem-system.com/centos-httpd-inst/

 

$ sudo useradd -s /sbin/nologin www

wwwというユーザを作成

 

$ sudo passwd www

 パスワードを設定

 

確認

$ cat /etc/passwd | grep www
$ id www

 

インストール予定の内容の確認

yum list | grep httpd

 

Apacheインストール

yum install httpd httpd-tools httpd-devel httpd-manual

 

インストールできたかどうか確認

$ yum list installed | grep httpd

 

インストール先の確認

which httpd

/usr/sbin/httpd

 

sudo systemctl start httpd

httpdの起動確認

 

sudo systemctl status httpd

起動状況を表示

 

サーバーの再起動や停止の復旧時に、httpdが自動的に起動するように設定

sudo systemctl enable httpd

 

設定できたかの確認

sudo systemctl is-enabled httpd

 

$ sudo firewall-cmd --add-service=http --permanent

 

このコマンドはデフォルトのゾーンであるpublicにhttpのサービスを追加します。publicゾーンはインターフェイスに対して割り当てられていますので、この場合はどのIPアドレスからもhttpへ接続可能になります。

 

$ sudo firewall-cmd --reload

$ sudo firewall-cmd --list-all

表示された結果の「services」項目に「http」が追加されていれば、設定の確認は完了

 

・Vagrantfileに記載したIPアドレスにブラウザからアクセス

http://192.168.33.10/

 

httpd.confでhttpdの設定変更

①cd /etc/httpd/conf

②cp -p httpd.conf httpd.conf.org バックアップとしてコピー

httpd/confファイルの書き換え

sudo vi httpd.conf

(1)動作ユーザー・グループの変更

User Apache
Group Apache

User www
Group www

 

(2)サーバー管理者のメールアドレス変更

ServerAdmin root@localhost

→自分のメールアドレスへ変更

 

(3)サーバーのホスト名変更 →良く分からないからやらない

(4)ドキュメントルートの変更

DocumentRoot "/var/www/html"

DocumentRoot "/home/www/html"

 

(5)ディレクトリの変更

<Directory "/var/www">
AllowOverride None
# Allow open access:
Require all granted

<Directory "/home/www">

 

(6)ディレクトリ・オプションの変更2

<Directory "/var/www/html">

Options Indexes FollowSymLinks

<Directory "/home/www/html">

Options FollowSymLinks

 

(7)スクリプトエイリアスの変更 →やらない

(8)CGIディレクトリの変更 →やらない

保存

 

ログアウトして、続きをやろうとログイン試みたらvagrant sshログインできず!!

vagrant up 自体時間がかかった。

 

・tera termをインストール。

 https://eng-entrance.com/teraterm-install

https://ja.osdn.net/projects/ttssh2/downloads/72009/teraterm-4.105.exe/

 

vagrant up

 

    default: SSH auth method: private key

Timed out while waiting for the machine to boot. This means that...

毎回ここで止まる!

 

・Tera termでSSHログインを試みる

 →ホストに接続できません(だっけ?)

 

・もう一回vagrant up

→行けた感じ?

 

vagrant status

running

 

vagrant ssh

ssh_exchange_identification: read: Connection reset

 

・もう一回teratermで試みる。

vagrant ssh-configでみた情報をteratermに入れる

 

teratermが突然消えるので、対策。

 

teratermで接続するも、認証画面が出ない。

 

→もうあきらめ。壊すことに。

 

 

vagrant起動時に生成されるSSH秘密鍵と、OS上の公開鍵がマッチしてないのが原因らしい。公開鍵を生成して、OS上にセットしなおす必要あり?

https://qiita.com/Esfahan/items/e5f707dc6d116c2cc751

秘密鍵の場所を特定する

秘密鍵から公開鍵を作成する

③作成した公開鍵を

 

Apacheのインストールの準備のため、Vagrantfileを書き換え

ゲストOSとホストOSの共有ファイル置き場を設定する。

config.vm.synced_folder "src", "/var/www/html"

コメントアウトを消して、上記に書き換え。

Apacheのドキュメントルートは、/var/www/html になるらしい

https://qiita.com/Hiroyuki-Hiroyuki/items/106b30fd053abf8bdd33#desktopmyvagrantmycentossrc

https://www.rem-system.com/centos-httpd-inst/

じゃなくて、シンボリックリンクを貼ればいい。

 

https://qiita.com/tiwu_official/items/f135e6b6fbbe3ec6aa54#2%E4%BB%AE%E6%83%B3%E3%83%9E%E3%82%B7%E3%83%B3%E3%81%AE%E4%BD%9C%E6%88%90