Apache2.4セキュリティ「iconsディレクトリ対策」を行い、不要なコンテンツ表示を無効化する

icons ディレクトリは、デフォルトコンテンツで使う画像などが設置されているディレクトリです。デフォルトページを非表示にした場合、不要なディレクトリとなります。
このディレクトリが有効な場合、そこに含まれる README ファイルなども表示されてしまうので、例えば以下の URL にアクセスすると、README ファイルが表示されます。
http://example.com/icons/README

本来不要であるものが表示されてしまうのは、脆弱性がないとしてもいつしかセキュリティホールになり得ないとも言えないですし(ちょっと過保護かもですが)まあそもそも不要なので無効化してしまいましょう。
CentOS7 の場合(Rocky Linux / AlmaLinux など RHEL 系でも同様)、無効化には autoindex.conf を編集します。
※ Debian/Ubuntu の場合は /etc/apache2/mods-available/alias.conf に Alias /icons/ の設定があります。
- ファイル設置箇所/etc/httpd/conf.d ファイル名 autoindex.conf
-
# autoindex.conf を vim で開く vim /etc/httpd/conf.d/autoindex.conf
ここの 21行目あたり
Alias /icons/ "/usr/share/httpd/icons/"
<Directory "/usr/share/httpd/icons">
Options Indexes MultiViews FollowSymlinks
AllowOverride None
Require all granted
</Directory>
↓すべてコメントアウト
# Alias /icons/ "/usr/share/httpd/icons/"
#
# <Directory "/usr/share/httpd/icons">
# Options Indexes MultiViews FollowSymlinks
# AllowOverride None
# Require all granted
# </Directory>
Apache を再起動する前に conf ファイルの書式チェックを行います。
# conf ファイルの書式チェックを行う
apachectl configtest
# 実行結果
[demo@localhost ~]# apachectl configtest
Syntax OK // ←これが出れば OK
Apache を再起動します。
# Apache を再起動
systemctl restart httpd.service
ブラウザからアクセスして画面を確認してみます。

README ページが表示されなくなりました。