[Linux]-[apache] HTTPレスポンスヘッダからのバージョンを消す

ApacheのHTTPレスポンスヘッダにはデフォルトでApacheのバージョン、OS名及びモジュールが返されます。これらを表示させたくない場合にはServerTokens指示子を使います。引数にはFull(デフォルト)、OS、Minimal(Min)、ProductOnlyが指定可能で、それぞれ

Full Apacheのバージョン、OS名及びモジュール
OS ApacheのバージョンとOS名
Minimal(Min) Apacheのバージョン
ProductOnly 製品名のみ

という結果になります。

例としてMinimal(Min)を指定した場合は

ServerTokens Minimal
Apache/1.3.26  とバージョン名のみ表示されるようになります。ProductOnly指定が推奨されます。

また、インデックス表示や、エラーページを表示する際にもバージョンが表示されますので、これを表示されないようにするためには

ServerSignature Off

と指定します。昨今では「GET / HTTP/1.1(または1.0)」と指定し、HTTPサーバーの種類やOS、ApacheのバージョンやPHP、SSLが動作しているかを調べ、該当する脆弱性がある可能性を見つけると次の動作に入るという種の攻撃が多くなっています。このようにバナーを表示させないことにより無用な次の動作を避けることができます。例えセキュリティーホールを抱えてなくとも攻撃の形跡は気持ちの良いものではありません。

[Linux]-[system] プロセスがオープンしているファイルを調べる

特定のプロセスがオープンしているファイルを調べるには、-cオプションでプロセス名を指定してlsofコマンドを実行する。

例えば、sshがオープンしているファイルを調べるときは、以下のようにする。

# lsof -c ssh
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
sshd 2436 root cwd DIR 3,2 4096 2 /
sshd 2436 root rtd DIR 3,2 4096 2 /
sshd 2436 root txt REG 3,2 274692 1343255 /usr/sbin/sshd
(省略)


By @IT

[Linux]-[apahce] 1つのIPアドレスで複数の名前を使う

VirtualHost指示子を使います。

ServerName foo.bar1.com
DocumentRoot /var/www/html1

NameVirtualHost 192.168.1.10


ServerName foo.bar2.com
DocumentRoot /var/www/html2

上記は仮想ホストの1つに適用される指示子を指示子の外で指定しています。こうすることによりそれ以外の仮想ホストはの中に指定されている指示子によってコントロールすることができます。VirtualHost指示子を使うときは注意が必要です。仮想ホストに接続する際旧型ブラウザでは利用できない場合があるからです。

  • entry551ツイート
  • Google+