Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

<Location>でのAllow,Deny

7 views
Skip to first unread message

NAKAJI Hiroyuki

unread,
May 21, 2007, 5:34:31 AM5/21/07
to
中治@鳥取です。

ApacheとZope/Ploneを組み合わせて、ささやかに研究室のウェブページを公開し
ておるのですが、アクセス制限を少しだけ緩めようとしてややこしくなりました。

http://webserver/restriced/
は制限したいが、やはり、その一部の
http://webserver/restriced/allowed
は無制限にしたい

## 学生向けの資料(/restricted)は学内に制限したいが、そこにある「シラバス」
## (/restriced/シラバス) は公開でもいいんじゃないか、ということなんです。

と思いましたが、httpd.confに

<Location "/restricted/allowed">
Order Allow,Deny
Allow from all
</Location>

<Location "/restricted/">
Order Deny,allow
deny from all
allow from host
allow from ipaddr/mask
</Location>

と書いたところ、hostやipaddr/mask以外からは、/restricted/allowed は 403
エラーになりました。これは、

1. そういうものであるから、allowed なコンテンツは、/restricted の外に置
くのがよい

2. httpd.conf の書き方が甘いよ、こうすれば…

3. その他

ではどれでしょうか? Apache httpdのバージョンは2.0.59です。

$ httpd -v
Server version: Apache/2.0.59
Server built: Dec 1 2006 18:59:06

今は、間をとって、

<Location "/restricted/">
Order Deny,allow
deny from all
allow from host
allow from ipaddr/mask
allow from .ac.jp
</Location>

としています。
--
NAKAJI Hiroyuki (中治 弘行)

Yoshitaka Ikeda

unread,
May 21, 2007, 5:46:17 AM5/21/07
to
NAKAJI Hiroyuki <nak...@kankyo-u.ac.jp> writes:

> 中治@鳥取です。


>
> と書いたところ、hostやipaddr/mask以外からは、/restricted/allowed は 403
> エラーになりました。これは、
>

> 3. その他

.htacessを使って制御してみてはどうでしょうか。
--
I LOVE SNOOPY! でつ
Yoshitaka Ikeda mailto:ik...@4bn.ne.jp
My Honeypot: ho...@4bn.ne.jp <-don't send this address

NAKAJI Hiroyuki

unread,
May 21, 2007, 5:53:22 AM5/21/07
to
中治です。ありがとうございます。

>>>>> In <86tzu6p...@bsd2.4bn.ne.jp>
>>>>> Yoshitaka Ikeda <ik...@4bn.ne.jp> wrote:

> > 中治@鳥取です。
> >
> > と書いたところ、hostやipaddr/mask以外からは、/restricted/allowed は 403
> > エラーになりました。これは、
> >
> > 3. その他

> .htacessを使って制御してみてはどうでしょうか。

それが、問題のコンテンツは Plone のものなので、.htaccess を置く「ディレ
クトリ」が存在しないのです。だから、<Location>で何とかならないかとがんばっ
ています。

…という肝心なことを元記事に書き忘れていました。すみません。

Shinji KONO

unread,
May 21, 2007, 9:33:47 AM5/21/07
to
河野真治 @ 琉球大学情報工学です。

In article <87sl9qy...@roddy.4407.kankyo-u.ac.jp>, NAKAJI Hiroyuki <nak...@kankyo-u.ac.jp> writes


> ## 学生向けの資料(/restricted)は学内に制限したいが、そこにある「シラバス」
> ## (/restriced/シラバス) は公開でもいいんじゃないか、ということなんです。

僕は、もうめんどくさくなって「公開して良いもの以外、WWWに置
くな」って感じです。なので、Location による制御はもうやって
ません。(実は、嘘だが...)

認証が必要なものは https / pam module 経由です。

---
Shinji KONO @ Information Engineering, University of the Ryukyus
河野真治 @ 琉球大学工学部情報工学科

Yasushi Shinjo

unread,
May 23, 2007, 6:36:30 AM5/23/07
to
新城@筑波大学情報です。こんにちは。
ちょっと思いついたことを少し。試していません。

In article <87sl9qy...@roddy.4407.kankyo-u.ac.jp>
NAKAJI Hiroyuki <nak...@kankyo-u.ac.jp> writes:
> <Location "/restricted/allowed">
> <Location "/restricted/">

順番を入れ替えるとどうなりますか?

< <Location "/restricted/">
< <Location "/restricted/allowed">

> 1. そういうものであるから、allowed なコンテンツは、/restricted の外に置
> くのがよい

alias で飛ばすとか。

<Location> ではなくて、<LocationMatch> を使って正規表現で頑
張る手もあるかもしれません。

<LocationMatch "^/restricted/(?!allowed)>
<LocationMatch "^/restricted/allowed.*">

Apache の正規表現は、perl の PCRE で、否定が書けそうなんだけ
れど、よく分かりません。

\\ 新城 靖 (しんじょう やすし) \\
\\ 筑波大学 電子・情報       \\

NAKAJI Hiroyuki

unread,
May 23, 2007, 10:37:22 PM5/23/07
to
中治@鳥取です。

>>>>> In <YAS.07Ma...@kirk.is.tsukuba.ac.jp>

>>>>> y...@is.tsukuba.ac.jp (Yasushi Shinjo) wrote:
> 新城@筑波大学情報です。こんにちは。
> ちょっと思いついたことを少し。試していません。

ありがとうございます。

> In article <87sl9qy...@roddy.4407.kankyo-u.ac.jp>
> NAKAJI Hiroyuki <nak...@kankyo-u.ac.jp> writes:
> > <Location "/restricted/allowed">
> > <Location "/restricted/">

> 順番を入れ替えるとどうなりますか?

変わりありませんでした。

> <LocationMatch "^/restricted/(?!allowed)>
> <LocationMatch "^/restricted/allowed.*">

> Apache の正規表現は、perl の PCRE で、否定が書けそうなんだけ
> れど、よく分かりません。

Zope+Ploneが実体で、Apache httpdのRewriteを使っているのですが、具体的に

http://d4407.kankyo-u.ac.jp/8b1b7fa9306e8cc76599/25e74751f/%E5%BB%BA%E7%AF%89%E6%A7%8B%E9%80%A0%E3%81%AE%E5%BD%A2%E3%81%A8%E5%8A%9B/%E3%82%B7%E3%83%A9%E3%83%90%E3%82%B9/

http://d4407.kankyo-u.ac.jp/8b1b7fa9306e8cc76599/%E3%82%B7%E3%83%A9%E3%83%90%E3%82%B9

を見せてもよいが、

http://d4407.kankyo-u.ac.jp/8b1b7fa9306e8cc76599/25e74751f

はダメ、としたい、ということです。Ploneのワークフローを使う方法もあるの
ですが、Apache httpdで何とかなるものなら、そっちのほうが楽かなぁと思いま
して…。

そして、

<LocationMatch "^/8b1b7fa9306e8cc76599/.*/%E3%82%B7%E3%83%A9%E3%83%90%E3%82%B9">


Order Allow,Deny
Allow from all

</LocationMatch>

<LocationMatch "^/8b1b7fa9306e8cc76599/.*">
Order Deny,Allow
Deny from all
Allow from localhost
Allow from .kankyo-u.ac.jp
Allow from 192.168.0.0/16
Allow from 10.0.0.0/8
</LocationMatch>

## 192.168/16と10/8は学内のプライベートアドレスです。

としてみたところ、この順序を変えても、

[Thu May 24 11:21:46 2007] [error] [client a.b.c.d] client denied by server configuration: proxy:http://localhost:8080/VirtualHostBase/http/d4407.kankyo-u.ac.jp:80/4407/VirtualHostRoot/8b1b7fa9306e8cc76599/\xe3\x82\xb7\xe3\x83\xa9\xe3\x83\x90\xe3\x82\xb9/

となりました。たしかに、\xe3\x82... は %E3%82... ではありませんので、理
解できます。

…というわけで、河野さんおすすめの「見られて困るようなものは WWW に置か
ない」という方針に切り替えることにしました。

## 当初の目的を達成するための方法は、引き続き調べてみます。

0 new messages