mt.cfgが丸見えでした

「おっさんトコ、mt.cfgが丸見えやぞ!」

というメールを貰ってはっと気付くと、確かにmt.cfg(Movable Typeの設定ファイル)が丸見えでした(^_^;) これじゃあセキュリティのセの字もありません(^^;;

(まぁ、データベースパスワードは拡張子がcgiのファイルに記述されてる→mt.cfg見て解ることって、データベースユーザ名とデータベースの名前くらいではあるんですが。MySQL自体も、ココのはlocalhostからのアクセスしか受けつけないように設定してるし…:^^;)

mt.cfgのパーミッションを600等に変更して対処する手もあったんですが、今回は.htaccessに

<Files ~ "\.(dat|log|cfg|tmp)$">
deny from all
</Files>

を追記しときました。

今回は.cfg拡張子のファイルだけへの制限で良いのに他にもいろいろと(正規表現で)制限してるのは、この記述が汎用で、あちこちに使いまわしてる奴だから(^_^;)

これで無事mt.cfgが見えなくなりました。

ついでにMTサイトでは

# Bad agent
SetEnvIf User-Agent "bot" BadRobot
SetEnvIf User-Agent "Bot" BadRobot
SetEnvIf User-Agent "Naver" BadRobot

<FilesMatch "\.(cgi|pl)">
Order allow,deny
Allow from all
Deny from env=BadRobot
</FilesMatch>

↑こんな記述も入れといた方がいいかも。

上記はcgi/pl拡張子のファイルに対するロボットアクセスを拒否する事を目的としています。

このサイトでは外部へのリンクがcgi経由→ロボットでは追えないように作ってる→クローラー(ロボット)にアクセスさせる意味がないので上記記述を入れたのですが、

  • コメント
  • トラックバック

等を許可しているサイトではクローラーがこれら用のcgiまで読み込みインデックスしてしまう→エントリーそのものではなくエントリーにトラックバックを付けるためのフォームCGIが検索結果になるという馬鹿みたいな事態をまま招いてます(^^;んで、これらのファイルはロボットの読み取り拒否の方向で。

まぁ、MT下に別途(クローラーにインデックスして欲しいような)掲示板を別途置いてるとかだと、ハナシはまた変わってくるんですが。