隠したいWEB上にある特定のファイルを見つけてしまう方法はありますか?

http://hoge.com/以下にhatena.htmlというファイルを作りたいのですが誰にも見られたくありません。
http://hoge.com/hatena.htmlというリンクはどこからも貼っておらず、同じディレクトリ内にindex.htmlはあるなら、
基本的に安心しても良いのでしょうか?もし他にさらに安全にする方法があったら教えてください。
なお、この質問はhttp://q.hatena.ne.jp/1274584988のコメント欄にあるスクリプトを使うかどうか判断するためにしてます。
以上、よろしくお願いします。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2010/05/25 00:35:03
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:tezcello No.4

回答回数460ベストアンサー獲得回数69

ポイント20pt

ディレクトリにアクセス制限を掛けておくのはいくつかあります。

・基本認証

IDとパスワードを間違いなく入力できたユーザだけに閲覧を許す方法。

説明は長くなり過ぎるので参考サイトを。

http://allabout.co.jp/internet/hpcreate/closeup/CU20020910A/


・特定のディレクトリへ、ブラウザ(=ウェブサーバ経由)でのアクセスを全て禁じる。

.htaccess というファイルに、deny from all とだけ書いて目的のディレクトリに保存しておく。

FTPでのアクセスは可能。(ウェブサーバ経由でないため)

他のディレクトリのスクリプトは読み出せる。

例えば、読出用のスクリプトを用意して、パスワードやキーワードを付加して呼び出さないと表示できないようにしてけば、スクリプト中に文書を組み込む必要は無い。

id:taroemon

いつもお世話になります。


>IDとパスワードを間違いなく入力できたユーザだけに閲覧を許す方法。

リンク先をみて勉強させていただきます。

大変参考になりました。

2010/05/25 00:31:35

その他の回答4件)

id:TREEG No.1

回答回数255ベストアンサー獲得回数34

ポイント20pt

hatena.htmlではなく、hatena.html.phpにしてはいかがでしょうか?

そして、hatena.html.phpではリファラやユーザエージェント、アクセスドメインなど、間違いなく、自分のサーバからのアクセスと認識出来た場合のみ、ヒアドキュメントでphpの中身を表示する。それ以外は、表示しない。

.

例えば下記の例の様に、アクセスする際、UAに乱数をまぜるなど、他人が絶対に使わないようなUAに偽装していればまず大丈夫ではないでしょうか?

.

このようにすれば、元となる、phpの中身を見られない限り、まず、hatena.html.phpから出力したphpのヒアドキュメントは表示されないかと思います。

.

_____例_____

$context = stream_context_create(array('http' => array(

'method' => 'GET',

'header' => 'User-Agent: KOKO WO RANNSUU NADO NI SURU',

)));

$url = "http://hoge.com/hatena.html.php";

$data = file_get_contents($url, false, $context);

id:taroemon

私の今の知識だといただいた回答で大丈夫かどうかと判断できませんが、

これから勉強して取り入れたいと思います。

ご回答ありがとうございました。

2010/05/23 18:19:44
id:m72 No.2

回答回数506ベストアンサー獲得回数26

ポイント20pt

http://www.google.co.jp/search?num=100&hl=ja&safe=off&rlz=1T4GGL...

このソフトはサーバ上のhtml、htmを総当たり方式でリクエストをかけて

リターンコードでファイルの有無を探し出します。

基本的にはいまはオフィシャル的に配布してるところはなさそうですが

探せばどっかに転がっていると思います


ということで、リンクを張ってなければ100%安全というわけではないです。



おとなしく制限ディレクトリ作ってその中に格納するのが無難じゃないでしょうか

id:taroemon

>ということで、リンクを張ってなければ100%安全というわけではないです。

想像できることではありましたがいろいろあるもんですね。

どんな方法を使っても完全シャットダウンということはないでしょうから、

可能性がほぼゼロなら回答の要件を満たすとします。

制限ディレクトリというのはどうしたらよいかとか知りません。

ただこういうことはいつかちゃんと勉強しなければならないと思ってたので良い機会かもしれません。

ご回答ありがとうございました。

2010/05/23 18:28:53
id:Chakuwiki No.3

回答回数114ベストアンサー獲得回数5

ポイント20pt

「.htaccess」を使う方法があります。

そのWebページの一番上の階層の中に、「.htaccess」という名前のファイルを作成し、それをメモ帳で開きます。

あとは下記のサイトを参考にどうぞ。

http://www.shtml.jp/htaccess/data.html

id:taroemon

>「.htaccess」を使う方法があります。

そう。これもちゃんと勉強しなければならないものですね。

ご指摘ありがとうございます。

2010/05/25 00:29:21
id:tezcello No.4

回答回数460ベストアンサー獲得回数69ここでベストアンサー

ポイント20pt

ディレクトリにアクセス制限を掛けておくのはいくつかあります。

・基本認証

IDとパスワードを間違いなく入力できたユーザだけに閲覧を許す方法。

説明は長くなり過ぎるので参考サイトを。

http://allabout.co.jp/internet/hpcreate/closeup/CU20020910A/


・特定のディレクトリへ、ブラウザ(=ウェブサーバ経由)でのアクセスを全て禁じる。

.htaccess というファイルに、deny from all とだけ書いて目的のディレクトリに保存しておく。

FTPでのアクセスは可能。(ウェブサーバ経由でないため)

他のディレクトリのスクリプトは読み出せる。

例えば、読出用のスクリプトを用意して、パスワードやキーワードを付加して呼び出さないと表示できないようにしてけば、スクリプト中に文書を組み込む必要は無い。

id:taroemon

いつもお世話になります。


>IDとパスワードを間違いなく入力できたユーザだけに閲覧を許す方法。

リンク先をみて勉強させていただきます。

大変参考になりました。

2010/05/25 00:31:35
id:p332 No.5

回答回数36ベストアンサー獲得回数3

ポイント20pt

誰にも見られたくないが、自分ではhttp://・・・でアクセスしてみたい、という要件かと思います。

方法としては、

1.WEBサーバ(apache)などの機能(Basic認証など)で、認証を要求する(ID/パスワードを入力してログインさせる)ようにする。

2.ファイル名をパスワード代わりにする(hatena_password=abcdefg.htmlなど)

があります。

1は、見れる人を限定するwebサイト全般で使われている自然な方法です。当然、ID/パスワードを入力してログインする手間が発生しますが、

利便性とセキュリティのトレードオフです。

2は、結局ファイル名がバレなければアクセス出来ないので、簡単に1と同等の効果が得られるかと思います。

また、webサーバのログなどから、他の誰もアクセスしていないかチェックするなどすると良いかもしれません。

id:taroemon

>利便性とセキュリティのトレードオフです。

今回はセキュリティが最優先なのでまったく問題ないです。


>webサーバのログなどから、他の誰もアクセスしていないかチェックするなどすると良いかもしれません。

これくらい用心してちょうど良いかもしれませんね。やってみることにします。


大変参考になりました。ありがとうございます。

2010/05/25 00:34:33

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません