68user's page 掲示板

Prev< No. 477〜493> Next  [最新発言に戻る] [過去ログ一覧]
No. 477 # 68user 1999/10/18 (月) 18:59
interq って zeus っていう WWWサーバなんだよね。できれば
apache っていうのがお勧めなんだけど。あと、そこに書いて
あるように、#exec cmd/#exec cgi は使えません。

いろいろ設定をいじったり、深く使いたいなら他のところを
探した方がいいんじゃないかね。まぁ、どこがいいかってのは
わからないんだけど。

でも簡単な CGI を設置できればいいということなら、
interq でも OK だと思います。

No. 478 # MASA 1999/10/19 (火) 20:18
はじめまして。
私はUNIX初心者なのですが勉強してサーバー構築手順書、C/S設計手順書を作りたいと思っています。分かりやすい本などをどなたか教えていただけませんか?
熱意はあります。宜しくお願いします。

No. 479 # 68user 1999/10/20 (水) 00:39
サーバを構築したいということなら、「FreeBSDでサーバ構築」
「Linuxでサーバ構築」とかいう本が結構出てます。それを手に
入れるのが近道じゃないでしょうか。ただし僕はそういうのを
買ったことはないので、どれがお勧めかはわかりません。
本屋で手に取って内容を吟味して下さい。

まぁ、apache/bind/sendmail/pppd あたりの設定方法が
さらっと書いてあるだけなので、もっと深く知りたければ
O'Reilly の本を買うことになるでしょう。

No. 480 # MASA 1999/10/20 (水) 05:47
68USERさん、アドバイスありがとうございます。
早速検討してみます。

No. 481 # mm 1999/10/20 (水) 23:02
ご無沙汰してます。
apache の .htaccess のネットマスクについて教えて頂けないでしょうか?

ネットマスクがマスクする部分(ビットが0の部分、または、より右側のビット)
に対応するIPアドレスのビットは、0にするのか1にするのかということ
なのです。

例えば、133.205.78.73〜133.205.78.79 のホストのアクセスを禁止する場合、
(なお、2進と10進は以下の通りです。
        01001 001b = 73d
        01001 111b = 79d
        11111 000b = 248d )

<Limit GET POST>
order allow,deny
allow from all
deny from host
</Limit>

の host の指定方法なんですが、
133.205.78.72/255.255.255.248 又は 133.205.78.72/29
とすべきなのか、それとも
133.205.78.79/255.255.255.248 又は 133.205.78.79/29
なのでしょうか?

http://japache.infoscience.co.jp/japanese_1_3/manual/mod/mod_access.html
には、
> (すなわち 10.1.0.0/16 は 10.1.0.0/255.255.0.0と同じです)
とあるんで、この例では、マスクされるビットが全部0になってますよね
(10.1.0.0の最後の2バイト)。
でも、バイト単位でない場合には、マスクされるビットを全部1にしてる
例もみたものですから↓
http://www.med.teikyo-u.ac.jp/~morikawa/howto/access.html

>allow from 202.253.111.0/255.255.252.0 あるいは 202.253.111.0/22
では、111d = 01101111b ですからマスクされるビットは1になってます。
それとも、バイト単位の指定の場合だけ0にしてもいいのかな?

No. 482 # 68user 1999/10/20 (水) 23:50
多分「どちらでもよい」だと思います。
    133.205.78.72/29 は、
        10000101 11001101 01001110 01001000 のうち、最初の29ビットにマッチするもの
    を表すので、10000101 11001101 01001110 01001??? にマッチし、
    結局 133.205.78.72〜133.205.78.79 にマッチする。

    一方 133.205.78.79/29 は、
        10000101 11001101 01001110 01001111 のうち、最初の29ビットにマッチするもの
    を表すので、10000101 11001101 01001110 01001??? にマッチし、
    結局 133.205.78.72〜133.205.78.79 にマッチする。
ではないでしょうか。ネットマスクの意味からいって、
ネットマスク*外*のビットには、とくに意味はないと思います。

ただ、意味なくビットを立てるのはわかりにくいので、
僕なら 133.205.78.72/29 を選びます。

あと、わかっておられるとは思いますが、133.205.78.72/29 だと
133.205.78.72 自身も含まれますので、
> 133.205.78.73〜133.205.78.79 のホストのアクセスを禁止
にはなりません。

# 133.205.78.72/29 というドメインがあって、133.205.78.72 が
# ゲートウェイアドレスなら構いませんが。

No. 483 # 68user 1999/10/21 (木) 00:05
> # 133.205.78.72/29 というドメインがあって、133.205.78.72 が
> # ゲートウェイアドレスなら構いませんが。
あれ、ホスト部が All zero な IP アドレスってゲートウェイじゃないかも。
133.1.0.0 とか 133.2.0.0 などのIPアドレスって、何て呼ぶんでしたっけ…。

No. 484 # 1999/10/21 (木) 00:17
おお、すばやいご回答、ありがとうございます。

>ネットマスク*外*のビットには、とくに意味はないと思います。
なるほど、分かりました。

>僕なら 133.205.78.72/29 を選びます。
この選び方の違いに過ぎなかったのですね。

>133.205.78.72 自身も含まれますので、
あっ、すいませんm(_ _)m
133.205.78と指定した場合は、133.205.78.1〜133.205.78.255だと
いう記述をどこかで読んでたので、ここでも間違ってマスクされた
ビットが全部0となる場合を除外してしまいました。

>133.1.0.0 とか 133.2.0.0 などのIPアドレスって、何て呼ぶんでしたっけ…。
話に付いて行けない…(苦笑)
IPアドレスもちゃんと勉強しないといけないなぁ…

No. 485 # mm 1999/10/21 (木) 00:18
すいません。
↓の名前を入れ忘れましたm(_ _)m

No. 486 # mm 1999/10/22 (金) 00:56
先の質問に関連して、今回初めて .htaccess について調べたのですが、
どうもよく理解できないことがあるので、教えてください。

order は、allow と deny の評価順序を指定するというような説明があるんですが、
これはどういう意味なのでしょうか?

最初、評価順序がどう影響するのか分からなかったのですが、
「UNIX &インターネットセキュリティ」(O'REILLY)の
    deny,allow は、denyとallowの両方に含まれるhostは許可する
    allow,deny は、denyとallowの両方に含まれるhostは禁止する
という趣旨の記述を読んで、ようやく使い方については分かったのです。

でも、このような作用をなぜ評価順序で説明するのかが理解できないのです。

また、例えば

order allow,deny
allow from hostA
deny from hostB

という設定があった場合、どちらにも含まれないhostC からのアクセスは
どうなるのでしょうか?
allow と deny の双方を指定するってことは、どちらか一方が必ず from all
になるとは限らないですよね(もし、そうなら省略可能にすると思うので)。

No. 487 # 68user 1999/10/22 (金) 01:30
ん…X68000.startshop.co.jp の時計がずれてる。

> 「UNIX &インターネットセキュリティ」(O'REILLY)の
> deny,allow は、denyとallowの両方に含まれるhostは許可する
> allow,deny は、denyとallowの両方に含まれるhostは禁止する
> という趣旨の記述
ん〜、これもどうも…何か違うような。確かに order は
まぎらわしいですねぇ。

例えば order deny,allow は
    1. 最初は全て許可
    2. deny で指定されていたら拒否
    3. allow で指定されていたら許可
という手順で評価しますが、大事なのは
    「deny にマッチしても、その後 allow にマッチした場合は、閲覧を許可する」
ということだと思います。

例えば
    阪大からは弾くけど、阪大の工学部(適当)からのみ許可する場合
    order deny,allow
    deny from 133.1
    allow from 133.1.2

    阪大は許可するけど、阪大の工学部だけは弾く場合
    order allow,deny
    deny from 133.1.2
    allow from 133.1
てな感じでどうでしょう。より一般化すると、
    「許可したホスト以外は拒否」なら
        order deny,allow
        deny from all
        allow from 許可するホスト

    「拒否したホスト以外は許可」なら
        order allow,deny
        allow from all
        deny from 拒否するホスト
でしょうか。上の2つの order を逆にすると、どのホストからも
見られなくなります。

素人考えでは、
    deny from 133.1.2
    allow from 133.1
と書けば、上から順に評価する、ってな風にすればわかりやすいのに、
わざわざ order なんか指定できるようにしたからわかりにくくなった、
と思ってます。もしかしたら、もっと難しい理由があって order が
用意されてるのかもしれませんが。

> どちらにも含まれない hostC からのアクセスはどうなるのでしょうか?
許可されると思います。order mutual-failure なら拒否されます。
# order mutual-failure
#  …allow に指定され、deny に指定されていないホストのみ許可。それ以外は拒否。

No. 488 # 68user 1999/10/22 (金) 01:44
なので、
    阪大は許可するけど、阪大の工学部だけは拒否し、なおかつ
    群馬大は弾くけど、群馬大工学部だけは許可する
という設定は無理じゃないかと思ってます。仮にできるとしても、
2つに分ける必要がありますよね。変なの。

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

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

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