Apache関連 Part5
■ このスレッドは過去ログ倉庫に格納されています
0001攻撃ヘリAPACHE
NGNG前スレ Apache関連 Part4
http://pc.2ch.net/test/read.cgi/unix/1040312647/
Apache関連サイトへのリンクは >>2-5 あたり
0261254
NGNGまぁ、そうですね。
いまは数分おきにsource-ipを route add xxxx reject してるんですけど
ソースも踏み台なのか、毎回source-ipちがうんですよね。
なので reject もあまり意味なさそう・・・。
あとオープンプロキシ云々は、mod_proxyを組み込まないでコンパイルしなおした
のと、そういう proxy要求なリクエストを mod_rewrite で nph-cgi に持って
いっているので大丈夫です。
できればatakkerのブラックリストに載せてもらおうかと思って、そういうアクセス
に対してはブラクラを返してたりするんですけど全然減らないですね。
http_user_agentがIEだったりするんですけどあれはfakeなのかな・・・。
0262名無しさん@お腹いっぱい。
NGNG*.ar - - [04/Nov/2003:08:34:19 +0900] "0x040x01" 401 401
こういうのがいくつか来てました。
25番に繋ごうとしてるのでSMTPのトンネル狙いだろうと思うのですが、下の方はなんでしょうか?
0x040x01は実際のログだとエスケープされてません。
0263名無しさん@お腹いっぱい。
NGNG調子に乗って反撃なんかしてたら自分も同罪だぞ
0264名無しさん@お腹いっぱい。
NGNG0265名無しさん@お腹いっぱい。
NGNG0266名無しさん@お腹いっぱい。
NGNGういっす。
どうせ、アクセス元に攻撃しても単なる踏み台なんだろうから意味無いですしね。
0267名無しさん@お腹いっぱい。
NGNG>>266=>>263だったりするのでしょうか。ジサクジエーン(・∀・)。
私は、反撃なんかには興味ありません。
0x04 0x01 というのをナマで送ってる意味が俺の乏しい知識だと見当がつかないので不思議に思っただけです。
あと、これで Apache が BadRequest を返してないってのもちょっとびっくりしました。
いつくるか分からんからパケットダンプし続けるわけにもいかないし。
0269名無しさん@お腹いっぱい。
NGNGUnauthoirzed って事は、BadRequestを返すわけにもいかんでしょ。
承認が先に無いと意味が無いですよ。
0270名無しさん@お腹いっぱい。
NGNG正直スマンカッタ
>>269
なるほど、そういうことですか。手っ取り早く規制すために全体にBasic認証かけちゃってたもので。
401出させる前のログを辿ってみたら、同様のリクエストを見つけました。
*.ar - - [21/Oct/2003:08:33:36 +0900] "0x040x01" 501 204
501 Not Implementedになるのか。そりゃそうですね。
しかしこのリクエストは何を狙ってるのか謎です。
0271名無しさん@お腹いっぱい。
NGNGにアクセスされた場合、実際には
http://www.example.com/index.php?cat=hoge
にアクセスしてるように表示させたいと思っています。
(要は、com/以下の、途中のパス名はどうでもよく、URIの最後の/と/の間の文字列を受け取って
実際には、http://www.example.com/index.php?cat=その文字列
を表示させたく思ってます。
自分で調べたところ、
●mod_rewrite を使う
●たぶん日本語で一番わかりやすそうなサイトは http://japache.infoscience.co.jp/rewriteguide/
と、分かったのですが、実際の表現方法が分かりません。
httpd.confに、
<VirtualHost xxx.xxx.xx.xx:80>
SSLDisable
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteOptions inherit
#2003-11-07 20:08
RewriteRule ^([^/]*)/$ /index.php?cat=$1 [R]
</IfModule>
</VirtualHost>
と、RewriteRuleの1行を加えて、Apacheを再起動させたのですが、結果は変わらずでした。
正しくはどう書けばよいのでしょうか・・・?正規表現が間違っているのでしょうか?
なお、環境は、FreeBSDのレンタル共有サーバ(ただし、実質専用サーバ)、というか、
このサービス使ってます⇒http://vps.rapidsite.jp/
0272271
NGNGmod_rewrite.c
が表示されてませんでした・・・。
おかしいな・・・ちょっと手前に戻って、勉強しなおしてきます。
0273271
NGNGデフォルトで、httpd.confに、
#LoadModule rewrite_module libexec/mod_rewrite.so
とコメントアウトされてる行があったので、
そのコメントをはずして、
apacheを再起動させたのですが・・・
やはり、
「httpd -l」したら
mod_rewrite.c
が見あたらない・・・
/# find . -name mod_rewrite.so -print
./usr/local/apache/libexec/mod_rewrite.so
と、モジュールの存在は確認済みなのですが・・・
この場合は、Apacheをリコンパイルする必要はないですよねぇ・・・?
初歩的なとこで勘違いしてるでしょうか?
0274名無しさん@お腹いっぱい。
NGNGApacheリコンパイルしないとダメだよ。
./configure --enable-rewrite
make
make install
こんな感じ。
0275274
NGNGごめん、よく読んでなかった。
LoadModule rewrite_module /usr/local/apache/libexec/mod_rewrite.so
これは書いてるの?
0276274
NGNG0277名無しさん@お腹いっぱい。
NGNGDSOでつくってたら -lじゃみれない。mod_so.cが見えるだけ。
アクティブなモジュール知りたかったら /server-info みんしゃい。
0278271
NGNGすいません、正規表現が変だったようで、
RewriteRule ([^/]*)/?$ /index.php?cat=$1
としたら、うまくいきました。
ただ、そしたらこんどは、
http://www.example.com/phpMyAdmin/
みたいなものまでこれをを解釈してしまうようになってしまいました・・
(そりゃそうだ)
ちとスレ違い気味なので、正規表現スレ逝ってきます。
0279初心者
NGNGtomcat + mod_rewrite を使用したいのですが・・・。
mod_rewrite で
RewriteRule abc/TEST/([0-9]+)/index.html abc/TEST.do?foo=$1
として
http://www.example.com/abc/TEST/122/index.html
へアクセスすると、
ログからは、apacheは abc/TEST.do と foo=122 に分割してくれるのですが
abc/TEST.do ファイルを Apache の DocumentRoot で探して、
当然そんなファイルは存在しないのでエラーを返してしまいます。
RewriteRule で http://www.example.com/abc/TEST.do?... みたいに
フルアドレスを書けば一応アクセスは出来るのですが、REDIRECTに
なってしまい、意味がありません・・・。
どうしたらいいのでしょうか?
0280初心者 279
NGNGTEST.do というのは Java Servlet です。
0281名無しさん@お腹いっぱい。
NGNG> どうしたらいいのでしょうか?
どうしたいのか?
0282名無しさん@お腹いっぱい。
NGNGTomcat Context の /abc/TEST.do へ ユーザーが
アクセスできるようにしたいのです。
0284初心者 279
NGNG>ProxyRequests on にする必要はないよ
必要はないよ・・・とは、どういうことでしょうか?
ProxyRequests on にはしておりません。
以上、宜しくお願い致します。
0285初心者 279
NGNG出来ました!!!
本当にありがとうございます!!!
うひょ〜、すっげ〜、うれしいです!!!
3日かかっても分からなかったので諦めそうだったのですが・・・。
初めから聞いておけばよかったです!
0286昼勤(個人) ◆6IhGf2WyCA
NGNG==========
特に夜10時から
深夜3時までが
込み合うので
常時接続・連続投稿
はできるだけ控てください
2chブラウザで見ると負担が少なくなります
2chブラウザ↓
かちゅーしゃ
http://members.jcom.home.ne.jp/katjusha/
0287名無しさん@お腹いっぱい。
NGNG板違い
0288名無しさん@お腹いっぱい。
NGNG---
mod_throttleにて転送量の制限をしているのですが
htmlやjpg等は拒否の対象外となってしまます(転送量のカウントはされている)。
設定は
ThrottlePolicy volume 1M 300
としてテストしてみたのですが、転送量1MBを超えた場合、コンテントタイプが不明っぽい
abc.binとかへのアクセスは拒否されるようになるのですがhtmlやjpg,tgz等へは普通にアクセス出来てしまいます。
この動作は
Document設定:htmlやイメージは拒否対象から除外する
ex. ThrottlePolicy document 1M 300
にあたると思うのですがvolumeでも適用されてしまうのでしょうか?
---
色々検証したところどうやらAddtypeで定義されている物に関しては転送量をオーバーした後も
正常にアクセス出来てしまうようです。
RedHat7.3 mod_throttle-3.1.2-5にて運用しています。
0289名無しさん@お腹いっぱい。
NGNGapache-2.0.48 -> apache-2.0.48_1
に上げたんだけど、httpd-std.conf 中の
Listen 80
が
Listen
に変更されてたので、運用する httpd.conf にも適用した
ところ、Syntax error になった。
どういう意図で httpd-std.conf の変更があったのかなぁ...
0290名無しさん@お腹いっぱい。
NGNGを取得するにはどうすればいいのですか?
0291名無しさん@お腹いっぱい。
NGNG$ENV{'DOCUMENT_ROOT'} に入ってる値でいい?
0292名無しさん@お腹いっぱい。
NGNGapache では
$ENV{'DOCUMENT_ROOT'}
にいつもドキュメントルートが設定されているものなんでしょうか?
もしそうならばそれで解決なんですが
0293名無しさん@お腹いっぱい。
NGNG0294名無しさん@お腹いっぱい。
NGNGttp://httpd.apache.org/docs/mod/mod_cgi.html
0295名無しさん@お腹いっぱい。
NGNG1.3.28のCGI関係の問題には懲りた・・。
0296名無しさん@お腹いっぱい。
NGNG0297名無しさん@お腹いっぱい。
NGNGAnnouncementぐらい嫁!
0298名無しさん@お腹いっぱい。
NGNG・・・・。
0299名無しさん@お腹いっぱい。
NGNGそれでも、ここにそんなこと期待してちゃだめだよ。。。。2chなんだからさ。
0300名無しさん@お腹いっぱい。
NGNG画像とか表示されないときはどんな事が考えられます?
それとApache2に関するおすすめ本あったら教えて欲しいです
とくにチューニングとかそのあたりについて書いてある系
0301名無しさん@お腹いっぱい。
NGNGApache側の問題なの? Apache 1.3.xでは発生しないってこと?
0302名無しさん@お腹いっぱい。
NGNGログくらい見れ
0303名無しさん@お腹いっぱい。
NGNGわかればいいんですけど・・・わからんです。
LOGみてもエラーログには画像に関するエラーはなし
アクセスログには普通に200とか304とかのしかでてないです
回線とかCPU負荷で画像が表示されたりされなかったりってありますか?
0304名無しさん@お腹いっぱい。
NGNG200 とかの後ろのサイズはマトモな値?あとプロキシが腐ってるとか?
0305名無しさん@お腹いっぱい。
NGNGタイムアウトしてるだけで
問題が回線ならともかく、
負荷等に起因するなら、その原因を探さないと
0306名無しさん@お腹いっぱい。
NGNGapache 1.3.29 でリバースプロキシを組もうとしているのですが、なぜか画像はリバースプロキシのキャッシュから読み込めて、
HTML のほうがキャッシュから読めず、常に Web サーバのほうからデータを取ってきてしまいます。
- 画像の場合
HEAD /image/sample.gif HTTP/1.0
HTTP/1.1 200 OK
Date: Fri, 14 Nov 2003 14:22:07 GMT
Server: Apache/1.3.29 (Unix)
Last-Modified: Mon, 27 Oct 2003 05:20:11 GMT
Accept-Ranges: bytes
Content-Type: image/gif
ETag: "2f2eb6-2a7f-3f9c98c3"
Content-Length: 10221
Age: 509
X-Cache: HIT from www0.hoge.ne.jp # <-- キャッシュから読んでいる
Connection: close
- HTML の場合
HEAD /index.html HTTP/1.0
HTTP/1.1 200 OK
Date: Fri, 14 Nov 2003 14:24:13 GMT
Server: Apache/1.3.29 (Unix)
Content-Type: text/html
X-Cache: MISS from www0.hoge.ne.jp # <-- キャッシュから読みこめていない。
Connection: close
いちおう、Web サーバも apache 1.3.29 で構成されています。HTML のほうも、リバースプロキシのキャッシュから読み込める
ようにしたいのですが、何か対応策があれば教えてください。
0307名無しさん@お腹いっぱい。
NGNG静的な HTML じゃないんでしょ。SSI をはずしなされ。
0308名無しさん@お腹いっぱい。
NGNGSSI を使っているHTMLもありますけれど、いちおう使っていないもので試しています。
それとも、SSI 使用の HTML は拡張子 .shtml、それ以外は .html と明示的に
分けないとだめですかね?
0309名無しさん@お腹いっぱい。
NGNG>>307のヘッダの意味分かるか?
0310名無しさん@お腹いっぱい。
NGNGXbitHackつかえ。
0311名無しさん@お腹いっぱい。
NGNGmod_include を通っていれば内部的には毎回出力が変わる動的ドキュメントの
扱いになり、proxy にキャッシュさせるためのヘッダは吐かれなくなる。
0312名無しさん@お腹いっぱい。
NGNG/etc/rc.d/init.d/httpd2 restart とすると
httpd2を起動中: (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Unable to open logs
というエラーが発生してしまいます。
apache1.3は完全に止まっておりapache2を完全に停止させた状態だとport80は空いているのですが
apache2が起動している状態で
/etc/rc.d/init.d/httpd2 stop
nmap localhost
とすると80portがまだ開いたままでもう一度/etc/rc.d/init.d/httpd2 stopすると完全に停止し80portも空きます。
/etc/rc.d/init.d/httpd2 restart =
/etc/rc.d/init.d/httpd2 stop #この時点ではport80が開いたまま
/etc/rc.d/init.d/httpd2 start #port80が開いたままなので上記のエラーが発生
試しにstopを2回すると正常に起動します。
/etc/rc.d/init.d/httpd2 stop #この時点ではport80が開いたまま
/etc/rc.d/init.d/httpd2 stop #ここでport80が閉じられる
/etc/rc.d/init.d/httpd2 start #正常起動
どうやらapache2がport80で2回起動している感じで
Listen 81
にすると正常に/etc/rc.d/init.d/httpd2 restart出来ます。
問題切り分けのためsslとvirtualhostの設定はしていません。
どなたかアドバイスよろしく御願いします。
0313名無しさん@お腹いっぱい。
NGNG/etc/rc.d/init.d/httpd2 の中を見てみませんか?
0314312
NGNG/etc/rc.d/init.d/functionsのkiiprocが実行されているようで
1度目はpidファイルのPIDをKILLしてPIDファイルを削除、2度目は
PIDファイルがないためapache2のプロセスをKILLしてたようです。
1度目のstopで終了しなかったのはこのためですね。
やはり起動時に問題があるようです。
もうちょっとハマってみます。
0315名無しさん@お腹いっぱい。
NGNG>nmap localhost
これはないだろう(w
% netstat -an | fgrep LISTEN
0316名無しさん@お腹いっぱい。
NGNG1人でテストしてるときは問題なかったけど、数人である程度負荷かけながら
テストしたら物凄い勢いでメモリ消費したんです。
workerだからかなと思い、preforkも試したけど多少ましなくらい。
メモリ4GByteで足りないとは…。
0317名無しさん@お腹いっぱい。
NGNG「事実上」の面白い用例ですね。
0318名無しさん@お腹いっぱい。
NGNGApacheを再起動したら、
Syntax OK
とはでるのですが、
実際にウェブにブラウザでアクセスすると、
どうもウェブサーバが起動していないもようです。
いったいどこがおかしいのでしょうか?
たぶん、どっかを消してしまったのではないかと思うのですが・・・
http://31.com/test/httpd.conf.txt
にそれを置いておきます。
(いちお、ipアドレスはxxx.xx.xx.xみたくして、ドメイン名はexample.com にしてます)
(なお、↑31.com は、今いじってるのとは全く別のサーバです)
なお、現在いじくってるサーバは、
ラピッドサイトのVPSプランとかいうやつで、
共有サーバなのですが、
それぞれのお客さんが、(仮想な?)root権限をもてるので、
httpd.confをいじれたりします。
その辺も関係あるんでしょうか・・・
サポセンに電話したいんだけど、こんな時間なもんで。。。
もしおわかりの方、お助けいただければ幸いです。
0319名無しさん@お腹いっぱい。
NGNG0320名無しさん@お腹いっぱい。
NGNG> Apacheを再起動したら、
どうやって?
0321318
NGNGラピッドサイトが用意している特別なコマンドがあるので、それを使いました。
xxxx ~# restart_apache
Syntax OK
/usr/local/apache/bin/apachectl stop: httpsd (no pid file) not running
/usr/local/apache/bin/apachectl start: httpsd started
これが問題ですか?
0322名無しさん@お腹いっぱい。
NGNGそのスクリプトの中身は良くわかりませんが、
元々起動されてないのにrestartする意味ってあるの?
ターミナル接続出来るんならpsコマンドでhttpdが走っているか確認。
というか、普通に起動コマンドは無いんですかね?
0323名無しさん@お腹いっぱい。
NGNGapachectl -t
apachectl restart
となっているだけではないか?
0324名無しさん@お腹いっぱい。
NGNG普通にapache2インストールしたら/usr/local/apache2にインストールされないかな
0325名無しさん@お腹いっぱい。
NGNGおれもよくしらんのだけど、最近のアメ公共用サーバはshell以外chrootしてるのがおおいから
実際の居場所が $HOME/usr/local/だったりするよ。
0326名無しさん@お腹いっぱい。
NGNGapache に渡して, CGI として実行するのはどうしたらいいの?
0327名無しさん@お腹いっぱい。
NGNGどういう意味?
0328326
NGNGシェルスクリプトの中で,
apache の DocumentRoot を取得したい.
apache は,CGI として実行されたスクリプトの中で,
$DOCUMENT_ROOT という環境変数に,
DocumentRoot を保持するのだそうだ.
ただのシェルスクリプトの中で $DOCUMENT_ROOT を
参照しても何も入っていないので,
apache が実行する CGI としてシェルスクリプトを実行して,
DocumentRoot を得たい
0329名無しさん@お腹いっぱい。
NGNG______
`=、;;;;;,,,,,,,:::,,,,,;;;;;,,,,`""''';;;;,, 、__
,.-'゙''''',='";;;;;;;;",-,,;;;;;;゙;;;;;;;;;l;;;;`,、
/ `ー-...,;;;;;;;;;;;;,-‐/;;;;;;';;;;;;;;;;;;
./ `''''''""i;;;;;;;;ヽ
l ● |,,,____/ |;;;;}
| |.:::::/ ● ノ;;;;}
ヽ、 |:::/ _,/;;;'゛
`ヽ、_ |/ _,,.,;‐';;;;゛゛
"'''=ー;‐---‐‐'';';"-''"゛
0330名無しさん@お腹いっぱい。
NGNGgrep -i ^documentroot /path/to/httpd.conf | awk '{print $2}'
じゃご不満?
0331名無しさん@お腹いっぱい。
NGNGhttpd.conf の置き場所はシステムによって違いえるでしょ?
httpd.conf を検索したところで,それを apache が
読んでるとは限らない.
だから,今うごいてる,httpd に直接
DocumentRoot を聞きたいんだけど
0332291
NGNGなcgiをサーバーに置いといて、
$ligne = `/usr/bin/lynx -dump http://localhost:80/documentroot.cgi`;
こんな感じのスクリプトを動かせばいいんちゃう。
0333332
NGNG漏れの /usr/local/bin/apache-status.pl が間違ってるから・・・。。゜(ノД`)゜。。
0334名無しさん@お腹いっぱい。
NGNGそんなことできるの?
0335名無しさん@お腹いっぱい。
NGNGcgiってなにか知ってる?
0336名無しさん@お腹いっぱい。
NGNGそれだと「CGI の置き場所が違いえる」とか言われそうだな。
0337名無しさん@お腹いっぱい。
NGNGパールのことでしょ?
0338名無しさん@お腹いっぱい。
NGNG今うごいてる,httpd にデバッガでアタッチして,(ry
0340名無しさん@お腹いっぱい。
NGNGリクエストの形式が,text/xmlとapplication/dimeの場合分けがしたいのです.
リクエスト受け取り時のrequest_rec *rのr->content_typeがnullになっています.
何か取得の際にコツがあるのでしょうか?宜しくお願いします.
0341名無しさん@お腹いっぱい。
NGNGリクエストのContent-Typeはheaders_inから調べろ。
俺はapache2しか知らんから1.xはわからんがあまり変わらないだろ。
0343名無しさん@お腹いっぱい。
NGNG0344名無しさん@お腹いっぱい。
NGNGあ、それは俺も気になってた。ていうかもう気にしたくないので、サーバ入替えを
機に apache2 にしてしまいますた。config の違いを恐れていたんだけど、よく見
てみたら殆ど一緒なのでワラタ。
0345名無しさん@お腹いっぱい。
NGNG自分で面倒見ればいつまでも使えますよ?
0346343
NGNGいや、apache1 系で色々改造しちゃったんで、apache2 に移行するのに時間が
掛かりそうなんでつ。で、今後の予定とかあるんだったら知りたいな、と。
セキュリチーホールの出た場所だけでも逐次教えてもらえると嬉しいですな。
そしたら自分でなんとか汁。
0347名無しさん@お腹いっぱい。
NGNG> セキュリチーホールの出た場所だけでも逐次教えてもらえると
実際には長い期間メンテされると思うが、自分で「いつまで」って決めて
早めに移行した方がいいと思う。Apache httpd に限らず。
基本的にオープンソースでは At your own risk が基本だから、いつスパッと
メンテが止まっても文句は言えんしな。
# そういう危機感を持ってない奴に限って、実際にメンテが止まると
# 逆ギレするんだから、端で見てる分には面白いが(w
0348名無しさん@お腹いっぱい。
NGNGYahoo! USAの方でつか?
0349名無しさん@お腹いっぱい。
NGNGまぁそれはapache2でもうまく改造できたんでいいんだが
例えば、Apache1系の古くからの実装として
SSIを実現するのに客に.htaccessに次のような設定を書かせていた時代があった。
AddType text/x-server-parsed-html .html
これはApache2では捨てられている仕様なので
このサーバで移行するにはApache2を改造するしかない。
まぁこの件はもうApache2を改造してうまくいったのでいいんだが
ほかにも同じようなものが地雷のように埋まってるかもしれない。
客の.htaccessファイルを全部おがませてもらうしかないかなぁ。
0350名無しさん@お腹いっぱい。
NGNGメンドクセー
0351名無しさん@お腹いっぱい。
NGNG0352名無しさん@お腹いっぱい。
NGNGApacheが何らかの条件によって、POSTのリクエストをGETに変更してリクエストを受ける
ことってありますか?
PHPのスクリプトにPOSTで飛ばしているのに、GETで処理されてしまいます。
そしてApacheのアクセスログには、POSTのアクセスとGETのアクセスのどちらも
が記録されています。
Apache/1.3.28 PHP/4.3.3
です。
よろしくお願いいたします。
0353名無しさん@お腹いっぱい。
NGNGそういうのは WebProg 板に行ってくれる?
0354名無しさん@お腹いっぱい。
NGNGPHPは実行されてないんだから、Apacheの領分だろう。
まぁ、ここに居るのは俺も含めてライトユーザーしか居ないから、
原因なんてわかんないけどな!haha!
0355名無しさん@お腹いっぱい。
NGNGPHP のスクリプトが間違っているのに 100 ゼニー。
0356名無しさん@お腹いっぱい。
NGNG必ず GET の次に POST がくるようなら 302 あたりでとばされてるんじゃねーの?
0357名無しさん@お腹いっぱい。
NGNGどこに入っているんでしょうか?
0358名無しさん@お腹いっぱい。
NGNGOS、導入方法によって様々。
デフォルトのhttpd.conf見てみれ。
0359名無しさん@お腹いっぱい。
NGNGドメイン名だけって、そこから認識違うよ。
/
というルートディレクトリをブラウザ側で
補完してくれている。ディレクトリを指定
された場合にどの名前のファイルを返すか
ってのが
>>358
の通り。
0360名無しさん@お腹いっぱい。
NGNG■ このスレッドは過去ログ倉庫に格納されています