RHEL / CentOS / FedoraのSuhosinセキュリティパッチでPHPインストールを保護する


Suhosinは、PHPインストール用のオープンソースの高度なセキュリティおよび保護パッチシステムです。 suhosinの主な目標は、WordPressや他の多くのphpベースのアプリケーションを含むアプリケーションのさまざまな未知の脆弱性やその他の既知および未知の欠陥からサーバーとユーザーを保護することです。

この記事では、RHEL/CentOS/FedoraシステムにSuhosinパッチをインストールする2つの方法を紹介します。 DebianやUbuntuなどの一部のLinuxディストリビューションでは、デフォルトでsuhosinが出荷されていることに注意してください。

参照:LMDでLinuxサーバーを保護する(Linuxマルウェア検出)

最初の部分にはソースコードのインストールの使用が含まれ、2番目の部分の浸透はサードパーティのepelリポジトリをオンにすることによるものです。

パート1:ソースコードを使用したSuhosinパッチのインストール

最初に依存関係パッケージphp-develをインストールし、次にwgetコマンドを使用して最新バージョンのsuhosinパッチをダウンロードして解凍します。

# yum install php-devel
# wget http://download.suhosin.org/suhosin-0.9.33.tgz
# tar -xvf suhosin-0.9.33.tgz

次に、次のコマンドを実行して、phpインストール用のsuhosinパッチをコンパイルします。

# cd suhosin-0.9.33
# phpize
# ./configure
# make
# make install

suhosin拡張子を追加して、suhosin構成ファイルを作成します。

# echo 'extension=suhosin.so' > /etc/php.d/suhosin.ini

WebサーバーApache、Nginx、またはLighttpdを再起動します。

# service httpd restart
# service nginx restart
# service lighttpd restart

パート2:EPELリポジトリを使用したSuhosinパッチのインストール

RHEL/CentOSシステムでEPELリポジトリをオンにしてから、次のコマンドを実行してインストールします。 (注:Fedoraユーザーはepelリポジトリを追加する必要はありません)。

# yum install php-devel
# yum install php-suhosin

WebサーバーApache、Nginx、またはLighttpdを再起動します。

# service httpd restart
# service nginx restart
# service lighttpd restart

Suhosinパッチを確認する

次のコマンドを入力して、suhosinのインストールを確認します。

# php -v
PHP 5.3.3 (cli) (built: Jul  3 2012 16:40:30)
Copyright (c) 1997-2010 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies
with Suhosin v0.9.33, Copyright (c) 2007-2012, by SektionEins GmbH

suhosinパッチの詳細については、Webサーバーのルートディレクトリの下に次のファイルを作成してください。たとえば、(/ var/www/html /)。

# vi phpinfo.php

次の行を追加します。

<?php

     phpinfo ();
?>

次に、任意のWebブラウザーを使用してページにアクセスし、http://yourdomain.com/phpinfo.phpと入力してみます。以下の画面が表示されます。

Suhosinにはデフォルト構成が付属しており、そのまま使用できます。これ以上の変更は必要ありません。ただし、セットアップに従って構成する場合は、suhosinの構成ページにアクセスして詳細を確認してください。