Apache関連 Part5
■ このスレッドは過去ログ倉庫に格納されています
0001攻撃ヘリAPACHE
NGNG前スレ Apache関連 Part4
http://pc.2ch.net/test/read.cgi/unix/1040312647/
Apache関連サイトへのリンクは >>2-5 あたり
0002名無しさん@お腹いっぱい。
NGNGThe Apache HTTP Server Project(本家)
http://httpd.apache.org
Apache HTTP サーバ バージョン 1.3 ドキュメント
http://httpd.apache.org/docs
ディレクティブ一覧 http://httpd.apache.org/docs/mod/directives.html
Apache HTTP サーバ バージョン 2.0 ドキュメント
http://httpd.apache.org/docs-2.0/
ディレクティブ一覧 http://httpd.apache.org/docs-2.0/mod/directives.html
JAPAN APACHE USERS GROUP
http://www.apache.or.jp/
Apache サーバについてのよくある質問と回答 (FAQ)
http://www.apache.or.jp/misc/faq.html
Apache ドキュメント翻訳プロジェクト
http://cvs.apache.or.jp/docs-project/
日本の Apache ユーザーメーリングリスト
http://www.apache.jp/misc/announcelist.html
メーリングリストの過去メールの検索(Namazu による全文検索システム)
http://mm.apache.or.jp/mailman/namazu.cgi
0003名無しさん@お腹いっぱい。
NGNGApache関連 Part4
http://pc.2ch.net/test/read.cgi/unix/1040312647/
Apache関連 Part3
http://pc.2ch.net/unix/kako/1026/10269/1026972599.html
Apache関連 Part2
http://pc.2ch.net/unix/kako/1017/10178/1017812420.html
Apache関連
http://pc.2ch.net/unix/kako/985/985980991.html
WebProg板の関連スレッド
「Apacheの設定を教えてください」
http://pc.2ch.net/php/kako/1003/10037/1003772635.html
「.htaccessの偉い人 Part3」
http://pc2.2ch.net/test/read.cgi/php/1019888234/l50
0004名無しさん@お腹いっぱい。
NGNGオフィシャル Red Hat Linux 7.2 カスタマイズガイド - Apacheの設定
http://www.jp.redhat.com/manual/Doc72/RH-DOCS/rhl-cg-ja-7.2/apacheconf.html
日刊アスキLinux / Linux.com - Security - Apacheのセキュリティ設定入門
http://linux.ascii24.com/linux/linuxcom/2000/02/22/390496-000.html
初心者編 日本語版Apache設定ファイル
http://cc.sakura.ad.jp/apache/beginner/httpd-conf.html
[SMART] ウェブサーバ Apach講座
http://www.rfs.co.jp/server/apache/index.html
ZDNet Japan Helpdesk - Tips Search [Apache]
http://cgi4.zdnet.co.jp/help/namazu/namazu.cgi?query=Apache&submit=%B8%A1%BA%F7&idxname=linuxtips_index&idxname=htmltips_index
@IT 連載記事 「ApacheによるWebサーバ構築」
http://www.atmarkit.co.jp/flinux/index/indexfiles/apacheindex.html
その他有用なリンクを知っておられる方、>>5-10くらいに張ってください。
0005名無しさん@お腹いっぱい。
NGNGSetEnvIf Request_URI "root\.exe" worm
SetEnvIf Request_URI "cmd\.exe" worm
SetEnvIf Request_URI "\.ida" worm
SetEnvIf Request_URI "Admin\.dll" worm
CustomLog /usr/local/apache/logs/warm_log combined env=warm
CustomLog /usr/local/apache/logs/access_log combined env=!worm
default.ida のほうは Error 400 なので、
Host: 付けないでアクセスしてくる事を利用して VirtualHost で
正常に Host: 付けてアクセスしてくるサーバを別のログに隔離すべし。
0006名無しさん@お腹いっぱい。
NGNGいいかげんIIS6いれろ
どこもかしこもアパッチじゃねーか
Netscape-Enterprise/
Zeus
をもっといたわれ
0007名無しさん@お腹いっぱい。
NGNG0008名無しさん@お腹いっぱい。
NGNG> default.ida のほうは Error 400 なので
実際、default.ida の方が多いんだが…
0009名無しさん@お腹いっぱい。
NGNGttp://marc.theaimsgroup.com/?t=105871948400002&r=1&w=2
ttp://nagoya.apache.org/bugzilla/show_bug.cgi?id=21737
0010名無しさん@お腹いっぱい。
NGNG>>9 さん
確かにSuExec使っています。
ちなみに、ゾンビ化するのは
ttp://dream.lib.net/room/
で配布されていた Mobile Jumper Ver.1.01 です。
ご紹介いただいたpatch試してみます。
001110
NGNGttp://nagoya.apache.org/bugzilla/showattachment.cgi?attach_id=7407
こちらのpatchでゾンビ化の件は解消出来たようです。
皆が気づく不具合なら、すぐに修正リリースが出るだろうと思い
半ば諦め気味でした。
ありがとうございましたm(_ _)m
0012名無しさん@お腹いっぱい。
NGNG304 Not Modified を返すことはせずに、必ず 200 OK で返してやる
設定方法はありませんか?
0013名無しさん@お腹いっぱい。
NGNG/home/user/public_html/index.cgi
にあって、
http://server/~user/index.cgi
ではちゃんと動くとしよう。
ここで、
<VirtualHost *>
SuexecUserGroup user user
ServerName user
DocumentRoot /home/user/public_html/
<Location />
AllowOverride All
Options ExecCGI
</Location>
</VirtualHost>
と書いて
http://user/index.cgi
とアクセスすると error.log に
Premature end of script headers: index.cgi
と記録される。もちろんこの状態で
http://server/~user/index.cgi
はちゃんと動く。
なにが原因なんだろう。
0014名無しさん@お腹いっぱい。
NGNG0015名無しさん@お腹いっぱい。
NGNGsuEXEC のログは見たか?
0016名無しさん@お腹いっぱい。
NGNGおっと、それ忘れてた…
uid: (1000:user) gid: (1000:1000) cmd: index.cgi
command not in docroot (/home/user/public_html/index.cgi)
だそうだ。
そういえばそんな設定あったな、と思って確認したら
--with-suexec-docroot=/usr/local/www/data
--with-suexec-userdir=public_html
で configure してたよ。
なるほどなぁ、そういうことか。サンクス。
0017名無しさん@お腹いっぱい。
NGNG<VirtualHost *>
ServerAlias *.domain.com
VirtualDocumentRoot /home/%1/public_html/
</VirtualHost>
てな感じでやってるんですが、これでsuEXECって有効に出来ます?
0018名無しさん@お腹いっぱい。
NGNGデフォルトの状態では tomcatのインストール先の
./webapps/examples/WEB-INF/classes ディレクトリにあるServletに対し
http://www.hoge.com/examples/servlet/ファイル名 という形でアクセスをしますが
これを個々のユーザのディレクトリに servlet というディレクトリを作って
http://www.hoge.com/~ユーザ名/servlet/ファイル名 でアクセスをさせようと思っていますが
うまくいきません。
現状ではtomcatとapacheの連携はできていて、正常に動作はしています。
設定方法をご教授ください。
環境は
redhat 7.3
apache-1.3.27-2
tomcat-4.1.24
です。
よろしくお願いします。
0019名無しさん@お腹いっぱい。
NGNG実在するドメインを例示に使うな (お約束) 。
002018
NGNG設定例などでよく使われているドメインなので実在するとは思いませんでした。
申し訳ありません。
0021名無しさん@お腹いっぱい。
NGNGちっとも圧縮転送されないってトラブルに遭った人いますか?
0022名無しさん@お腹いっぱい。
NGNG002321
NGNGうん。っていうか、テストで作った perl のクライアントだから Compress::Zlib 使って対応している。
で、サーバーのプラットフォームが win32 なんだよね。ここ unix 板だし。
だから、いきなり質問する前に同じトラブル経験したいる人いるか聞いてみたの
0024名無しさん@お腹いっぱい。
NGNGログ見せてよ
環境ももっと晒して
002521
NGNG前 WebProg に書いたんだけど、反応無かったからはんば諦めてるw
あと、gzip のログ見てて思ったんだけど、accept-encoding ヘッダーを
クライアントが出さなくても gzip がログ吐いてるな…
http://pc2.2ch.net/test/read.cgi/php/1043851302/116-118
0026名無しさん@お腹いっぱい。
NGNG0027名無しさん@お腹いっぱい。
NGNG002821
NGNGhttp://pc.2ch.net/test/read.cgi/sec/1056746698/4
> Q. Jane で過去ログが文字化けします。
> A. HKEY_LOCAL_MACHINE\SOFTWARE\Agnitum\Outpost Firewall\EnableGzipEncoding
> の値を1にする
OutPost が勝手にヘッダー取り除いてたのが原因だった…。
スレ汚しすいませんでした(´д⊂ヾ
0029名無しさん@お腹いっぱい。
NGNG0030名無しさん@お腹いっぱい。
NGNG0031スレ違いスマソ
NGNG非限定主格の語尾は[un]だが、これを限定対格にすると[a]になる。
003221
NGNG0033名無しさん@お腹いっぱい。
NGNG試してみてくださいな。
0035名無しさん@お腹いっぱい。
NGNG0036名無しさん@お腹いっぱい。
NGNG0037名無しさん@お腹いっぱい。
NGNG0038名無しさん@お腹いっぱい。
NGNG0039名無しさん@お腹いっぱい。
NGNG0040名無しさん@お腹いっぱい。
NGNGsuexec を導入すると、これはこれで動くんですが、
~user 以外のところにある CGI は httpd の動作ユーザと同じ権限で動いてしまいます。
httpd と CGI の権限を変えるために SuexecUserGroup でユーザ/グループを
指定すると、今度は public_html 以下にある CGI が動かなくなります。
どうやら SuexecUserGroup を使うと public_html の存在が無視されて
しまうようなんですが、共存することはできないんでしょうか。
configure 時に --with-suexec-docroot をうまくごまかせば可能なんですが、
これは suExec のセキュリティモデルをぶっ壊す行為なんでやりたくないです。
0041名無しさん@お腹いっぱい。
NGNG具体的にどういう動作を希望してるんでしょうか?
各ユーザーのディレクトリ以下で、各ユーザーの権限で命令実行させるのが
SuExec導入の目的だと思うのですが、、、
運用方法が適切でないため、"suExec のセキュリティモデルをぶっ壊す行為"
をしているような気がします。
0042名無しさん@お腹いっぱい。
NGNG漏れはセキュリティモデルを緩めて(ぶっ壊して?)
--with-suexec-docroot=/home としている。
0043名無しさん@お腹いっぱい。
NGNG(1)http://example.net/ 以下にある CGI は Apache とは別の権限で実行
(2)ただし、http://example.net/~user/ 以下の CGI に限っては各ユーザの権限で実行
所望するのは(1)かつ(2)の動作。
suexec を有効にしてコンパイルした素の状態では(2)はできるが(1)ができない。
SuexecUserGroup を設定すると(1)が可能になるが、かわりに(2)が動かなくなる。
そんなにおかしなことですかね?
0044名無しさん@お腹いっぱい。
NGNGそれだと /home/hoge/public_html/ 以下にある CGI だけじゃなく、
/home/hoge/bin/ 以下とか、本来外部に非公開の場所にあるものまで
含まれてしまうわけで、http://localhost/manual/suexec.html で言うところの
>ディレクトリが Apache のドキュメントツリー内にあるか?
に反してしまうんですよね。
0045名無しさん@お腹いっぱい。
NGNGいいえ。
0046名無しさん@お腹いっぱい。
NGNGsuexec のチェックルーチンは素通りするよ。
httpd.conf をふつーに設定してあれば、suExec のセキュリティモデルとは無関係に、
Apache 本体の方で制限がかかるためにアクセスされないというだけで。
004742
NGNG本来、>>42のように docroot を広げるのは好ましい設定ではないが、
適切な設定を施してあれば、まぁ、実用上はあまり問題にならない。
セキュリティホールを突かれた場合には、どうなるか分からないけどね。
0048名無しさん@お腹いっぱい。
NGNGローカルのユーザがたとえばシェルから
% suexec user group /pass/to/command
のようにして実行してしまうのを防ぐための指定。
もともと CGI 用に置いたものならば、仮にそういう起動のされかたをしても
致命的な危険はないだろうというのが前提にある。
よって、それ以外のコマンドが置かれる可能性のあるディレクトリまで
含めてしまうのは、やはりやめた方がいい。
もっとも、現実には suexec を実行したユーザが --with-suexec-caller で
指定したものと一致しているかどうかのチェックにひっかかるはずので、
これでも危険はほとんどない。しかし、
>セキュリティホールを突かれた場合には、どうなるか分からないけどね。
apache に穴がなく設定が万全であったとしても、apache と同じ権限で動く
別のデーモンに外部から任意のコマンド実行を許すセキュリティホールがあった場合、
その穴から suexec を通して余計な権限を取られてしまうことになる。
0049名無しさん@お腹いっぱい。
NGNG> (1)http://example.net/ 以下にある CGI は Apache とは別の権限で実行
> (2)ただし、http://example.net/~user/ 以下の CGI に限っては各ユーザの権限で実行
簡単な例を憶測すると,あるユーザ(おそらく管理者が使っているユーザ)の
~/public_html/(またはこれに類する専用ディレクトリ)をドメインの/にしつつ,
他のユーザでも/~$user/以下で普通にSuEXECさしてぇってんだ( ゚Д゚)ゴルァ!!
ということでしょうかね?
個人で運用しているサーバであればそのような要求は出るかもしれませんが,
少し広い意味で考えるとやはりイレギュラーな要求だと思います.
よって,本来であればどのように設定してもこのような挙動は
とるべきではないような気はします...もとい,気がするだけです.
というのも,自分もこのような挙動を実際取らせているので
あまり大きなことはいえないからです;
多くのこのような要求を持つ人は1.3系で >>42 の設定
をする以外に方法を見出せていないんじゃないかな.
ちなみにバージョン忘れたけど2.x系ではできなかった覚えがあります.
本要求のためだけに1.3.xに戻してからかれこれ3ヶ月くらい経つし,
できるようになったのですかね?最近は;;;
0050名無しさん@お腹いっぱい。
NGNG0051名無しさん@お腹いっぱい。
NGNGこういう、punctuation がちょっとおかしい香具師を見ると
鬼の首取ったように叩きはじめる DQN って激しくうざいな。
0052名無しさん@お腹いっぱい。
NGNG0053名無しさん@お腹いっぱい。
NGNGDocumentRoot /home/www/data
で VirtualHost 全く使ってない状態です。
tikiをサーバの http://server/tiki/tiki.cgi
つまり /home/www/data/tiki/tiki.cgi
に設置して、動作するようにしました。
tiki は tiki.cgi?n=xxx とやってアクセスする事で、
複数の系を持つことができます。これを RewriteRule 使って
http://server/tiki/xxxx/tiki.cgi
(tiki.conf の設定もして)で basic 認証付きでアクセスできるようにしました。
ここまでは正常に動作することをページ作ったりして確認済みです。
で、ここからが本題なのですが、
元の http://server/tiki/tiki.cgi への直接アクセスを禁止したいのです。
つまり、全て RewriteRule で URL パスした物のみアクセス許可したいわけです。
で、次レスの用に記述してみましたが、全然だめです。
RewriteRule または Location を使って禁止できるでしょうか。
005453
NGNGRewriteEngine on
RewriteBase /tiki
RewriteRule ^([^/]+)/tiki\.cgi\??(.*)$ /home/www/data/tiki/tiki.cgi?n=$1&$2 [NE,QSA,L]
RewriteCond %{REQUEST_URI} ^/tiki/tiki\.cgi
RewriteRule ^tiki\.cgi - [F,L,NS,S=1]
</Directory>
<LocationMatch /tiki/[^/]+/tiki.cgi>
AuthUserFile /home/www/admin/htpasswd.tiki
AuthGroupFile /dev/null
AuthName "You need to login"
AuthType Basic
require valid-user
</LocationMatch>
005553
NGNGRewriteCond 以下を訂正
RewriteCond %{REQUEST_URI} ^/tiki/tiki\.cgi
RewriteRule ^tiki\.cgi - [F,L,NS]
そのほか、
<Location> 等を使って禁止してみようとしたのですが
うまくいきません。
どうも、認証をした後に、Rewrite や Location などをもう一回チェックして回っているようなのです。
RewriteRule の L フラグはあっても無くても一緒みたいな感じです。
RewriteRule %{IS_SUBREQ} false
等も試してみましたが、ログには INTERNAL REDIRECT とあって、
SUBREQ とは違うようです。
RewriteRule ^([^/]+)/tiki\.cgi\??(.*)$ /home/www/data/tiki/tiki.cgi?n=$1&$2 [NE,QSA,L,E=XX:1]
と、環境変数を設定して、
RewriteCond %{ENV:XX} 0
とかやっても無理でした。
0056名無しさん@お腹いっぱい。
NGNG???
0058名無しさん@お腹いっぱい。
NGNGDirectory ディレクティブの外側で、
AddOutputFilter INCLUDES .shtml
Directory ディレクティブの内側で、
Options Includes SymLinksIfOwnerMatch
XBitHack on
AllowOverride FileInfo Indexes
にしましたが、悩んでいることは、
その1
hoge.shtml にて
<!--#exec cmd="./cgi-bin/aaa.pl" -->
などと書いても、コマンドの dirname が無視され、hoge.shtml と同じ
ディレクトリ内にある ./aaa.pl が実行される。
なので、カレントディレクトリ以外のコマンドを使用する下の類はダメ。
<!--#exec cmd="/bin/ls" -->
また、カレントディレクトリのコマンドでも、
<!--#exec cmd="aaa.pl " -->
のように空白が入るとダメ。
(続く)
005958
NGNGその2
.htaccess に AddCharset を書くと、XBitHack の設定が無視される?
AddCharset に加え、AddOutputFilter INCLUDES .html を書けば
hoge.html で SSI 使えますが、644 でも使えますから、
せっかくの XBitHack の意味がないわけで…。
HTTP サーバ扱うのは初めてなので、重大な勘違いがあるかも知れません。
何かご存知の方、アドバイスよろしくおねがいします。
あと、この辺が解決したら、穴埋めのパッチを当てる予定でいます。
0060名無しさん@お腹いっぱい。
NGNG006158
NGNG今、
% cat > ttt.cgi
#! /usr/hoge/perl
$|=1;
print "Content-Type: text/html\n\n";
print "aaa";
sleep 20;
^D
的なスクリプト書いて、ps とってみたら、suexec されてました。
ちうわけで、suexec 周りのドキュメント読んでみます。
THX >>60
006253
NGNGなぜだー
LocationMatch で auth して RewriteRule すると
INTERNAL REDIRECT で環境変数が無かったことになるし・・・
試しに RewriteRule で簡単な奴作ったら
存在する CGI が INTERNAL REDIRECT の結果 404 になるし
ログに表示されているファイル名をコピペで ls してもちゃんと表示されるのに。
何が悪いのかわからなくなってきた
0063名無しさん@お腹いっぱい。
NGNG0064名無しさん@お腹いっぱい。
NGNG0065名無しさん@お腹いっぱい。
NGNGってのありましたっけ?
0066無料動画直リン
NGNG0067名無しさん@お腹いっぱい。
NGNG(・∀・)ニヤニヤ
006858
NGNG% httpd -l
Compiled in modules:
core.c
prefork.c
http_core.c
mod_so.c
で、suexec_module とは出力されてないですが、apachectl と同じディレク
トリに suexec があるし、ps するとプロセスの owner は nobody ではなく、
CGI スクリプトの owner です。
というわけで、suEXEC が使われてるんですが、そのまま放っておく予定です。
Linux では仕様上 setuid したスクリプトが動かないらしいですが、
setuid した CGI 動かしたいけど suidperl 入れるのもなんだしなー、
と思ってたところでもありました。必要なコマンドはコピーすればいいし。
006958
NGNG> で、suexec_module とは出力されてないですが、apachectl と同じディレク
suexec_module → mod_suexec
0070あぼーん
NGNG0071名無しさん@お腹いっぱい。
NGNGCで作った掲示板CGIプロセスが、消えないで残ってしまうようなんです。
("ps ax"で括弧つきで表示されます。)
Apacge 1.3.26 では、そんなことはなかったのですが。
バージョンアップの仕方が悪かったのでしょうか。
それともバグあり?
0072名無しさん@お腹いっぱい。
NGNGsuexec 使ってんだろ?
もしそうならこのスレを最初から読み直せ。
0073名無しさん@お腹いっぱい。
NGNGバグありです。
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=21737
0074名無しさん@お腹いっぱい。
NGNGそんな訳でおいらは、1.3.26 を使ってます。
新しいバージョンがリリースされてもすぐに使わない。
使いたかったら、テスト環境で使う。
0075名無しさん@お腹いっぱい。
NGNGそういうやり方は賢明だとは思うのですが、
こういう事情でバージョンアップしました。
http://www.ipa.go.jp/security/news/news.html
「 Apache 1.3系に、複数の脆弱性があり、ログの取得が中断させられたり、
サービス妨害攻撃(DoS攻撃)を受ける可能性があります。
Apache 1.3.28 へのアップグレードを推奨します。」
まさかこんな問題あり版をリリースするなんて、どうなってるんだろう。
0076名無しさん@お腹いっぱい。
NGNGやったことないけどちゃんと動くでしょ。たぶん。
0077名無しさん@お腹いっぱい。
NGNG0078名無しさん@お腹いっぱい。
NGNGんー、影響受けるのはWin32とかだけだからいいよべつに。
^Zとかそのへん。
0079あぼーん
NGNG0080名無しさん@お腹いっぱい。
NGNGDeny from all
ってタコなアクセス制限を書いている人って他にいます?
0081名無しさん@お腹いっぱい。
NGNGOSはRedHatLinux7.3deApacheは1.3.27です。
7.3でApacheが1.3.27なのですが、バーチャルホストについて質問があります。
(サーバに関することなので、すれ違いならすみません)
例えば、サーバのドメイン名がtest111.comでルートが
/home/root/public_html/
だとします。で、bbs.test111.comのバーチャルホストを
/home/bbs/public_html/
に設定したとします。
しか、http://test111.com/~bbs/ではファイルが問題なく表示されるのに
http://bbs.test111.com/ではCGIエラーが発生したり、ファイルが表示されなかったりします。
これは何が原因だと言えますでしょうか?
ちなみに、Apacheのバーチャルホストは
<VirtualHost *>
ServerAdmin root@test111.com
DocumentRoot /home/bbs/public_html/
ServerName bbs.test111.com
</VirtualHost>
にしています。
0082名無しさん@お腹いっぱい。
NGNGつーかFAQ。つーかerror_logプリーズ。suEXECの設定が原因に200ペリカ。
■ このスレッドは過去ログ倉庫に格納されています