簡易パスワード認証ページの作成

ちょっとした隠しページに使える、「パスワード」=「ファイル名」になる簡易パスワード認証フォーム。

<form method="post" action="">
<input type="text" size="8" name="admin">
<input type="button" value="submit" onClick="location.href = this.form.admin.value + '.html';">
</form>

ファイル名が「secret.html」ならば、「secret」と入力する仕組み。

パスワード入力フォーム

この方法はあくまでも「簡易」。http://~/secret.html というURLが分かれば(知っていれば)、URLを直接指定してもアクセス出来てしまう。

対策その1

検索エンジンに拾われないよう、metaタグで軽く防御。

<meta name="robots" content="noindex">

対策その2

secret.htmlを「sample」フォルダに置いた上で(http://~/sample/secret.html)、sampleフォルダに.htaccessファイルを設置し、自サイトのURL以外からのアクセスを抑制。最後に改行するのを忘れずに。

SetEnvIf Referer "^https://umakaras\.net" ref
order deny,allow
deny from all
allow from env=ref
 

パスワードのフォームは、sampleフォルダ以外に置いた任意のファイルに設置。

対策その3

パスワードを知る人が他人に教えてしまったり、各自のサイトからリンクしたり、オンラインブックマークをしたりしないように注意しておく。アクセスする時は絶対にフォーム経由で! と厳重に言い含める。