2007-11-01 そして11月の始まり
そろそろサーバの設定も佳境に入ってきました( ´∀`)
◆ [情報] Google、直感的操作の3Dモデリングソフト「Google SketchUp」の日本語版を公開
おお。またググるさんが妙な物(?)を出してきた(笑)
一瞬初音ミクとか思ったワシはもう末期症状な。
◆ [ネタ] 「タイムリープキャラクターディスク歩&あゆむ」全てのベンチを収録して発売
あ、ちょっと気になる(笑)
◆ [情報][ネタ] CV02 コードネーム『リン』
どんなキャラになるのかワクテカして待ちましょう(笑)
◆ [ネタ][情報] 狼と香辛料 「経済ファンタジー!?こんなのがあったのか!!」 「ものものものスゴく面白!!」
とらドラのアニメ化はまだですか?
といいつつ、狼と香辛料 、な。よしちとメモっておこう。
◆ [ネタ] 「冬コミカタログ」特典に初音ミク KEI氏のイラスト+初音ミクの歌
ちょwww(笑)
◆ [ネタ] 「にょろーん☆ちゅるやさん3」タワー 1週間しないうちに半分に
はやっΣ
◆ [ネタ] エロゲ予約 「相変わらず、どちらも化け物じみた(褒め言葉)人気」
今週もFORTUNE ARTERIALがトップで、次いでTH2 AnotherDays
TH2 AnotherDaysのデモを一日中ループしてるワシが通りますよー(笑)
◆ [日記] 今日も元気にサーバ構築……と言いたいところだが
微妙にやる気がわかない。
とりあえず、風呂でも行ってくるか(ぉ
…
……いや、まぁ、正直、POP3サーバを何にしようかと悩んでる所と言うべきか。
んでもって、サーバがうっさいので一旦電源落とし、と。
◆ [日記][FreeBSD] postfixインストールメモ
portsでインストールする時に色々オプションを設定できたので端から設定する事にする(笑)
有効にしたのは
・PCRE
・SASL2
・TLS
・BDB
・MYSQL
・CDB
と、てんこ盛りパックにしてみた。
最初にインストールされたのはperl(笑) そういえば入ってなかったね(爆)
次にtinycdb、tinycdbを入れるのにgmakeが無いと言われ、gmakeを入れるのにgettextが無いと言われ、gettextを入れるのにlibiconvとautoconfが無いと言われる。なんかめがっさインストールされまくり。portsって便利だなぁと思う瞬間だ(笑)
んで、次はpcre、cyrus-saslが無いと言われる。まぁ、これは予想の範囲内。
うわ、mysql50-clientをインストールに行ったΣ いや、まぁ予想通りなのですが。いや、まて。昨日入れたsqlはmysql 5.1.22-rcだ。というわけで51にしてくれ、というわけで、一旦makeを止めて/usr/ports/databases/mysql51-clientでmake install。インストール後にpostfixのディレクトリにもどってきてもいっかいmake install。よし、OK。次はbdbのインストール。
ここまで来てやっとmake 終了。サクッとmake install。無事終了。
/etc/rc.confにpostfix_enable="YES"を追加。
続いて/usr/local/etc/postfix/main.cfを編集。
ちと考えがあったのでmyhostnameを追加。ついでにinet_interfasesも追加。ついでにalias_mapsを/usr/local/etc/postfixの中のaliasesを追わせるようにalias_maps = hash:/usr/local/etc/postfix/aliasesと変更。postalias /usr/local/etc/postfix/aliasesを実行してDB作っておく。recipient_delimiterを-に変更。smtpd_banner = $myhostname ESMTPに変更(笑)。home_mailbox = Maildir/に変更。mydestinationにローカルホスト名をデロデロンと書く。※virtualhost用のアドレスは書かない。でもって、postfix reload。
んでもって、jail環境なのでsyslogが入ってないのでsocklog(/usr/ports/sysutils/socklog)を入れる。んでもって、runitとか入れてくれた。ワシはdjb信者なのでdaemontoolsを選ぶ(笑)。/usr/ports/sysutils/socklog/MakefileのRUN_DEPENDSの行をrunitではなくdaemontoolsに変更(爆)chpstがインストールされないので、やっぱやめ。daemontoolsもrunitも入れた。
/etc/rc.confにsvscan_enable="YES"、svscan_servicedir="/service"としてdaemontoolsを起動。
socklog-conf unix socklog sockloglog /etc/socklog /var/log/socklog
として作った後に/serviceでln -s ../etc/socklog/socklog-unix .としてリンクを張って終了。
と思ったら、微妙にエラーが。具体的にはbindできねぇとのエラー。
そういえば/devはroot onlyだったねぇ。と言う事で、/etc/socklog/socklog-unix/runの内容をexec chpst -Usocklog socklog unix /var/run/logと書き換え。
/dev/logは書き込めないっぽいので、親環境から/devに対応する場所でln -s ../var/run/log .と入力。
あと沢山ログがはかれるであろう/var/log/socklogの中のftpとかmailとかmainとかのconfigをちょっと書き換えて沢山ログ保持できるようにした。
postfixはそれっぽく動いたが、sendmailが127.0.0.1にメールを送ろうとするので、修正する。/etc/mail/freebsd.submit.mcの
FEATURE(`msp', `[127.0.0.1]')dnl
という行を
FEATURE(`msp', `[jailで使ってるIP]')dnl
に書き換えて、/etc/mailでmakeをする。できあがった、「ホスト名.submit.cf」をsubmit.cfに変更。
と、ここまでやってとりあえずsendmailでメールを送ろうとすると勝手にpostfixが受け取ってくれて、配信してくれる事を確認。とか考えていると、なんかオープンリレーな設定になってしまった。
と思ったが、自分自身のIPからは無条件で受け取っている模様。これは……良いのか?(あとでなおそう→自分自身からのメールはリレーOKの方がCGIからの使い勝手が良いので、OKにしておく。
と、ここまでやって疲れたので一旦休憩。
( ゜Д゜)⊃旦
よし、休憩終わり。
なんか設定が変なので微妙に手直し。
/etc/mail/freebsd.submit.mcにこんな行を追加して再make
MASQUERADE_AS(`mydomain.com')dnl
FEATURE(masquerade_envelope)dnl
これでfromがミョーな現象は回避された。
だが、相変わらずpostfix/cleanupが妙なmessage-idを付加している。
ソースコードを追っていった結果、message-idに付加されるホスト名は、gethostnameで取得した物になるらしい。むぅ。
しょうがないのでホスト名を変更して再起動した。これで大体目標通りになった。よしよし。って、ホスト名変更するならsubmitの設定いらんがな(笑)
続いてvirtual domainの設定をする。
こんな感じで追加してみた。
local_recipient_maps =
virtual_alias_domains = バーチャルドメイン名
virtual_alias_maps = pcre:/usr/local/etc/postfix/virtual_alias
んでもって、/usr/local/etc/postfix/virtual_aliasにこんな感じの行をねりねりっと追加
/^ituki\@(.を\.に変換した)バーチャルドメイン名$/ 仮想メールボックス名
これで、ituki@バーチャルドメイン名宛のメールが、仮想メールボックス名(これ、ローカルね)に届くようになる。
ついでにDoS対策。rcpt toは5回まで!(笑)
smtpd_recipient_limit = 5
デフォルトだと10Mしかメールを受け取ってくれない。さすがに心許ないので50M位に設定する。
message_size_limit = 50000000
これでメールが送れる事を確認。
んでもって、勝手にメールディレクトリを作らないように設定……しようとしたが、どうやら出来ないっぽい。ソースコードをいじるのはイヤなのでこれはおとなしく従っておこう。
saslの設定はちょっと時間がかかりそうなので明日以降に回す。
あと、POP3サーバはCourierIMAPを使う事で半決定。まぁ、めんどくさかったらまたやりなおすさ。
というわけで、今日はここまで。
postfixの設定と言いつつ、なにげーにsendmailの設定もやってるから時間かかりまくり(苦笑
◆ [日記][FreeBSD] chroot環境下でsendmailを使う方法
上に書いたように、設定ファイルをFEATURE(`msp', `[リレーしてくれるIP]')dnl、とゆー風にしてcfをつくっておいて、cp -Rp /etc/mail ~jail/etc/mailと設定。cp -Rp /usr/sbin/sendmail ~jail/usr/sbin/sendmail、cp -Rp /usr/sbin/mailwrapper ~jail/usr/sbin/mailwrapper、cp -Rp /usr/libexec/sendmail/sendmail ~jail/usr/libexec/sendmail/sendmailとしてあとはそれぞれのプログラムにlddかけて、必要なライブラリをコピー。
んで、リレーしてくれるIP側(chrootの親。実体はqmail)で、IP:allow,RELAYCLIENT="" という行を追加。vpopmail使ってる時は~vpopmail/etc/tcp.smtpに追加な。
で、あとはchroot元で/usr/sbin/sendmailを叩けば、chrootの親側(qmail)へ転送してくれて、後の処理は親がやってくれる。
これでやっとchrootしてるCGIからメールが送れるようになったよー・゜・(ノД`)・゜・
ちなみにはまったポイントは、/etc/master.passwd他、ユーザ・グループ情報が無かったところと、/var/spool/clientmqueue、/var/spool/mqueueを作り忘れていたところ(笑)
「Recipient names must be specified」とか言われてもわかんねーよ!(笑)
あと、微妙にqmail仕様になっていたので、/etc/mail/mailer.confをsendmailを使うようになおした。
やったーできたー!!
イーバンクは手数料無料が気に入って口座作ったのに……。ただのキャッシュカードだと入出金あわせて月1回しか無料にしないって言うのは、いくら預金金利が高くても使い勝手悪すぎ。