Linuxで七転八倒な記録


まず一言。Linux の HowTo に関するページは世の中たくさんあるから、ここを見るよりはそっちを見るのが賢明かと。まだまだ Linux を完全に理解してるわけじゃないから(^^;
それに「前あれってどうやったんだっけ?」とすぐ忘れる自分のための覚え書き的存在なので(笑)

← 前 ページ選択 クイックリスト BBS

2004年7月7日
○ とりあえず復活か?
恐ろしく久しぶりに更新。て1年ぶりですね。マジすか(汗。
要因はいろいろあるけど、Linux に関連したことで。うちのマシンはいつ頃からか gcc を多用する作業(例えばカーネルや RPMの作成など)をすると Segmentation fault を吐いて、おまけに hdb: Lost Interrupt になってハング状態になってしまうという性質の悪い癖が出来てしまっていた。こうなるとハードウェアリセットをせざるをえないし、その後のディスクチェックも時間がかかるし、半自動で修正しないといけなかったり(かなりの確率で・・・)とかなりやる気を殺がれてしまうのだ。まず gcc だとかそのあたりをバージョンアップしてみても効果なし。症状から推察するにハードが原因くさいので、次に疑ったのがメモリ。これも一通りチェックして一時期症状が改善したかと思ったけど、また再発。その後この状態で騙し騙し使ってんけど、さすがにフラストレーションが溜まってきてもう一度考え直す。最期に行き着いたのがひょっとして CPUか?と。K6-2 450MHz だし、ビンゴの可能性大。発熱の低減&若干の高速化も兼ねて k6-2+ 500MHz に換装。結果は・・・ばっちし改善しちゃいました。うーん。正直なんだかなぁ、という感じだけど。ま、これでまたパッケージを常に最新に出来るし。なによりだ。


2003年7月31日
○ PostgreSQL 7.3.3 → 7.3.4
それほど急いでバージョンアップすることはなかったけど。更新内容はニュースの方にちょっくらと。オフィシャルのRPMで。

○ mod_gzip もとい mod_deflate 【関連】mod_gzip のインストール
Apache 1.3 を使ってた時には mod_gzip を導入してたんけど、Apache 2.0 に変えてから今まで導入してなかった。最初は様子見だったんけど、きっぱり忘れてました(笑)
んで、2.0 では mod_gzip を使わずに Apache に標準でついてる mod_deflate を使うのが素直。うちの環境では必要なモジュール等は揃ってたんでコンフィグを設定するだけ。httpd.conf に追加してもいいんけど、せっかく conf.d があるわけだから /etc/httpd/conf.d/deflate.conf として作成。

## /etc/httpd/conf.d/deflate.conf ##
LoadModule deflate_module modules/mod_deflate.so

<IfModule mod_deflate.c>
    <Directory />
        #SetEnv gzip-only-text/html 1
        #SetOutputFilter DEFLATE
        AddOutputFilterByType DEFLATE text/html text/plain
    </Directory>
</IfModule>
Directory で対象のディレクトリを制限することも可能。んで、普通はコメントアウトしてあるような風に指定するけど、text/plain も圧縮対象にしたかったんで、上のようになってます。後は再起動すれば設定完了。
やりとりされるリクエスト、レスポンスの変化をチェックしてみよう。まずはブラウザが圧縮に非対応な場合。

+++GET 141+++
GET /linux/ HTTP/1.1
Accept: */*
Accept-Language: ja,en-us;q=0.5
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705; .NET CLR 1.1.4322)
Host: hostname
Pragma: no-cache
Connection: keep-alive

+++RESP 141+++
HTTP/1.1 200 OK
Date: Thu, 31 Jul 2003 11:25:29 GMT
Server: Apache/2.0.47 (Red Hat Linux)
Last-Modified: Sat, 31 May 2003 03:39:41 GMT
ETag: "1c3f1-2d6-8b233940"
Accept-Ranges: bytes
Content-Length: 726
Vary: Accept-Encoding
Connection: close
Content-Type: text/html
+++CLOSE 141+++
次に対応してる場合。

+++GET 142+++
GET /linux/ HTTP/1.1
Accept: */*
Accept-Language: ja,en-us;q=0.5
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0; .NET CLR 1.0.3705; .NET CLR 1.1.4322)
Host: hostname
Pragma: no-cache
Connection: keep-alive

+++RESP 142+++
HTTP/1.1 200 OK
Date: Thu, 31 Jul 2003 11:25:38 GMT
Server: Apache/2.0.47 (Red Hat Linux)
Last-Modified: Sat, 31 May 2003 03:39:41 GMT
ETag: "1c3f1-2d6-8b233940"
Accept-Ranges: bytes
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 549
Connection: close
Content-Type: text/html
+++CLOSE 142+++
もともとテキストサイズが小さいのであんまり潰れないみたい。ちなみに 330kバイトある htmlファイルは 17kバイト程度になりました。しかし、圧縮させるファイルサイズの指定は出来ないのかな。


2003年7月10日
○ Apache 2.0.46 → 2.0.47
今回もセキュリティ&バグフィックスな模様。RPM の作成は 2.0.46 の流用で一発OKで楽〜。


2003年6月24日
○ 最近の access.log
相変わらず /default.ida やら /scripts/ は毎日やってきますが(汗、それに加えちょくちょく増えてきたのがいくつかあるので、チェック。まずこんなん。

*.*.*.* - - - [23/Jun/2003:03:50:43 +0900] "CONNECT mail.acmemail.net:25 HTTP/1.0" 405 942 "-" "-"
*.*.*.* *.*.*.* - - [23/Jun/2003:03:50:42 +0900] "POST http://*.*.*.*:25/ HTTP/1.1" 200 841 "-" "-"
プロクシを探しているようで。しかも、接続先ポートが 25番なので、これを許してしまうとメールをオープンリレーしてしまうことになってしまいますな。連続してアクセスしてるんで何かツールがあるのだろうと調べてみると、pxytest なるチェックツール発見。試しに自ホストに対して使ってみる。

# perl pxytest -M myserver myserver
 …(中略)…
Test complete - no proxies found
ログを確認してみると、上のとよく似たログが。POST の方は 200 が返ってるのでなんだろ?と思ったんだけど、pxytest の表示を見る限り単に / を返してるだけみたい。本来なら 4xx が返るべきだと思うけど・・・。

あと、もう一つ、こんなの。

*.*.*.* %s - - [23/Jun/2003:15:17:24 +0900] "SEARCH / HTTP/1.1" 405 926 "-" "-"
これは IIS の WebDAV に関する脆弱性を狙ったもの。というわけで、特に問題はないです。詳しくは、MS TechNet の 不正な WebDAV リクエストにより IIS が CPU リソースを使い果たす(MS01-016)。これも Google で簡単にコードを見つけられるんで興味があれば調べてみてね。


← 前 ページ選択 クイックリスト BBS

△戻る ▲トップに戻る