5月 04
買うお金が溜まったので新しい自宅サーバー機用のパーツを購入。から1週間、今日すべてのパーツが揃ったので組み立てました。

右が今のサーバー機、左が新サーバー機
ケースは同じなので違いが分かりません(゚Д゚)
今回、USBメモリからVineをインストールというのに挑戦してみた結果、うまくいったので新しく買ったDVDドライブを結局付けませんでした。(FDDも付けてません)(´∀`*)
以下はその手順です。
1.VineのFTPサーバーからイメージファイル(Vine42-i386.iso)を落としてくる
2.イメージファイルを仮想ドライブ化するツールをゲットしてインストールする(私はVirtual CloneDriveを使用しました)
3.Virtual CloneDriveでVine42-i386.isoをマウントする
4.USBメモリをFAT32でフォーマットする
5.マウントした仮想ドライブのisolinuxディレクトリの中身すべてをUSBメモリのルートにコピーする
6.isolinux.cfgをsyslinux.cfgにリネームする
7.Vine42-i386.isoをUSBメモリのルートにコピーする
8.syslinuxをゲットしてくる
9.syslinux-x.xx.zipを解凍してC:\syslinuxに設置する
10.コマンドプロンプトを開いて”C:\syslinux/win32/syslinux -ma g:”を実行する(gはUSBメモリのドライブ名)
これでUSBメモリの準備は完了!
参考:http://d.hatena.ne.jp/funkybass/20070529
あとは新サーバー機にUSBメモリを挿して、BIOSでUSBからブートするように設定すればVineのインストーラーが起動します。
次にVineのインストールですが、今回ちょっと苦戦したので個人的メモ
問題1:Vineのインストーラー起動中にカーネルパニック
解決方法:”boot:linux noapic”でインストーラーを起動する
問題2:SATAのHDDが認識しない
解決方法:BIOSでSATAのHDDをAHCIモードに変更する
問題3:インストール終了後、シャットダウンまたはリブートすると途中でフリーズする
解決方法:apt-getで最新のカーネルにアップデートする(参考:http://his.luky.org/ML/vine-users.7/msg07918.html)
どうもVineでnForce系チップはいろいろ大変なようです∩(・∀・)∩
と、ここまでやりましたがVineのロードマップだと5月にVine5がリリースされる予定なので、Vine5を待って再インストールする予定です。
« 閉じる
4月 16
今回はVineSeedにclamav-0.93-1vl5.src.rpmがあったので、以前の手順でアップグレードしました。
ところでVine5はまだなのかな〜?
4月 05
ということでアップグレード!
1.http://vinelinux.org/vineseednews.html#postfix-2.4.7-1vl5をwgetしてくる
2.sleepパッチを当てるためにsrc.rpmをインストール
3.http://k2net.hakuba.jp/pub/postfix-sleep.patchを2.4.7用に編集
4.specファイルにpostfix-sleep.patchを追加
5.使わないldap、mysql、postgresをspecファイルから除外
ここまでやったところで面倒くさくなってやめました・・・(A`)
以前書いたcheck_policy_serviceで自作のスクリプトへ渡すことにでここのところずっと仕事でpostfixを弄っていたのでちょっとしんどくなったのですヨ。
今週の中頃から運用が始まったのですが現在↑のフィルタサーバー2台で約300万/日のメールを捌いています。
実際には動的IPらしきホストからのもをsleep 35>ポリシーサービスという流れにしてあります。
これで全体の6割は流量制限できている感じです。
細かいチューニングがまだまだ必要そうですけど・・・・
というかこんなにメールが多いとは思わなかったです・・・
3月 31
今朝apt-get -s upgradeしたらvine4.2.1らしきものがリリースされてたのでアップグレードしてみた。
特に変化なし・・・
現在のところ公式にも載ってないのでなんだったのかわかりません∩(・∀・)∩
侵入コンテスト、LeopardとVistaは陥落するもUbuntuは健在
さすがUbuntu!!といいたいところだけど、一般的なアプリケーションの数でいえばVistaの方が圧倒的に多い分不利なような気がするけど・・・
まぁ〜Ubuntuは好きだからいいけどね(´∀`*)
3月 04
先週の土曜日あたりから親知らずがコンニチハしてきて若干痛いです(´;ω;`)
さて先日のsmtpguardですが、元々はqmail用だったみたいですね・・・
ubuntuのリポジトリにはpostfix-smtpguardっていうのがありますが。
で、肝心の会社のフィルタリングサーバーの件ですが、結局check_policy_serviceを通して自分で書いたスクリプトでフィルタリングすることにしました。
先日書いたように、本来はGateWay的なポジションにあるサービスなのでスパムをゴリゴリ弾くわけにもいかないので以下のような運用ポリシーにしました。
1.逆引き不可&逆引きしたホスト名が動的IPっぽいとこからきたものであった場合にcheck_policy_serviceでスクリプトに渡す。
2.スクリプトはエンベロープのFROMとTOのFQDNを組み合わせたキーにして値にリクエスト時間を記録する(同一キーの記録数はコンフィグで指定)。
3.スクリプトは2のキーからのリクエストが一定時間内(この時間もコンフィグで指定)にコンフィグで指定した回数を超えた場合は450で要求を拒否する。
4.スクリプトはリクエストがある毎にコンフィグで指定した時間を越えた2のキーは削除していく。
5.チェック対象のFROM、TOのFQDNはコンフィグで定義しておいてこれに該当しないものはスルーする。
といった感じ。
上記のスクリプトはperlで作成してデータの記録にはDB_File(BTREE)を使用。
正確には4→3→2の順番で2は3の条件を満たしていない場合のみ実行されます。
このスクリプトはすでに作成済みで後はpostfixに組み込んでテストするだけです。
ちなみにコンフィグは以下のようなフォーマットに
[FROM FQDN][TAB|SPACE][TO FQDN][TAB|SPACE][LIMIT TIME][TAB|SPACE][LIMIT COUNT]
example.com example.jp 5 10
上記の場合example.comからexample.jpへの送信は5分間に10通まで要求を受け付けるという設定。
前回はお客さんのメールサーバーからリレーされてくるだけだと思っていたのですが、このサービスのサーバー管理者から詳細を聞いてみたところお客さんのメールサーバー(お客さんのエンドユーザーが外部へ送信する場合)だけでなく外部(お客さんのエンドユーザー宛)からも送信されてくるみたいで、さらに外部からのスパムが今回の悩みのタネだったというオチ。
そこで、上記スクリプトで外部からのFROM(スパマーがよく使うフリーのメアド)とTO(お客さんとこ)のFQDNをキーにして短時間に大量にスパムが送られてきてもコンフィグで指定した一定時間の間に一定数に達した時点で450で弾いて配送数を制御してしまおうと思ったのです。
こうしておけば正常なメールが弾かれてしまっても再送されてきたときに許容数を超えていなければちゃんと要求を通すことができるというのが今回の目玉。
最初はコンフィグでのチューニングがとても大変かもしれませんが、それはこのサービスのサーバー管理者が担当するのでキニシナイ!
3月 01
仕事の関係でスパムメール対策をすることに・・・
まぁ〜いきなり降って沸いた話だったので詳細はまだ分かっていないのですが、会社のサービスでメールのウィルスチェックサービスをやっていて、お客さんのメールサーバーからリレーされてきたメールをウィルスチェックしてるんだと思われる。
そこへかなりのスパムメールが来ていて相当な負荷が掛かっているらしい・・・
そこでスパム対策の為にフィルタリングサーバー(postfix)を別途設置してこのサーバーでスパムを抑制して負荷を軽減しようということらしいのですヨ。
お客さんのメールサーバーからリレーされてくるメールだろうからS25Rのようにクライアントホストで制御するわけにもいかないしなぁ〜
海外のお客さんもいるみたいだからウチみたく海外ホストからのメールを厳しくチェックみたいなこともできない・・・
となるとベイジアンスパムフィルタくらいしか思いつかない・・・┐(´д`)┌
そもそもスパム対策はお客さんとこでヤッテクレと言いたい!激しく言いたい!!
本来はGateway的な位置にあるサービスだからスパムをどうこうやっちゃいけないんだろうけど、現実問題として”どげんかせんといかん”わけで・・・
で、今日1日いろいろググってみたらsmtpguardというものを見つけたのですヨ!
あまり情報が無いので詳しくはまだ分かりませんが、ホストとエンベロープのFrom、Toを検査してポイントを加算、で一定時間のうちにそのポイントが一定数に達したらRJECTしたり遅延させたり、管理者に通知したすることができるらしいのです。
postfixの場合check_policy_serviceでsmtpguardを呼び出せばいいのかなぁ〜?
もう少し調べてみます・・・
« 閉じる
2月 16
以前作成したサーバー監視スクリプトにバグが見つかったので修正しました。
Socketで接続後にレスポンスから取得した文字列が静的コンテンツと動的コンテンツの場合で違うことが判明したのです。
これは常識?( ゚Д゚ )
■静的コンテンツの場合
・HTTPヘッダー終了後にコンテンツのソース
■動的コンテンツ(CGIやPHP)の場合
・HTTPヘッダー終了後にコンテンツのサイズ?らしき数字(英数字の時もある)
・次行にコンテンツのソース
・最後に0
というようなレスポンスだったので、これに対応させるよう修正を加えました。
この機能は監視対象のサーバーのベータベース接続のチェックやロードアベレージのチェックなどに使うことを目的としています。(つまりスクリプトによる動的コンテンツということ)
このバグになぜ気が付いたのかというとload averageが22を突破したという出来事があったので、自宅サーバーにロードアベレージをチェックしてステータスを返すスクリプトを設置して、このスクリプトをサーバー監視スクリプトで監視しようと思ったのです。
以下がロードアベレージをチェックするスクリプト
#!/usr/bin/perl -w
use strict;
$ENV{’LANG’} = ‘en’;
my $UPTIME = `uptime`;
$UPTIME =~ s/.*load average: ([0-9\.]+), [0-9\.]+, [0-9\.]+.*/$1/;
$UPTIME =~ s/\s+//g;
print “Content-type: text/plain\n\n”;
if ($UPTIME > 10) {
print “Load average is Unhealthy!($UPTIME)”;
} else {
print “Load average is Healthy”;
}
exit;
でサーバー監視スクリプトのHttpdChk.confは以下のように設定
www.example.jp/uptime.cgi hoge@example.jp Load average is Healthy
これで自宅サーバーのロードアベレージが10を超えると携帯にメールがくるようになりました。( ´ー`)
« 閉じる
2月 14
来週広島に出張にいかされそうです(´・ω・`)
そんなことより今朝方会社からいつものように自宅サーバーへSSHでログインしようとしたが、なかなかレスポンスが返ってこなくてログインできなかった。
いつもなら速攻ログインできるのに・・・(´・ω・`)
2分くらい待ってようやくログインできたので、なにが原因なのか調べてみたらMySQLのコネクションのプロセスがずっと張り付いていたので、これはもしや!と思いapacheのアクセスログを見てみたらもの凄い勢いでこのブログへアクセスしてるオバカさんを発見しましたヨ。
このブログだけならまだしも、他のコンテンツ(CGI)にも同様のアクセスが・・・
1秒間に5つくらい同時にブログやCGIにアクセスされたらたまったもんじゃありません┐(´д`)┌
俗に言う巡回ツールでしょうか?
とりえあえずそのオバカさんはアクセスできないようにIPで切っておきました。
2月 12
私がアップグレードすると最新版がリリースされるのは仕様でしょうか・・・(´・ω・`)
そんなボヤキはさておきw
さすがに前回のようにVineSeedにあるはずもないので、今回は自分でRPMをビルドしました。
手順は以下のとおり
■前回VineSeedからゲットしたclamav-0.92-0vl1.src.rpmをインストール
rpm -ivh clamav-0.92-0vl1.src.rpm
■SOURCESに移動してclamav-0.92.1.tar.gzに置き換え
cd /usr/src/vine/SOURCES
rm -f clamav-0.92.tar.gz
wget http://freshmeat.net/redir/clamav/29355/url_tgz/clamav-0.92.1.tar.gz
■specファイルのバージョンの書き換え
cd ../SPECS
vi clamav.spec
——————
-Version: 0.92
+Version: 0.92.1
——————
■RPMをビルド
rpm -bb –clean clamav.spec
※clamav-develのTODOでエラーが出ます(当方はdevelは入れないので無視)
■アップグレード
cd ../RPMS/i386
service clamd stop
rpm -Uvh clamav-0.92.1-0vl1.i386.rpm
service clamd start
無事に終了しました(´∀`*)
« 閉じる
2月 07
今日たまたま気が付いたのですが、著名な某大学のメールサーバーからいかにもスパムっぽいメールを送ろうとしてるログを発見しました( ´ー`)
いちおうホスト名、メールアドレスは伏せておきますね。
Feb 6 03:47:49 www postfix/smtpd[7441]: connect from www.??????.ac.jp[???.??.??.???]
Feb 6 03:47:55 www postfix/smtpd[7441]: NOQUEUE: reject: RCPT from www.??????.ac.jp[???.??.??.???]:
450 <hogehoge@****.com.ar>: Sender address rejected: undeliverable address: host ****.com.ar[***.**.***.**]
said: 550 User unknown / Usuario desconocido / Usuario desconhecido (in reply to RCPT TO command);
from=<hogehoge@****.com.ar> to=<???@ohtanz.com> proto=ESMTP helo=<mail.??????.ac.jp>
Feb 6 03:47:55 www postfix/smtpd[7441]: disconnect from www.??????.ac.jp[???.??.??.???]
こんなログが昨日の3時からずっとリトライされてました( ´ー`)
幸いにもFROMの検査結果でNGとなってREJECTされていたので配送されることはなかったのですが、ちょっと気になったのでこのメールを許可して受信してみました( ´ー`)
From *****@***.com.ar Thu Feb 7 16:54:19 2008
Return-Path: < *****@***.com.ar>
X-Original-To: ***@ohtanz.com
Delivered-To: ****@ohtanz.com
Received: from mail.ohtanz.com (localhost.localdomain [127.0.0.1])
by mail.ohtanz.com (Postfix) with ESMTP id 36A7191C179
for <***@ohtanz.com>; Thu, 7 Feb 2008 16:54:19 +0900 (JST)
Received: from mail.?????.ac.jp (www.?????.ac.jp [???.??.??.???])
by mail.ohtanz.com (Postfix) with ESMTP id 1351691C119
for <***@ohtanz.com>; Thu, 7 Feb 2008 16:54:19 +0900 (JST)
Received: from DM (unknown [10.10.10.1])
by mail.?????.ac.jp (Postfix) with SMTP id 026163008A81;
Wed, 6 Feb 2008 01:19:12 +0900 (JST)
Received: from *****.co.uk (HELO Delldim5150) ([***.**.**.***]) by *****.co.uk with ESMTP; Tue, 05 Feb 2008 12:12:10 -0400
Date: Tue, 05 Feb 2008 13:14:10 -0300
From: “Greer L Amanda” <*****@***.com.ar>
To: ***@ohtanz.com
Cc: ***@*******.com, ***@***.com, ***@***.com
Subject: Doctor Database in America
Message-ID: <129666n2zho0$a6237aj0$6483g8l0@Delldim5150
MIME-Version: 1.0
Content-type: text/plain; charset=US-ASCII
Priority: normal
X-Virus-Scanned: ClamAV using ClamSMTP
X-Spam-Revision: bsfilter release 1.0.15 revision 1.82
X-Spam-Flag: Yes
X-Spam-Probability: 1.000000
The package below is valued at over $2000 when purchased individually
Currently Practicing Doctors in America
788,255 in total * 17,180 emails
34 primary and secondary specialties
16 different sortable fields
Pharmaceutical Companies in the US
47,000 personal emails and names of decision makers
Complete Contact List of Hospitals in America
complete contact information for CEO’s, CFO’s, Directors and more - over 23,000 listings in total for more than 7,000 hospitals in the USA
Database of US Dentists
A complete List or dentists and related services (valued at $399)
American Chiropractors Directory
Over than 100k chiropractors practicing in the US
reduced price is now:
$393 for all above data
send us an email: *****@hotmail.com
good until feb 10
どこからどうみてもタダのスパムメールです本当にありがとうごz(ry
Receivedヘッダーを追っていくとイギリスから某大学を経由してウチにきてるっぽいですね┐(´д`)┌
もしこのReceivedヘッダーが事実ならこの大学のメールサーバーはオープンリレーになってるか、このイギリスのホストからのリレーを許可しているかのどちらかということに・・・( ゚Д゚ )
何れにしてもこの大学から来ていることは間違いないので「お宅のメールサーバー大丈夫?」って連絡したくてウズウズしてます( ´ー`)
« 閉じる