CentOS7のApache(httpd)を、2.4.6から2.4.39へバージョンアップしてみた(ら、httpdが起動できなくなった)

※以下1〜8の手順を実施した後に、httpdを起動できない事象に見舞われました。詳細は9の手順以降に記載。結論から言うと、httpdとmod_sslは同時にインストールした方が良さそうです。バラバラにインストールすると、依存関係でコケます。(yum updateで全部上げればいいんですけどね。httpd周りだけ上げたい方向け)

前置き

CentOS7.6にもともと入っているApache(httpd)は、2.4.6です。しかしこの2.4.6が少々古く脆弱性情報がバンバン出ておりますので、最新バージョンへアップせねばなりません。恥ずかしながら結構つまづいたので、備忘録です。

Linuxド初心者なので、「httpdのバージョンアップか〜、yum updateかな〜」ととりあえずyum update httpdを実施したところ、2.4.6のまま変わらず。なぜかわらなかったのか原因は後で考えるとして(おい)、ググったところどうやら単純なupdateではなく、httpdの再インストールが必要のようです。ガリガリの本番環境なので、嫌だな〜(泣)と思いながら、httpdの再インストールを実施することにしました。

何より困ったのが、ネットにいろんな情報が溢れていて、どれが適切なのか分からないことです。(今SEに求められているのは、ググる力だと痛感する日々・・・)いろいろ悩んだ結果、以下のサイト様が今回は良いと思い、参考にさせていただきました。

事前バックアップ

httpdの再インストールですので、httpdのバックアップが必要です。/etc/httpdをまるっと/etc/httpd_bkupしとくのが良いですね。

手順(参考サイトそのままと言っていい)

1.リポジトリを追加しました

yum install https://centos7.iuscommunity.org/ius-release.rpm

2.Apache 2.4.6を削除しました

# yum remove httpd

3.IUSリポジトリからインストールしました(が、できない)

# yum install --disablerepo=base --disablerepo=updates --enablerepo=ius httpd

4.衝突しているということことで、httpd-toolsをアンインストールしました(5の手順でインストールするときにhttpd-toolsは一緒にインストールされます)

# yum remove httpd-tools

5.IUSリポジトリからインストールしました

# yum install --disablerepo=base --disablerepo=updates --enablerepo=ius httpd

6.バージョン確認しました(2.4.39になってる!OK!)バージョン確認しました(2.4.39になってる!OK!)

# httpd -v

7.httpd.confの設定しました。これはバックアップした/etc/httpd_bkupから、/etc/httpd/confに既存ファイルをコピーする。

8.その他

・mod_sslインストール:実は本番環境ではサーバに自己証明書を入れているのですが、2のApache削除手順にてmod_sslがアンインストールされてしまったため、再インストールしました。これは参考サイトと同じですね。ssl_confも新しいものが入っているため、バックアップした/etc/httpd_bkupから既存のssl_confを持ってきます。

(追記)9.mod_sslインストール後、起動できない!泣

手順9を実施したところ、httpdが起動できなくなりました。ssl_logを見ると、依存関係が原因っぽかったので、httpdをアンインストールして、mod_sslと同時にインストールすることに。

# yum -y install --disablerepo=base,extras,updates --enablerepo=ius httpd httpd-devel mod_ssl

以下のサイト様を参考にしました。

https://www.rem-system.com/httpd-ius-install/

これで改めてhttpd.confとssl.confを更新したら、無事にバージョンが2.4.39に更新された状態で、httpdを起動することができました。。簡単に手順1〜9にまとめてますが、結構数時間あれこれ悩んだ。yum updateするのみが簡単ですが、どうしてもhttpdのみ上げたい場合は、手順9がとても重要ですね。

以上(足りない情報は後日追記します)

この記事が気に入ったらサポートをしてみませんか?