mk-mode BLOG

このブログは自作の自宅サーバに構築した Debian GNU/Linux で運用しています。
PC・サーバ構築等の話題を中心に公開しております。(クローンサイト: GitHub Pages

ブログ開設日2009-01-05
サーバ連続稼働時間
Reading...
Page View 合計
Reading...
今日
Reading...
昨日
Reading...

Linux - Apache 2.2.22 を yum でインストール!

[ サーバ構築 ] [ Apache, CentOS, ScientificLinux ]

こんばんは。

現在の Scientific Linux 6.2 や CentOS 6.2 ではリポジトリの関係上、yum でインストールできる Apache は 2.2.15 です。(RPMForge, EPEL, REMI リポジトリも同様) しかし、2.2.20 未満のバージョンでは脆弱性があるため DoS 攻撃を受け、Out Of Memory や それによる OOM-Killer の発動を引き起こしたりします。

今回は別のリポジトリ CentALT を導入して、Apache 2.2.22 を yum インストールしました。 (ちなみに、CentALT はロシア製みたいです。)

作業記録

0. 前提条件

今回は CentOS 6.2 (x86_64版) で確認しましたが、i386版や Scientific Linux 6.2 でも同様のはずです。

1. EPEL リポジトリの導入

CentALT リポジトリでは EPEL リポジトリを利用するようなので、未導入なら導入します。 当方は元々、EPLE リポジトリは導入済みでした。

1
# rpm -Uvh http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-5.noarch.rpm
1
2
3
4
5
6
# vi /etc/yum.repos.d/centos.alt.ru.repo
[CentALT]
name=CentALT Packages for Enterprise Linux 6 - $basearch
baseurl=http://centos.alt.ru/repository/centos/6/$basearch/
enabled=0
gpgcheck=0

2. Apache 2.2.22 のインストール

以下のようにしてインストールする。

1
# yum --enablerepo=CentALT -y install httpd

3. インストール確認

インストールできているか確認する。

1
2
3
# httpd -v
Server version: Apache/2.2.22 (Unix)
Server built:   Jan 31 2012 12:28:21

4. 動作確認

インストールされた Apache が動作するか確認する。

1
2
3
4
# /etc/rc.d/init.d/httpd start
# /etc/rc.d/init.d/httpd restart
# /etc/rc.d/init.d/httpd status
# /etc/rc.d/init.d/httpd stop

ついでに、"service" コマンドで同じ事ができるか確認もした。

5. 自動起動設定

マシン起動時に自動で Apache を起動させるために、chkconfig の設定をします。

1
2
3
# chkconfig httpd on
# chkconfig --list httpd
httpd           0:off   1:off   2:on    3:on    4:on    5:on    6:off

2,3,4,5 が “on” になっていることを確認。

その他

mysql, php 等の整合性も考えると、mysql, mysql-server, php, php-mysql, php-mbstring 等も CentALT リポジトリを利用してインストールした方がよさそうです。 この場合、MySQL 5.5.20, PHP 5.3.10 がインストールされるようです。

1
2
3
4
5
# yum --enablerepo=CentALT -y install mysql
# yum --enablerepo=CentALT -y install mysql-server
# yum --enablerepo=CentALT -y install php
# yum --enablerepo=CentALT -y install php-mysql
# yum --enablerepo=CentALT -y install php-mbstring

参考サイト


これで、脆弱性対策としてパッチを当てたり、別のモジュールを導入したりしなくてもよいはずです。 ※ただ、実際には当方のサーバでは 2.2.22 未満の Apache の設定ファイルに対策を施して運用していますが。。。

以上。

Comments