68user's page 掲示板

Prev< No. 489〜494> Next  [最新発言に戻る] [過去ログ一覧]
No. 489 # mm 1999/10/22 (金) 02:43
さっそく、ありがとうございます。

>ん〜、これもどうも…何か違うような。
あっ、関係ないかも知れないけど、正確に引用しときますね(苦笑)
>order ord
>許可文と拒否文をチェックする順番を指定する。
>"deny,allow"を指定すると、最初に拒否エントリをチェックする。
>拒否リストと許可リストの両方に含まれるサーバーは許可する。
>"allow,deny"を指定すると、最初に許可エントリをチェックする。
>両方に含まれるサーバーは拒否する。
>"mutual-failure"を指定すると、許可リスト中のホストに許可を与え、
>拒否リスト中のホストを拒否し、それら以外については拒否する。

68userさんの説明とapacheのマニュアルを見ると、
すくなくとも、"mutual-failure"の説明は、
両方に含まれる部分について正確さを欠いてますね。


以下について応答する前に、ちょっと確認なんですけど、
>上の2つの order を逆にすると、どのホストからも
>見られなくなります。
これは、下に関しては、「どのホストからも見えてしまう。」
の間違いということはないのでしょうか?

No. 490 # 68user 1999/10/22 (金) 02:57
> これは、下に関しては、「どのホストからも見えてしまう。」
> の間違いということはないのでしょうか?
あ、間違いです。
    「許可したホスト以外は拒否」なら
        order deny,allow

        order allow,deny
にすると、「全部拒否」になってしまい、
    「拒否したホスト以外は許可」なら
        order allow,deny

        order deny,allow
にすると、「全部許可」になってしまう、ですね。

> "mutual-failure"の説明は、
> 両方に含まれる部分について正確さを欠いてますね。
ん〜、不正確とは言えないかもしれないけど、不親切ではありますね。
mutual-failure でも allow,deny の順に評価され、allow にマッチしたとしても
その次に deny について評価され、そこでマッチしたら拒否、ってことです。

そういうことを
    http://japache.infoscience.co.jp/japanese_1_3/manual/mod/mod_access.html#order
    allowとdeny状態が評価されるどんな場合でも、"short-circuiting"は存在しません。
は言ってるんでしょうけど、もともと order っていう仕組みがわかりにくいのに、
ヘボい訳のせいで さらにわけのわからんことに。

No. 491 # mm 1999/10/22 (金) 03:42
>あ、間違いです。
よかった。
これが違ったら、また最初から理解し直しになるところでした(苦笑)

>ヘボい訳のせいで さらにわけのわからんことに。
あっ、確認したのは、
>Only those hosts which appear on the allow list and
>do not appear on the deny list are granted access.
の方だったので、これなら問題ないですよね。


先の回答に戻ります。

>> どちらにも含まれない hostC からのアクセスはどうなるのでしょうか?
>許可されると思います。
なるほど、やはりデフォルトは許可なんですね。

> 「deny にマッチしても、その後 allow にマッチした場合は、閲覧を許可する」
評価が後の方が優先するような感じはあったのですが、どうもよく分からなかったのです。

>阪大からは弾くけど、阪大の工学部(適当)からのみ許可する場合
allow か deny どちらかが常に from all なら、もっと別の指定の仕方があるだろうし、
なんとなく、こういう使い方を考えてるのかな…、と思ったもので、
その前にどちらにも現れない hostC の取り扱いをお伺いしました。

> 阪大は許可するけど、阪大の工学部だけは拒否し、なおかつ
> 群馬大は弾くけど、群馬大工学部だけは許可する
>という設定は無理じゃないかと思ってます。
なるほど、そうですね。
ここまでは、考えてなかった(苦笑)


68user さんの回答を読んでいて、ふと思ったのですが、

実際には、allow list と deny list があるのではなく、
例えば allow list だけがあって(抽象的な意味で)、
この list は最初は全ホストが詰まってる。
そして、allow 指令は、ここに指定されたホストを追加し、
deny 指令は、指定されたホストをここから削除する。
また、order による評価順序は、この追加、削除の動作順序で、
最後に list に残ったホストのみを許可する。
なお、mutual-failure の場合は、list を最初に空にし、
allow 指令を先に評価する。
(逆に、最初は空の deny list だけがあるとしても同じ)

というように考えるってのは、どうでしょうか?

Apache 1.3 から、deny,allow には(初期状態はOKです)とか、
allow,deny には (初期状態はFORBIDDENです) って注釈が
ついたから、ちょっと的ハズレかな…?

No. 492 # 68user 1999/10/22 (金) 04:10
> というように考えるってのは、どうでしょうか?
good です。…と思ったら、

> Apache 1.3 から、deny,allow には(初期状態はOKです)とか、
> allow,deny には (初期状態はFORBIDDENです) って注釈が
> ついたから、
う、知らなかった。ということは、

> order allow,deny
> allow from hostA
> deny from hostB
> という設定があった場合、どちらにも含まれないhostC からのアクセスは
> どうなるのでしょうか?
少なくとも apache 1.3 では `不可' ですね。実験してみたところ、
拒否されました。

ということは、order allow,deny って order mutual-failure と
同じ意味になってしまうんじゃないのかなぁ…。order allow,deny の
初期状態を FORBIDDEN にして、なにかうれしいことがあるんだろうか。

No. 493 # よしだ 1999/10/22 (金) 14:39
はじめまして。いきなりですが質問があります。
aliasesファイルを>newaliasesで更新しようとした際、
以下のようなメッセージが出て、aliasesが機能しません。

root@xxx>newaliases
WARNING: writable directory /var
WARNING: writable directory /var/spool
WARNING: writable directory /usr/ucblib
WARNING: writable directory /usr/ucblib
dbm map "Alias0": unsafe map file /usr/ucblib/aliases
WARNING: cannot open alias database /usr/ucblib/aliases
Cannot create database for alias file /usr/ucblib/aliases: No such device

  ディレクトリのアクセス権などをいじってみたのですが、うまくいき
ませんでした。
  もし、解る方がいらっしゃいましたらよろしくお願い致します。

No. 494 # 68user 1999/10/22 (金) 15:26
goo で 「newaliases warning writable dbm」で検索しました。
    http://www.swlab.csce.kyushu-u.ac.jp/~kazunori/install/sendmail.phtml
    http://www.sigma.tosho-u.ac.jp:8082/inet/newsos.6.1/sendmail-8.9.3/README
ですかね。

ところでさ、OS の種類とバージョン、sendmail のバージョンくらい
書きましょうよ。UNIX って言ってもいろいろあるんだから、uname -mrs
とか uname -mrsp の結果を書くのは、基本中の基本だと思います。

Prev< No. 489〜494> Next  [最新発言に戻る] [過去ログ一覧]