qmailいろいろ(8)
レス数が900を超えています。1000を超えると表示できなくなるよ。
qmailの設定、インストール、関連ソフトウェアなど、
いろいろ情報交換しましょう!
前スレ qmailいろいろ(7)
http://pc8.2ch.net/test/read.cgi/unix/1114157851/
関連スレ、関連サイトは >>2-10 あたり。 関連ソフトウェア(含パッチ)
netqmail
ttp://www.qmail.org/netqmail/
checkpw
ttp://checkpw.sourceforge.net/
qmail-vida
ttp://qmail-vida.sourceforge.jp/
vpopmail
ttp://www.inter7.com/vpopmail.html
アウトルックをロックアウト
ttp://www.unixuser.org/~euske/doc/outlook/index.html
UW-IMAPDてんこもり拡張ぱっく
ttp://www.gentei.org/~yuuji/software/imapext/
Qgrey - S25R + qgreylist パッチ
ttp://k2net.hakuba.jp/qgrey/
Qmail-Scanner: Content Scanner for Qmail
ttp://qmail-scanner.sourceforge.net/
SPF implementation for qmail
ttp://www.saout.de/misc/spf/
qmail-spp (SMTP plugin patch)
ttp://qmail-spp.sourceforge.net/
QmailMSP (Submissionポート)
ttp://www.aripollak.com/wiki/Main/QmailMSP .qmail-test_01
.qmail-test_02
.qmail-test_03
:
.qmail-test_11
といったようにテスト用アカウントを作成し、中身は全て
同じアドレスへの転送としているのですが、.qmail-test_*
このように一つの設定で共通化するようなことはできない
ものでしょうか。
ご教示いただけますと幸いです。 spam対策でどのパッチ当てようか悩んでいたら、
ttp://www.fehcom.de/qmail/spamcontrol.html を発見。一からやるのなら楽でいいかなぁとか思ったけど、
と思ったけど、既存のpatch当て当てした環境との互換性を考えると頭が痛い。 greylistingにはなにつかってる? qmail用なのにPerlつかったりMySQLつかったりするものばかり。
Cで書かれていてcdb使うやつはないのかな… >>9
無難にQgrey。
正規表現を使いまくるからperlで作ったんじゃないのかな。
perlがいやならperlccでもしてみたら?
てか、自分で作ってくれw >>9
つ cqGreylist ttp://oss.albawaba.com/cqgreylist.html >>10
いまだにSolaris8にパッチ当て当てしたmail serverを使っているので、
Perl5.8必須とかなっているの萎えるのですだ。
>>11
よさげかなと思ってarchiveをダウンロードしてREADMEを見たら、
this implementation provides only greylisting based on the source IP address
and not the full triplet as suggested in the greylisting whitepaper.
う〜む。
んで、cqgreylist.cを見るとcdbすら使わずにやっているのか。 Qgreyの元になっているqgreylistも
qgreylist, on the other hand, just greylists by source IP address. This is
mainly because it's written as a wrapper for qmail-smtp so has no other
information available. For home and small office use this works nearly as well. cdb は BerkeleyDB なんかと違って、DB にデータを追加することができず、
ゼロからの生成しかできないから、greylisting みたいな用途で使うには
まったく向いていない。
つーか、qmail をこれ以上いじりまわすのはもうやめたら。もう終わってるから。 みなpostfixに移行してるからなぁ・・・
でも、qmailを手放せない俺ガイル。 qmailadminのようにマルチドメイン対応でML管理もできる
日本語対応のwebフロントエンドがあれば、postfixに乗り換えるんだけど。 qmail単体でサブミッションポートって実現できますか? Qgrey & qgreylistはIPアドレスでしかgreylistingやっていないから、案の定、サイトのユーザ数が
ある程度多いと、spam送信側が多人数に対していちいちconnection張りにきたのを再送信したと見なして、
そのIPからのメールを大開放しちゃうなぁ。
postfix + postgreyとはspamの遮断率に格段の差が出てる。
いい加減、qmail捨てたい…
>>17
単体というのがなにを示しているのかわからんけど、qmailでsubmission対応はできる。
SMTP AUTH必須にしたqmail-smtpdをsubmissionポートで動かす。 >>17
SubmissionPortを理解してるか? >>18
つ ttp://qmail-spp.sourceforge.net/ qmail-sqqのgreylisting-sppつかって、QgreyのようにS25R + greylistingができないかな? >>18>>19
すみません、説明が不足していました。
25番ポート側ではrcpthostsを有効にするのと587番側ではSMTP_AUTHに対応してrcpthostsを無視するようにする方法が知りたいです。
それっぽいpatchがいくつかあったので当ててみたんですが、
220 hogehoge.com ESMTP
EHLO [192.168.4.11]
250-hogehoge.com
250-AUTH LOGIN CRAM-MD5 PLAIN
250-AUTH=LOGIN CRAM-MD5 PLAIN
250-PIPELINING
250 8BITMIME
AUTH LOGIN
503 auth not available (#5.3.3)
503 auth not available (#5.3.3)
RSET
250 flushed
MAIL FROM:<yama@kawa.com>
250 ok
RCPT TO:<inu@neko.com>
553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)
QUIT
221 hogehoge.com
となってしまいます、、
試しに手作業でaddrallowed()関数で環境変数SUBMISSIONが存在した場合はreturn 0;するようにしたんですがダメでした。
if(env_get("SUBMISSION")) return 0; >>22
パッチって
int addrallowed()
{
int r;
+ if(env_get("SUBMISSION")) return 0;
r = rcpthosts(addr.s,str_len(addr.s));
って感じだよね?
あとは
smtp用に
exec env - PATH="/var/qmail/bin:/usr/local/bin:/bin:/usr/bin:$PATH" \
tcpserver -v -x /home/vpopmail/etc/tcp.smtp.cdb -R -h -l0 -u qmaild -g nofiles \
0 smtp qmail-smtpd /home/vpopmail/bin/vchkpw /bin/true 2>&1
submission用に
exec env - SUBMISSION="" PATH="/var/qmail/bin:/usr/local/bin:/bin:/usr/bin:$PATH¥" \
tcpserver -v -R -H -l0 -u qmaild -g nofiles \
0 587 qmail-smtpd /home/vpopmail/bin/vchkpw /bin/true 2>&1
すればいいだけでそ。
ヲレの例ではvpopmail使ったり、SMTP側ではPOP before SMTP使ったりしているから
ちょっとだけ煩雑だけど。 >>21
それ以前に、greylisting-sppはBDB40以外への対応とか、sqlite3対応とかして欲しいところ。
sqlite2 -> sqlite3への移行は関数名書き換えるだけなのかと思っていたら、そんな単純じゃないのねん… 当方プロパイダーDTIで携帯宛にメールが送れません。
調べてみたところ、携帯会社がSPAM対策をしていて、それにひっかかっているみたいで
smtproutesにて、プロパイダーのSMTPサーバーを振ってやる事で回避できるみたいですが、
DTIはsubmissionを採用しているので、認証が必要です。
smtproutesで、認証等の設定はできるんでしょうか?
また、できないとして、どのような対策をとるべきでしょうか? >>24
それです。
578ポートはrcpthostsを無視してオープンリレーっぽくしたいのですが、、 >>27
ありがとうございます。
説明通りパッチを当ててインストールをし、
smtproutesにdocomo.ne.jp:hogehgoe.com ID pass
の順で記述してみましたが、やはり弾かれてしまいます。
submissionポートにコネクションすればいけそうなんですけど、あと一歩というところなんですが・・・orz >>30
DTI固有の問題みたいですね。
tcpdumpとかでSMTPサーバとのやり取りを覗いて見たら? >>30
あ・・・ポート指定が無いよ。
example.ne.jp:example.com:578 ID pass
>>31-32
ポート指定しましたが、ダメでしたorz
しばらく格闘してみます、アドバイスありがとうございました。 ttp://forum.tsukaeru.net/viewtopic.php?t=2266 でqgreylistを改造して
spamの排除効率上げているね。
qgreylist単体だとアカウント数50個ぐらいのレベルになるとspamがだだ漏れに
近くなるから、IPアドレスだけでなく、きちんとMAIL FROMとRCPT TO:も記録して
greylistingするのが必須になるけど、とりあえずRCPT TO:を記録する改造方法が
書かれている。
けど、こういうことはqmail-sppでやったほうがいいと思う。 >>34
バカなりにがんばってるんですが、
patchもあてて起動スクリプトも環境変数SUBMISSIONを定義するようにしたんですが>>22の状況になります。
なぜかSMTP_AUTHもちゃんと動きません、、
# smtp submission port
export SUBMISSION="";\
/usr/local/bin/tcpserver -R -c 100 -u 506 -g 503 -x \
/etc/tcp.smtp.cdb \
hogehoge.com submission \
/var/qmail/bin/qmail-smtpd \
/bin/checkpassword \
2>&1 | /var/qmail/bin/splogger smtpd 3 & smtp_authのみ許可するのってどうすんですか? Qgreyではspamが漏れまくるようになってきたので、qmail-spp用の
greylisting-sppを使おうと思っております。でもS25Rが出来ないと
副作用が大きいって事でs25rプラグインを書いている最中なんだけど、
$ env TCPREMOTEHOST=unknown ./s25r.pl
N
$ env TCPREMOTEHOST=foo.exsample.com ./s25r.pl
A
てな感じの動作のs25r.plを作ってplugsinsに置いて、
/var/qmail/control/smtppluginsの[rcpt]セッション中に
plugins/vpopmail_check_recipient.sh
plugins/s25r.pl
plugins/greylisting-spp
plugins/tarpit
とかいう感じで書いておけばいいのかな。
あと、SMTP AUTHが通ったclient要に、SMTPAUTHUSERがセットされていれば
Aを返すようにするとQgreyの弱点が解消できるのかな。 >>36
SMTP AUTHが動いていないのは最初のログで明白だけど、どんな環境か明示しないんだもの。
エスパー希望なら最初からそう書け。 >>39
AもNも最後のコマンドとしてつかう場合でそ。
S25Rに引っかかった場合は、なにも返さなければ次の処理に行くんじゃない。 >>40
すみません、
環境としてはDELL SC430にFC5を入れてます。
qmailにはerrno.h、reject、smtp-auth、date-localのパッチを入れてます。
checkpasswordはchmod 4555してます。
SMTP AUTHのパスワードって/etc/passwdですよね。
なんで認証できないんだろ。 >>41
Thanks。qmail-spp用S25Rプラグインが出来ました。S25Rにひっかからない
場所からのメールはgreylistingにかからないことと、tarpitと組み合わせて
Qgreyより遥かに遮断率が向上したのを確認。spamはQgreyに比べて1/5ぐらいに
なっています。
それにしても、qmail-spp用プラグインは作るの楽しいなぁ。
改造がここまで簡単だとは。ただ、セキュリティ上の注意が必要だけど。
>>42
250-AUTH=LOGIN CRAM-MD5 PLAIN
といっているのに、
AUTH LOGINをすると
503 auth not available (#5.3.3) となるのだから、
smtp-authパッチがうまいこと動作してないんでそ。
どんなsmtp-authパッチを使っているのか知らないけど、とりあえず
netqmail-1.0.5 ttp://www.qmail.org/netqmail/ と
Bill Shupp's SMTP-AUTH/TLS composite patch, version 20060105
ttp://shupp.org/patches/netqmail-1.05-tls-smtpauth-20060105.patch
の定評のある組み合わせで試してみれば。 >>39
vpopmail_check_recipient.shって
ttp://perolo.vantage.at/qmail-spp/qmail-spp.plugin.vpopmail_check_recipient.html
だと思うけど、vuserinfoをsetuidしなきゃいけなかったりと、ちょっとあれじゃない?
sedとかechoとかのパスも直打ちで、書き換えせんといかんし。
vuserinfo.cを元にqmail-spp用のプラグイン作ったほうがいいと思う。 qmail-sppでtaRgrey ttp://d.hatena.ne.jp/stealthinu/20061206/p1
ttp://k2net.hakuba.jp/targrey/ をやらせようと思ったんだけど、
qmail-spp用のtarpit.cって基本的にsleep()するだけで、sleep()している最中に
コネクション切れたこと認識できないから、tarpit うひゃ、途中で書き込んじゃった。
tarpitに成功したらgreylistingを省略するにはstdoutにAを出すだけで大丈夫だけど、
tarpit中にコネクションが切れたことを検出できないので、結局greylistingを
完全に飛ばすことになっちゃう。
ってことで、tarpit単体のpluginをいじるのではなく、tarpitとgreylistingとの
複合pluginにして、
・greylisting DBに未登録の場合
- greylisting DBに登録
- tarpitをする (その際に切れることがあるが、プラグインの処理は続行)
- return 0; をして、このプラグインを抜ける。
コネクションが切れている場合はプラグインを抜けても当然メールは受け取れない。
・greylisting DBに登録済みの場合
- リジェクト時間内の場合、stdoutにE451を返す
- リジェクト時間外の場合、greylist DBを消す
- return 0; をして、このプラグインを抜ける。
ってな感じの動作を考えた。けど、これってtarpitで切れたコネクションをsenderの
MTAが再送してくれることが前提になるけど、別に問題ないのかな? とりあえず実装してみたけど、プラグインからはtarpitting後にメールを受け取ったか
どうかがわからないので、たとえメールを受け取ったとしても、リジェクト時間内に
再度同じIP & MAIL FROM & RCPT TOのメールが来た場合、再送エラーになっちゃう。
再送エラーが出ないように、tarpitting後にそのIP & MAIL FROM & RCPT TOをリジェクト時間外
に設定しちゃうと、当然ながらリジェクト時間内に関わらず、再送してくると受け入れちゃう。
後者の動作はgreylistingの再送時間設定が無意味になるので、非常にやばい。
前者の動作は無意味な再送が多発しそうでいや。まあ、tarpittingのみとか、
greylistingのみとかよりはメールを受け取りやすいけれど。
なんかうまいことできないものかなぁ。 >>47
greylistingDBに何を記録するかが肝だよな。
[Message-ID]とか>>35みたくMD5にするか・・・ >>48
ソースIPとMAIL FROMとRCPT TOのセットでの判別だと、>>47の例のように再送ではないのに
再送と誤認してしまうし、別のIPアドレスからの再送に対応できないしね。
QgreyではソースIPを/28とか/24とかでまとめちゃうことで、別のIPアドレスからの再送に対応
しようとしていたけど、もうちょっとうまい方法がないものか… かなり安易な考えだけど、逆引きできるIPならドメイン部も比較の考慮にいれるとか。 >>47
とりあえず、ソースくれ。>>35の改造もqgreylistの改造方法については書かれているけど
全体のソースはなかったので、ヲレはQgreyでspamだだ漏れ生活なのだ。 >>48
再送の際、DATA部が書き変わるようなMTAって存在しないよね?
あと、別のIPアドレスからの再送に完全に対応するには、極論すればソースIPは無視しないといけない。
というわけで、greylisting DBにはMAIL FROM、RCPT TO、DATAのMD5を記録するのはどうよ。 >>53
うむ。DATA丸ごとMD5は処理的に重すぎるな。ヘッダだけでいいんじゃない? 一昨日からにわかに活気づいてきたな。スパム対策がよくわからんからqmailを
捨てようと思っていたけど、なんだか面白そう。qmail-sppはこのスレのテンプレには
あったけど、実際にどういうものか知らなかった >>51
スマソ。業務時間外に自宅で作ったスクリプトなんだけど、会社のサーバに
入れるために作ったってこともあって、会社の所有物扱いになる可能性があるんで、
上司から許可もらわないと公開できないや。
元がGPLなソースとはいえ、会社がこれを他に配布しない場合にはソースを
公開する義務は生じないし。
まあ、うまくいけば会社のwebサーバから配布できるようになるかもしれないけど。
ちなみに、qmail-spp用プラグインのgreylisting-spp-0.2のsrc/greylisting-spp.c
122行目近辺の
/* No match found -> reject and add entry */
reject ();
ってところを、reject()せずに環境変数にしたがってsleep ()させて、
STDERRにログを吐くようした。
なので、誰でもすぐに同じようなものが作れると思う。
S25Rのほうは、Qgreyのqgreylist用S25Rパッチを単体のプログラムにして、
$ env TCPREMOTEHOST=unknown ./s25r.pl
$ env TCPREMOTEHOST=foo.bar.baz ./s25r.pl
A
という動作にするようにしたもの。 >>52
ソースIPは再送かどうかのチェックには使わないけど、記録はしておいたほうがいい。
じゃないと、いったん再送があったサーバには、それ以後4xxエラーを返さないようにして
遅延を避けることが出来なくなる。 あと、qmail-sppだけではDATAの中身は見ることができないと思う。
ちなみに、>>35のリンク先ではqmail-smtpdのsmtp_data()を改造している。 $msg = "MIME-Version: 1.0\n";
〜 省略 〜
$msg .= "From: $this->m_from\n";
$mp = popen("/usr/sbin/sendmail -f $this->m_from $this->m_to", "w");
fputs($mp, $msg);
pclose($mp);
今までメール送信するときはこの用にsendmailを使ってきたのですが、
qmailで同じようなことを行う方法をご存知ないでしょうか。
よろしくお願い致します。 qmailのsendmailラッパーじゃダメなのかい? あの、taRgreyとQgreyの中の人なのですが、自分はpostfix使いのため
qmailでこんな開発が進んで来ているとは知りませんでした。
もしqmail向けtaRgreyサーバのようなものが作られましたら、QgreyやtaRgreyのページから
リンクや紹介などさせていただきたいと思います。
tarpittingを抜けたかどうかの判断ですが、postfixの場合SMTPセッションのどのタイミングで
呼ばれたか(RCPT終わった時点か、DATA終わった時点か)で判断してます。
qmail-sppではそういう、どのタイミングでフィルタするかとかの設定は出来るのでしょうか?
>>62
qmail-sppは
CONNECTION (TCP/IPのセッションを張りに来たとき) AUTH HELO MAIL RCPT DATA
の各セッション中に適用したいプラグインを記述できる。
詳しくは ttp://qmail-spp.sourceforge.net/doc/ 参照。
ただ、このスレのログにあるように、DATAセッション中のプラグインは別にDATAの
中身を見ることが出来ず、以前のセッションで得たデータやプラグインの結果を元に、
DATAセッション中にコネクションを切るか切らないかしかできないのであまり意味がない。 >>63
読んでみました。というか、ちょっと勘違いしてました。
postfixのポリシーデーモンのような形ではなく、呼び出し毎にフィルタスクリプトが起動されるのと
tarpitはtarpitプラグイン中でsleepして実現してるので、素直に書いて実現出来そうに思います。
簡単に擬似コード書きます。
if (tarpit_blacklist_dbにclient_ipが登録されていない?) {
greylist_dbへclient_ip/to/fromを登録
sleepで返答遅延
if (接続が切れている(tarpitを待てなかった)?) {
tarpit_blacklist_dbへclient_ipを登録 }
#tarpit待てたから許可
} else { #tarpitを待てなかったipから再接続
if (greylist_dbにclient_ip/to/fromが登録されていない?) {
greylist_dbへclient_ip/to/fromを登録
再送要求(450)を返す }
#再送だから許可
}
こんな感じ。プラグイン内からコネクション断が検知出来るか少し不安ですが出来ますよね?
tarpitプラグインとgreylistプラグインを別個にを使うのではなく、greylistiプラグインに
tarpit機能を組み込むように修正するとよいと思います。 >>64
qmail-sppから受け取れるのは環境変数だけだけど、コネクションまわりのことを知らせる
環境変数は存在しないので、プラグイン内からコネクション断は検知できません。
なので、それを実現しようとするとqmail-smtpdにさらにpatchを当てる必要あり。
どうせqmail-smtpdをいじるのなら、qmail-sppのポリシーを曲げて、DATAをpluginに
渡せるようにして、MAIL FROM & RCPT TO & IPだけの記録ではなく、きちんとメールの
中身を見て再送検知できるようにしたほういいというのは>>49-58の話題。
そして、その実装例が>>35のリンク先 ttp://forum.tsukaeru.net/viewtopic.php?t=2266
ちなみにヲレはtaRgreyは>>56の手法で実装したので、まさにgreylisting pluginの改造ですだ。 >>65
なるほど。コネクション断は検知できないのですね。むむ。
でもまあ確かに、tarpit通ったかどうかの判定省いても、ほぼ目的は達成できてますから、
となるともう改善手出来るところはないですね。
>>56の内容で、パッチの内容は把握できたので、65=56さんのパッチが公開できないようなら
適当に作ってここの人でテストしてもらって、んで自分が公開するということも可能です。
ただ、テスト環境もないし、もともとのアイデアは56さんだから、そちらで公開していただけるなら
そのほうがベターだと思います。
ちなみに、DATAを受け取り終わった時点で450で再送要求は、通らないMTAが多いから
やめたほうが良いらしいです。
ただ下の研究では再送要求でなく、こちらから強制セッション断してエラーを起こさせて
それで再送させてるとのことなので、そう出来れば良いのかも。
http://info.ipsj.or.jp/01kyotsu/award/funai_bp/2006_pdf/LL_008.pdf
あと、上の方でDATAかヘッダをMD5でという話が出てましたが、上記研究では
Message-IDを使われてます。
普通再送は同一Message-IDですから、これがたぶん一番スマートだと思います。 公開許可が取れたので、ドキュメント周りを整備中…
>>66-67
なるほど。でも、DATAが送られている最中に強制セッション断は実装が辛そうだなぁ >>68
お、それは良かったです。
強制セッション断は、どのくらい再送率が下がるかという問題もあると思います。 はじめまして。
qmailのインストールを行って、vpopmailもインストールをしたのですが
送信は確認できたのですが受信ができません。
認証で蹴られてるようなのです。
qmail-pop3dのcurrentログを見ていると、「status 256」と出ます。
また、直接メールサーバへtelnetで入ると「USER ****」「PASS *****」と入力後
切断されてしまいます。
何が原因なのか教えていただけないでしょうか。
よろしくお願いします。 受信ってSMTPの受信じゃなくてPOPの受信ってことね? すみません、書き方が悪かったですね。
メールの受信(SMTP)では問題なく受信は出来ています。
しかし、メールクライアントでのPOP認証でNGとなっています。
「/var/log/qmail/pop3d/current」に出力されているログです。
@4000000045a5b96836567fe4 tcpserver: status: 1/30
@4000000045a5b9683658ae7c tcpserver: pid 3822 from 192.168.168.15
@4000000045a5b968365994f4 tcpserver: ok 3822 *****.jp:192.168.1.10:110 :192.168.168.15::34925
@4000000045a5b9683663c654 tcpserver: end 3822 status 256
@4000000045a5b9683663ed64 tcpserver: status: 0/30 インストールしているものは、qmail-1.03とvpopmailです。
以下にpopアクセス時の状態を記載します。
どう対応すればいいのか、わからなくなってしまいました。
教えていただけないでしょうか。
「直接アクセス時」
[root /]# telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
+OK <4601.1168497812@example.jp>
USER hogehoge
+OK
PASS hogehoge
Connection closed by foreign host.
「/var/log/qmail/pop3d/current」ログ
@4000000045a5dc9e150bcb64 tcpserver: status: 1/30
@4000000045a5dc9e150bd71c tcpserver: pid 4601 from 127.0.0.1
@4000000045a5dc9e150bdeec tcpserver: ok 4601 example.jp:127.0.0.1:110 :127.0.0.1::32777
@4000000045a5dca63b4633b4 tcpserver: end 4601 status 256
@4000000045a5dca63b463b84 tcpserver: status: 0/30
qmail-pop3dなんて捨てて、素直にcourier-imapのpop3d使えば? 新規インストールなら、悪い事は言わん
他のにしとけ いまやSMTP AUTHパッチなどを当て、その上qmail-spp使って云々が必須だからなぁ。
新規の場合は素直にpostfix使うべきですな。 qmailの最新バージョンっていくつ?いつ出たの?
mail Queueにメールが溜まってユーザーbox(Maildir)に格納されないのは
どんな原因がかんがえられますか? 基本的に、ハックが必要なのってqmail-smtpdだけだよね?
だったら、qmail-smtpd完全互換プログラムだけを一から作って
GPLで配布したら、初心者にもけっこう優しいqmailシステムが
作れるんじゃね?
いまさらそんなめんどくさいことやるくらいならPostfixに逃げるワ ttp://smtpd.develooper.com/ か。Milterにまで対応しているとはすごい。 magic-smtpd てのもあるな。
ただ、宛先をバラしてしまうという基本設計そのものがやっぱよろしくないなぁ、と。
数MBのメールを10人とか20人とかに Cc すると、
相手サーバで anti-virus とか anti-spam とかの重い処理が走ってると
向こうの方が負荷でコケちゃってるらしきことがたまにあるんだよね。
こっちはぜんぜん平気なんだけど。 >>89
30MB、33MB、18MBと立て続けに複数人にCc:されてえらいことになった。
スキャンしきれなくて /var/spool/qscan/working/ にメールが溜まるわ、
/var があふれるわ、その結果qscanや他のqmailとは関係のないdaemonが
死んで/varを空けてもサービスが復活せんわ…
>>90
そんなのでは、まとめ送りが不可能という仕様の擁護にはならんぞ すみません。
qmailでエラーメールを、postfixのように添付にしてリターンさせることって出来ますか? postfix のように、ではなく RFC3464/1894 な。
qmail は QSBMF という独自仕様に誇りを持っているので、RFC を無視する。
http://cr.yp.to/proto/qsbmf.txt
ウンコみたいな誇りだが、djb はこれが最上だと信じてるので
ソースを改変せずに RFC に準拠させることはできない。
そういうパッチが出回ってるかどうかは知らん。
>>95 ttp://cr.yp.to/qmail/dist.html 10年ぶりくらいにMail鯖を作ることになったんだけど、
qmail を使い続けるべきかどうか悩むなぁ。。。 >>97
どうしてもvpopmail + ezmlmつかいたいって人でもない限り、qmailはやめるべき >>98
結局postfixにしたよ。
Maildir形式もサポートされてるし、
設定ファイルも分かりやすいね。 qmailと違ってRFCに堂々と違反しているところもほとんどないし、
まとめ送りにも対応しているし、存在しないメールアドレス宛てのメールも
一度受け取ってからbounce mailを出すような真似はしないし、
spam対策もやりやすいし。RDBMSを直接叩いてaliasとか引けるし。
あとはqmailadmin + ezmlm的な環境さえpostfixで構築できればいいんだけど… ezmlm ならば postfix でふつーに動くよ。
大きなところだと、bugtraq@securityfocus の ML が postfix + ezmlm で動いている。
というか、securityfocus.com のためにわざわざ postfix に ezmlm サポートを
追加したとどこかに書いてあった。
今時まともに運用しようと思うと、パッチ当てまくり、
ツギハギだらけのフランケンシュタイン状態にしないといけないしな。
もはやqmail本体の理想からはかけ離れている。 あるuserが~/.qmail-fooを使おうと思った時に、
たまたまuser-fooがいるとだめなんだよね>postfix
qmailからpostfixへ移行する際のヒントになるようなサイトある?
ググったけど見つからん イロハが分かってないので、ここで質問するのもどうかと思ったが
どこでと言われれば全部としか・・・
まぁ、急がないのでヒマな時にでも FreeBSD上でqmailとtcpserverを動かしてます。
# cat /etc/tcp.smtp
127.:allow,RELAYCLIENT=""
192.168.:allow,RELAYCLIENT=""
=.example.jp:allow,RELAYCLIENT=""
:allow
なんですが、
# telnet relay-test.mail-abuse.org すると、
:Relay test: #Test 11
>>> mail from: <spamtest@example.jp>
<<< 250 ok
>>> rcpt to: <"nobody%mail-abuse.org">
<<< 250 ok
>>> QUIT
<<< 221 example.jp
Tested host banner: 220 example.jp ESMTP
System appeared to accept 1 relay attempts
と1つ穴があるようです。
どう対処すればいいでしょうか?
>>112
その失敗したテストがどうなるのが正解なのかよくわからないけど、
少なくともその tcp.smtp では全部素通しなのでは? >>112
どこの第三者中継テストだろ、RBL.JPのじゃなさそうだけど。
パッチの類はなんか当てた? >>112
受け取った後で中継せずにバウンスするので、あまり好ましくはないけど、
まあ許容範囲。このチェックを通過させるためだけのパッチも存在する。
でも、そんなパッチをあてるぐらいならば存在しないローカルユーザ宛メールを
蹴るパッチを当てるべきだし、さらに言うならば今さらそんなことに頭を悩ますよりも
qmail を捨ててほかの MTA を使うべきだ。
>>113
>少なくともその tcp.smtp では全部素通しなのでは?
SMTP は全部素通しで問題ないでしょ。RELAYCLIENT を設定するかどうかが問題。
この場合、tcpserver の引数に -p がない場合、逆引きを *.example.jp に
詐称すれば踏み台になってしまうのでよろしくない。-p があれば
正逆一致する必要があるので問題ない。
>>114
>どこの第三者中継テストだろ、RBL.JPのじゃなさそうだけど。
目はついてる?
qmailのPOP3だと、MUAで「鯖にメールを残す」設定にしても、
他のMUAで読めないことありませんか?
MailDir見ると、しっかり消されてるんです。
gmailだと、
pop3の設定でユーザー名@gmail.comをrecent:ユーザー名@gmail.com
ととかやればいけるんですが。
なんでメーラーを晒さないの?
俺は、そんな現象に遭遇したことはない。
新着じゃないのに新着として取り込まれる事は有るが・・・
で、gmailは使わないので知らない。 っていうか、qmailとqpopdとを区別できないのかよ、こいつは でも今さらqmailのpop3dの情報なんて、他スレでも集まらない悪寒。 qmail-pop3dなんてゴミだから捨てろしかいいようがないな qmail-pop3dってMaildirを扱うリファレンス的実装でそ?
IMAPでいうところのuw-imapdと同じ、最初に試してみるけど二度と使わない。 >>118
すみません。忘れてました。
窓のthunderbirdです。(職場でも自宅の複数のPCも)
>>119
総称で"qmail"と読んでいいのかなと。
勿論、qpopdの問題なんでしょうが・・・、
>>125
>qmail-pop3dってMaildirを扱うリファレンス的実装でそ?
そうなんですか?
所詮、リファレンス実装なんですか・・・
まぁ、うち、Solarisでqmail(smtp&pop両方)ってとこで、
既に終わってるという話もありますが><
10年前ならともかく、今ならCourierとかDovecotとか、
もう少し"使える"POP/IMAPサーバーあるからねえ。
そういやqmail-pop3dって改行をCRLFじゃなくて、
生ファイルのLFだけ数えちゃうってバグがあった気がしたけど、まだ残ってるの? >>129
>そういやqmail-pop3dって改行をCRLFじゃなくて、
>生ファイルのLFだけ数えちゃうってバグがあった気がしたけど、まだ残ってるの?
ぐは><
Postfixを上司に具申しよう・・・、という夢を見たが、移行がやたら難しい。
(sendmailやPostfixからqmailは、それなりらしいが、逆はかなり厳しいとか><) ん?PostfixはMaildir形式サポートしてるし、バーチャルサーバで利用するにも
PostfixAdminとかあるし、そんなに移行大変だとは思わないけどなあ。 費用対効果を考えると、実害が出てないので移行する方向になりにくい。
移行するにも結構お金が掛かる。 明らかに低機能かつバグ持ちで問題があるのは付属のpopサーバだけなので、
機能強化ついでにDovecotあたりに置き換えればイイ。
qmail自身もpatch無しではまともに動かせない昨今の状況だけどね... >>133 胴衣。うちの場合、ezmlm-idx を盛大に
使っているのがボトルネックだわさ。 DovecotつかうならPostfix+Dovecotでいいんじゃない?qmail出る幕なし imapのチョイスとqmail vs postfix の選択になんで
関係あんのか、訳若布。 んまぁ、postfix + dovecotだと認証関連が楽できるな。postfixのdovecot認証対応は
非常にありがたかった。 最近Dovecot + Postfixでメールサーバ構築してみたけどたしかにスゲー簡単。
qmailのシンプルな設定ファイルは好きだけど、SMTP-AuthやTLSを使うにもパッチまみれにしなきゃならんし新規では勧めづらいね。
Dovecotはcheckpasswdにも対応してるみたいだしqmail-pop3dだけ置き換えるというのもありかな。 ネットマスク形式を引数で読み込み、tcpserverのアドレス範囲形式
に変換して標準出力するコマンドがありましたらご教示下さい。
例えば
58.65.232.0/21
→
58.65.232-239.
みたいにです
qmailのアンインストールって
・/var/qmailの削除
・qmail絡みのユーザとグループの削除
でいいの? >>141
sendmailに戻すとか考えないならそう 58.65.232.0 / 21
32 - 21 = 11 = 3 + 8
2^3 = 8
232 + 8 = 240
58.65.232.0 - 58.65.(240-1).0
58.65.232.0 - 58.65.239.0 なんか動的にプログラムに喰わしたいんじゃいの?
計算出来ないからコマンドね?とか聞くバカいるわけないじゃんw krfilterをダウンロードして
ttp://www.hakusan.tsg.ne.jp/tjkawa/lib/krfilter/uALL2.txt
tcpserverを再設定するスクリプトを
組んで、毎日実行させようと思いました。
後はスレ違いになりそうですが、
見た感じperlでsplitを使えば楽そうですね。
きれいなコードが書けたらいいのですが
私の技量だと、場合分けが多くなりそうです。
(ネットマスクの数値により、
何番目のセグメントの数値を足すとか、
あと、
58.99.0.0/16
なら
58.99-99.
でも良いと思うけど、58.99.にするとか
) $ perl -MNet::CIDR::Lite -e '$c=Net::CIDR::Lite->new;$c->add("192.168.0.0/24");print $c->list_range,"\n"'
192.168.0.0-192.168.0.255 >>152
ありがとうございます!
tcpserverのアドレス範囲指定って、
192.168.0.0-192.168.0.255
みたいな指定もできたんですか。
知らなかったです。 最近qmailを運用しているホストからのbackscatterが増えて困ってるんだけど、
この手のまともな運用できてないとこにどうやって知らせたらよい?
前に一回連絡したら「qmailは安全・完璧」とか思いこんでて逆ギレされた。orz 発信源so-netからのSPAMがやたら来るんだけど
so-netのpostmasterにメールしても返事が来ないorz >>154
ttp://trombik.mine.nu/~cherry/w/index.php/2006/09/25/738/local_recipient_maps-is-a-must-nowadays
>>154 ttp://code.dogmap.org./qmail/ のパッチあてれ、といったれ。 私も qmail 教徒だったが、最近 MTA + imapd を立てる
ことになり、Postfix にしようかと思っています。
Postfix + dovecot という組み合わせが↑で出ていますが、
Postfix + courier imap とどっちがおすすめでしょうか? なんでここは
いつまでもqmail
っていうタイトルじゃない訳?
>>162
「いつまでも」どころかそもそも前スレで終了して djb スレに合流するはずだった。
アホが次スレを立ててしまったので、なしくずしにそのまま使ってるだけ。 初めまして。
メールサーバ(qmail)にて以下のログが出力されました。
tcpserver: end (数字) state 139
この結果の『state 139』が何を意味しているのかわかりません。
色々調べてみましたが回答を得られない状況です。
初歩的な質問で大変申し訳ありませんが、どなたか教えて頂けますでしょうか。
>>165
> 回答を得られない状況です。
マルチポストしてんのか? あらかじめ登録してあるメールアドレスにしか、送れないようなパッチはあります?
逆の登録してあるメールアドレスしか受け取らないというのはあったのですが。。。 プライベートIPのみを持つサーバにqmailを入れて動かしてるんですが、
メール自体は外部に送信できるものの、その仕組みがよく分かりません。
外部で受信した際のReceivedヘッダを見ると、送信元のゲートウェイが
指定されています。
これはどういう仕組みなんでしょうか? >>169
NAT という仕組みです。
qmail とは無関係なのでよそで聞いてください。 >>165
end の横の数字は qmail-smtpd の PID
state はその終了コード 質問があります。
LINUX にて qmail + courier-imap をインストーリしました。
imapは正常に動作してる模様です。
tcp 0 0 0.0.0.0:143 0.0.0.0:* LISTEN
pop3は認証できるのにimapの認証ができません。
どこの設定を変更したらいいでしょうか?
よろしくお願いします。 courier-authlibのコンフィグで
--with-mailuser=vpopmail --with-mailgroup=vchkpw
これ入れてなかったせいでしょうか?
とりあえずこれやってみます。
お騒がせしてすみません。 質問
メールクライアントで
POP3でログインするとメール送信はできる
IMAPでログインするとメール送信はできない。
どゆこと? >>178
そんな鯖側について全く触れてないで『どゆこと』といわれてもなぁ… 単にPbSでPOPしかPbSでの認証として扱ってくれてないのでは? qmailadminでメールアドレスを追加したとき
Maildirディレクトリに自動的に.Spamディレクトリを生成するにはどうしたらいいでしょうか?
前任から引き継いだqmailなんだが、popのログが取れてないってどうよ?
正確には、一部のクライアントだけ残っててその他大勢は残ってない。
apopのパッチが当たってるらしいんだが、popと切り替えても変わらんし・・・
捨てたいのも山々だが一存ではできなくて困ったもんだ。
よくわからんのだが、qmail-pop3ってのとqmail-smtp-pop3ってのの両方が動いてるみたい。
前者は全くログが無くて、後者は条件不明のごく一部のみ。
APOPが使えるように、何がしかのパッチが当たってる・・・らしい。
>>186
だから、素直にdovecotやcourier-imapdに乗り換えろよ。
qmail-pop3dはゴミだぞ。 qmail-pop3dはロガー噛ましてログ取るか、パッチ当てないとログ出ないよ。 さんくす。
やっぱり捨ててしまわんとだめか・・・
一部だけログが残ってるのが気になるんだが、現状では無理と言うことで。
IMAPも気になるんだが、社内の主流が対応してないんでPOPは外せない。
APOP捨ててSSL越しにPOPするのも興味あるんだが、クライアントに証明書入れるのが嫌。
#より正確には、ローカル認証局を運営するのが嫌・・・
だから imap じゃなくても dovecot や courier-imap を使え、と。
どっちも pop あるから。
とくに dovecot なら UIDL の形式もカスタマイズできるから、
うまく設定すれば MUA 側の既読情報を壊さずに移行できるはず。
捨てたほうが良いんだけど、どうしても捨てられない場合には
http://ore.dyndns.org/mail/qmail-log.html
というパッチもある。
でもdovecotにするのが吉。 qmailをインストールして起動したのですが、以下の通りすぐに「Connection closed by foreign host.」が表示されSMTP接続できません。
どなたかご教授ください。
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
Connection closed by foreign host. >>193
qmailインスコしただけじゃ外部ネットワークから繋がらない。
netstat -an | grep LISTEN | grep :25
↑でlisten状態を確認して、listenしてないならtcpserver入れて連系しろ。
それから、今の時代にqmailは合わないからお勧めしないw
# 特に初心者には。
>>196-197
ついでに言うと、tcpserverでなくてもinetdとかxinetdでもいいよね。
で、今はtelnet localhost 25ってやってるから関係ないけど、
その通りlistenさせるようにしたけど、ipchains/iptablesとかipfwで閉じられていて、
今度は外からSMTP接続出来ませんって聞いてくるかもしれない。
>>193
qmailのインストールと起動とは?何を何処にどうやってやりましたか?
# といいつつqmailは3年ぐらい使ってないから忘れたけど…
# 夏なんで夏厨みたいにわいてみました。 % sockstat | fgrep mail
qmaill splogger 734 2 dgram -> /var/run/log
qmaild tcpserver 723 3 tcp4 *:25 *:*
FreeBSD 6.2 + qmailですがports mail/qmail-dkつかってDomainkeysには対応できたんだけど
だれかDKIMに対応させたひといる? qmail は今動いているもののメンテだけに留めましょう。
新しいことをやりたいのなら qmail は捨てろ。 さて、そろそろ反撃してもいいですか?
☆★☆ qmail 2.0 ☆★☆ ttp://www.snak.org/software/qmail2/ Linuxにてqmailとspamassassinをインストールして正常に動いてますが
連携が出来てないようです。
何が原因でしょうか?
(どちらも正常に動いてるようなので原因が分かり難いです(泣)
ご教示よろしくお願いします。 >>207
レスありがとうございます。
qmailqueue-patchでしょうか?
一応パッチ当てて再コンパイル済みです。 いや、まぁ。
貴方が出した情報と同じ情報レベルで回答しただけです。
一応聞いておくと qmail-scanner とか入れてる?
何をどうしたのか、何をもって正常と判断しているか、を書く気が無いから下のような
サイトと同じ手順踏めば良いんじゃない?
http://www.kuri3.net/modules/bwiki/index.php?AntiSpam
それでダメならサイト管理者に質問すれば良いと思う ところでqmailのリレー制限って
relay-ctrlとqmail-vidaどっちがいい? ハードディスクが逝っちゃって、
queue/intd queue/todo のファイルがすべて消失してしまって、
queue/mess だけ、数千通のメールが残っている状態なのだけど、
これを配信するにはどうすれば良いのですか。 ムリ。あきらめましょう。
誤配送してもいいのならば、qmail-inject に食わせればなんとかなるかもだけど。
スパムメールのFromアドレスにうちのpostmasterのアドレスが
記入されています。
しばらく放っておいたらバウンスのメールが何十万通も来ていた
ので問答無用で削除しようと思い
/var/vpopmail/domains/hoge.com/.qmail-postmaster
に
| /var/vpopmail/bin/vdelivermail '' delete
と書いたんですが消えてくれません。
これ間違ってますか・・・?
postmasterのディレクトリは消しちゃまずいですよねぇ。 qmHandleってキューから削除するだけじゃなかった?
受信してしまったモノを消すか、受信しないようにするかで対応しないと
ダメなんじゃない? >.qmail-postmaster
.qmail-defaultにしてみるとか。
あ、それは試したです。
.qmail-default
.qmail-mailer-daemon
.qmail-postmaster
すべてに
| /var/vpopmail/bin/vdelivermail '' delete
としてもダメでした・・・orz ウチも結構来てた。バウンスメール。
最初分からなくって、とりあえずキュ−に溜まってたヤツは
qmHandleでプチプチ消してたけど、.qmail-default に | /home/vpopmail/bin/vdelivermail '' delete
って書いたら問答無用で消えてってます。
オーナーとかパーミッションは桶?
-rw-r--r-- 1 vpopmail vchkpw 44 7月 30 2006 .qmail-default
-rw-r--r-- 1 vpopmail vchkpw 55 7月 30 2006 .qmail-default-org
-rw-r--r-- 1 vpopmail vchkpw 44 10月 4 01:11 .qmail-postmaster
-rw-r--r-- 1 vpopmail vchkpw 44 8月 13 2006 .qmail-webmaster
キューに溜まってるのか、受信しちゃったのかどっちなんだろ。 どもです。なんか↑のパーミッションと微妙に違ったので644の
vpopmail:vchkpwに設定しました。
こんなんなってました。
-rw------- 1 vpopmail vchkpw 43 Aug 3 2006 .qmail-default
-rw-r--r-- 1 root vchkpw 43 Jul 30 2006 .qmail-mailer-daemon
-rw-r--r-- 1 root vchkpw 43 Jul 30 2006 .qmail-postmaster
メールの数からしてまだ解決したのかどうかわからんのですが、
とりあえずこれで様子をみて見ようと思います。
>キューに溜まってるのか、受信しちゃったのかどっちなんだろ
キューには常時2,3件程度(qmHandleをcronに登録して消してます)です。
問題なのは受信してしまってるメールの方です。postmaster@宛に
10万通とか・・・orz
しゃーないので常時受信し続けるクライアント動かして誤魔化してますが。 >>221
postmasterってアカウントが存在してるから受信しちゃうんじゃない?
違うかな?
ウチは余計な名前のアカウントは作ってないですね。
root, webmaster, postmaster等はナシです。
postmaster は受け取れ。RFC で MUST だ。
受け取ってから捨てる分には文句言わんが。
仮に受け取らないにしてもそれを人に勧めるな。
>>222
qmailadmin使ってるので消すわけにも行かないんですよね。
RFCでMUSTとは知りませんでした。
で、パーミションも確認したんですがやはりダメ。ぅぅ。
vdelibermailを直接叩くとsyntaxエラーが出るんですが、間違ってますか?
他で調べたのと同じ内容にしてるし、空にしてもbouce-no-mailboxにしても
出てまう。
# /var/vpopmail/bin/vdelivermail
vdelivermail: invalid syntax in .qmail-default file
# cat /var/vpopmail/domains/test.com/.qmail-default
| /var/vpopmail/bin/vdelivermail '' delete
# ls -l /var/vpopmail/bin/vdelivermail
-rwx--x--x 1 vpopmail vchkpw 76988 Sep 4 20:59 /var/vpopmail/bin/vdelivermail* 問答無用で削除するのは
.qmail-postmaster とかに
#の行だけ(要はコメントのみ)
にしたら何も処理せずに消えるんじゃなかったでしたっけ。 >>226
>223
まぁ一緒だけどね。
フィルタリングするかして減らすしかないんじゃない?
>>226
うおー出来た。#でえがったんですね。
RFCにゃ準拠してませんがどーせ見もしないで捨てるんでこれで逝きます!
ありがとうございました。 >>228
それやると正規のエラーメール受け取れなくなるから、spamassassinでも併用して振り分けた方が
いいよ。 qmailとvpopmail使ってるんだけど、HotmailやGmailみたいにブラウザからメール見れるアプリってないですかね?
IMAPとかになるのかな?
栗鼠のヤツとか入れればいいのかな?
qmail + vpopmail + ezmlmを使用し始めたんですが、
メール送信時に、To:にAさんのメールアドレスを入力して、
さらにCC:にメーリングリストのアドレスを入力すると、
Aさんがこのメーリングリストのメンバーの場合、
当然ですがAさんは二通のメールを受信してしまうんです。
これをどちらかだけ受信するように設定する方法があれば、
誰か教えていただけませんでしょうか? なんでそんなことやってんの?
普通toにはMLのアドレス入れるっしょや。
#つか、いっぱいコミュニティあるんだからそっち使えば(ry
>>231
そんなMLマネージャないと思うけど。
To:は直接相手方のMTAに通信が行っちゃうから阻止出来ないし
MLマネージャ側で仮にTo:と重複アドレスをチェックしたとして
マネージャ側でヘッダの改変(通し番号の追加など)とかするんだから
To:で届くメールとCc:で届くメールは内容が異なる場合がある。
ユーザはどっちかって言うとMLで配送されるメールの方が管理しやすいから
どっちも欲しいユーザは絶対いるはず。
だから変なことを考えないで、ヘッダで指定された通りにした方が無難。
運用で回避すべき問題かと。 >>230
webminという手があったりします。 >>230
Ilohamail使ってます。
pop3でも対応してます。
>>234
まぁExchangeやnotesは1通しか来ないからなぁ。 >>235-236
thx.
ケータイからもアクセスしたいってのが要望としてあるので、
今回は自前で作ることに。
Perlかなんかで簡単に済まします。
>>238
keitai webmail とかそんな名前のヤツがあったハズ。 すいません 質問させて下さい
maillogの中の、
delivery 1111: success: did_0+0+0/
この did_0+0+0/ の部分、3つの0 or 1が入る部分は
何を意味しているのでしょうか? 順番に、ふつーにメールボックスに保存された数、
別のアドレスに転送された数、プログラムに渡された数。
0 or 1 ではなく、.qmail の記述によっては2以上になることもある。 恐れ入りますちょっと質問させてください
qmail + vpopmailの環境で運用しています。
最近プロセスを見ると、
qmaild /var/qmail/bin/qmail-smtpd
や
qmailq bin/qmail-queue
が大量にプロセス上に発生しており、
SMTPコネクションが足りなくなる事態が発生しています。
maillogを見ると、自ドメイン宛のスパムメールのようです。
(うちのドメインがexample.jp宛だとすると、存在しないxxxx@example.jp宛に大量メール)
ちなみにエラーメールは
「| /var/vpopmail/bin/vdelivermail '' delete」
として返らない設定にしているつもりです。
対策方法をご存じの方がいましたら教えてください。 >>244
追記です。
ちなみにオープンリレーのテストはパスしたので、
誰かにメールを撒かれまくっているという状況ではないようです。 qmailの大きな弱点のひとつ、存在しないアドレス相手にSMTP段階でbounceができないというものだね。
qmail-sppのプラグインなどで対処可能。
たとえば、 ttp://www.maiers.de/qmail/art38,71.html >>246-247
ありがとうございます。
ひとまずconcurrencylocalとconcurrencyremoteを増やして応急処置してみました。
近々根本的な解決をしたいと思います。 antibadmail つかってみ。
誤認が気になるなら、デバッグモードでコンパイル。
Rejectをキーにログ見てホワイトリストをつくればよろし。 FreeBSD でqmail を使用しているのですが /var/log/maillog に以下のような
メッセージが出てきました。
alert: unable to opendir mess/0, sleeping...
alert: unable to opendir mess/0, sleeping...
alert: unable to opendir mess/0, sleeping...
alert: unable to opendir mess/0, sleeping...
alert: unable to opendir mess/0, sleeping...
/var/qmail/queue/mess/0 を開けずに出力されているメッセージかと
思いパーミッションなどを確認してみたのですが設定は合ってそうです。
drwxr-x--- 11 qmailq qmail 512 Oct 30 21:08 .
drwxr-xr-x 12 root qmail 512 Oct 30 21:29 ..
drwx------ 2 qmails qmail 512 Oct 30 21:52 bounce
drwx------ 25 qmails qmail 512 Oct 30 21:08 info
drwx------ 25 qmailq qmail 512 Oct 30 21:08 intd
drwx------ 25 qmails qmail 512 Oct 30 21:08 local
drwxr-x--- 2 qmailq qmail 512 Oct 30 21:08 lock
drwxr-x--- 25 qmailq qmail 512 Oct 30 21:08 mess
drwx------ 2 qmailq qmail 512 Oct 30 21:52 pid
drwx------ 25 qmails qmail 512 Oct 30 21:08 remote
drwxr-x--- 25 qmailq qmail 512 Oct 30 21:08 todo
どなたか、アドバイス頂けませんでしょうか。 virtualdomainsで
user@unko.net:test
と設定した場合、
user-可変文字列@unko.net 宛のメールって受信できます?
.qmail-user や .qmail-default 置いても受信できない… qmailの設定なんだが最初からサーバーに入ってたため設定がイチマイチわからん…
.qmailってのはどこに置けばいいんですか?
qmailの位置は /var/qmail です。 >>252
MXはあってるのだろうな?
rcpthosts とか、localsチェックしたか?
場合によっちゃ、/var/qmail/users/assign を弄る必要アリ。 >>254
各ユーザーのディレクトリって普通どこにあるもんですか?
色々徘徊してみたがわからない…
/var/qmail/users にあるかと思ったんだがそこになかったもので あと/homeかと思ったんだがそこにはアドレスごとのアカウントはなかった。 情報不足で状況が全然分からんから先に進まないと思う。
まぁ、/home/以下にないんだったら、qmail-vidaとかが導入されていて
/home/pop/か/home/vpop/にあるんだとおもうけどね。 >>258
うーん…/home/popとかはないですね。
/homeの中に一応ユーザーっぽいのはあるんですが
メールアドレスのアカウント名と違うんですよね。
どのような情報があれば良いでしょうか? >>259
君にはメールサーバのメンテは敷居が高いと思うから
然るべき所・人に対価を払ってやってもらった方が良いと思う。 >>260
そう言われてしまうと何も言い返せないんですが
一応やりたかった事だけ書いておきますね。
.qmailを使ってメールがきたらphpを起動するって事をやりたかったんです。
解答ありがとうございました。 rcスクリプトを探しまわしたりpsしてqmail-smtpがどのような環境変数を与えられて
動いているのか確認すれば、後はそれを追いかけていけば済む話なのに… /var/qmail/alias に置くのではいかんのか ここで聞いていいかわからんですが、qmailなプログラムに含むってことで
djbdns(=tinydns)ですが、新しくレコードを追加するときは
=hogehoge.co.jp:1.8.7.108
な書き方をしますが、
こいつのIPをかえるときって
=hogehoge.co.jpl:1.8.7.199
とかで既存レコードの上書きにはならないの?
-hogehoge.co.jp:1.8.7.108
ってしてから
=hogehoge.co.jp:1.8.7.199
しないと駄目なのかな?
リファレンス見たが
http://cr.yp.to/djbdns/tinydns-data.html
-fqdn:ip:ttl:timestamp:lo
For versions 1.04 and above: This type of line is used by
programs that automatically edit + lines in data to
temporarily exclude addresses of overloaded or dead
machines. The line is ignored.
一時的にってのがどうも分からん。
その他にも調べたけど既存データの書き換えについて書かれているところ
がない!
教えて君ですみませんが、教えてください。 Nov 14 19:02:30 server smtpd: 1195034550.790939 envdir: fatal: unable to run relay-ctrl-chdir: file does not exist
Nov 14 19:02:30 server pop3d: 1195034550.793693 envdir: fatal: unable to run relay-ctrl-chdir: file does not exist
これは一体どうやって解決すればいいんでしょう? file does not existって書いてあるじゃん。 ユーザのMaildir内のディレクトリを確認すれば? >>272
ホスト名の逆引きで制限しているっぽい。
*.jp じゃないと駄目なのかな。こちらは *.net だが、撥ねられている。
1〜2年前から?
久しぶりにこのスレ更新されていたから見てみたけど、
ライセンスの件は話題にはならないのね。
ttp://journal.mycom.co.jp/news/2007/12/04/004/index.html ある意味、本人は自覚してて、陳腐化宣言なのかな、とかオモタ >>275
本人はとっくにpostfixに移行してたら笑うな 本人やる気もう無くしたのと、標準的GNUライセンスでなんであれ
開発を肩代わりするチームを作らなかった行状の報いだな。(悲 無意味に山のように機能追加されて、無様に生き恥を晒すこともあるまい
システムのライフサイクルとして、単純・単機能・使い捨てというのも
ひとつのありかただと思うけど >>273
ちょ、ちょ、こんなもの返すなよw
bash-2.05b$ dnsq any man.qmail.jp a.ns.qmail.jp
255 man.qmail.jp:
113 bytes, 1+1+1+3 records, response, authoritative, noerror
query: 255 man.qmail.jp
answer: man.qmail.jp 86400 A 127.0.0.0
authority: qmail.jp 86400 NS a.ns.qmail.jp
additional: a.ns.qmail.jp 86400 A 131.112.32.6
additional: a.ns.qmail.jp 86400 A 218.44.237.137
additional: a.ns.qmail.jp 86400 A 202.41.218.243
bash-2.05b$ >>279
使い捨てられる、と思ってたのにいつまでも使われ続けてる例はごまんとある
2000年問題とか、COBOLがまだ使われてるとか、、、
10年後もろくにメンテされてないDJBwareがどこかで動き続け、
その一部は周囲に迷惑をかけ続けているだろう
DJBの意固地なライセンス体系が結果としてDJBwareをダメにした public domain になった以上、それを拾ってきて GNU 系プロジェクト
として立ち上げるのは、イセンス的にはおkなんじゃいのか?いろいろ
フォークしちゃう可能性は否定できないが、netqmail まわりに結集
すれば。。。。 publib domainを拾ってきても、著作者にはなれない(著作権はそれを生み
出した人に発生する)のだから、著作権を主張するGPLとは相容れない。 >>284
いや、GPLにはなれないってだけで、いわゆるオープンソース的に開発することは
十二分に可能。 public domain とはそういうこと。
ttp://www.gnu.org/japan/manifesto-1993j-plain.html より
> GNUをどうやって配布するか?
> ==========================
>
> GNUはパブリック・ドメインには置かない。それにより、誰もがGNUを修正して
> 再配布でき、配布者が再配布することを禁止されることもない。つまり、独占
> 的な修正はできないのである。私は、あらゆるバージョンのGNU ([訳注] 誰で
> もソース・コードをアクセスできるという意味で)が確実にフリーであり続け
> て欲しいのである。 >>280
それのどこがいけないのか説明できないだけだろ。 いけなくはないかもしれないけど、漏れも分からん・・・どういう意図が?
教えてplz
dig man.qmail.jp | grep '^[^;].*IN[[:blank:]]*A'
man.qmail.jp. 86400 IN A 127.0.0.0 設定したあのお方も説明に苦しむ気がしないではない。 あ、すまない。昔はman.qmail.jpにqmailの日本語訳マニュアル等のコンテンツが置いてあったのか…
DNSBLなんかを立てようとして失敗してるとか??? 東工大の中で引いても127.0.0.0返してるぜ
学内ネットのDNSをBINDで構築された腹いせだろうか t3.hpcl.titech.ac.jp:80 に HOST:man.qmail.jp で問い合わせると
HTTP/1.1 301 Moved Permanently(略)Location: http://man.qmail.jp:8000/index.html
を返されるけど、学内からは t3.hpcl.titech.ac.jp:8000 見えたりするのかな?
前から気になってたんだけど、この
前野年紀ってのは何者なんですか?
なんか電波じみた思想のひとっぽいですが… 1944生まれって、定年じゃないのか?
しかも、准教授だしww djbの若さと、単なる信者の前野の年寄りぶりは対照的だよなぁ。 >>296
東工大の原子炉研に飼われていたが原子炉に関係ある仕事を一切せず、ひたすら趣味に走った税金泥棒
そして親の東工大計算機センターからは完全スルーされてる哀れな老人 それでも(当時は)公務員だったからクビも切られず現在に至る・・・か
てか、こういう立場の教員って研究室持ちで指導担当学生がいるの? 大学院受けるとき、応用物理専攻と原子核工学専攻のどっち受けるか迷って
原子炉研に話を聞きに行ったが、学生とってないっぽかった。
教授会からも無視されてるんじゃない? 日本の場合、物理のガッコのセンセイはITリテラシ技術なんての興味がなくて
結局置いてかれているもの。 バセダだって陸橋だってどこだってそんな感じ。
CERNみたいなのあこがれちゃう。それであの先生は一目置かれているんじゃねの 開発者ならわかるけど、エバンジェリストにそこまで一目置くかなあ・・・ 296っす。おもったよりレスついてちと嬉しかったり…
ありがとうございます。
man.qmail.jpって、前から妙なアクセス規制してたり
なにをやりたいんだろうこの人は…というのが個人的疑問でして。 >>306
日本における教祖的役割だったのは確かだし、10年前ぐらいまでは
日本のインターネット界隈ではそれなりに一目置かれていたのも確かだけど、
学校における立場まではわからんなぁ つまり、臭いものに蓋というのが教授とかエライ人のやり方。
んで、臭いものを扱わなくちゃいけない時点で、汲み取り屋に頼む。
これは、一般的ではないのか? 皆さんがお勧めするパッチの組み合わせはどれ?
但し、組み合わせる時に修正が必要なものは、修正ポイントも教えてくれると嬉しいです。
そもそも qmail なんか使わないというのがオススメ。
これまでの惰性で使い続ける以外に qmail を選択する理由なんか存在しないし、
これから新しくパッチを試すとか組み合わせを考えるなんてナンセンス。
>>308
要するに、
IT・ネットワーク技術者関係から:以前は>>308
学内・本業関係から:>>302-305
って評価ってことでおk?
最近は見ないけど10年くらい前にはよくいた、
研究者くずれの大学のネットワーク・計算機運用屋ってことだな
itojun氏追悼スレでもそんな話が出てた >>313
前野氏じゃなくても、同じような研究者くずれのネットワーク屋ってことだろ しかし
http://www.postfix-jp.info/
を見てると、Postfixって1〜2ヵ月に1回のペースでバージョンアップしてるのね。
修正内容までチェックしてないけど、正直このペースでバージョンアップ作業を
しなきゃいけない(must)なら、メンテのコストは結構掛かるね。
入れ替え時(バージョンアップを含む)にメールのロストが起きなくて、
性能が極端に落ちるとかなければ、移行を検討したいけど。 別にやらなくっても大丈夫。セキュリティアップデートじゃないから。
あと、バージョンアップでメールロストなんてないよ。 >>311
でも数年トラブル無しで使えたのは助かっています。
今から他に移る気力が無いので、お勧めのパッチだけ教えて頂ければ助かります・・・
qmailのパッチだとspam対策関係は必須だと思う。 うちはnetqmail-1.05をベースに
・qmail-1.03-concurrencydomain.patch
・netqmail-qregex-20040601-vrt.patch
・qmail-spf-rc5.patch
・qmail-103-dns.patch
・netqmail-1.05-smtpd-auth-0.31.patch
で使ってます 一からまっさらの鯖をあげるのに今さらqmailってことはないと思うが、
何年も動かしっぱなしの鯖だと、とりあえず現状に追随するだけはしときたいってこともあるよな >>322
具体的な例をありりです。
#パッチ同士の「相性」がないといいなぁ。
#diffとか、よくわかりません>< qmail本体ではないがspam対策だと
qgreyにS25R + tarpit before qgreylist パッチをあててqmail-smtpdの前にかまして使うのがおすすめ SPAM対策にはパッチいらん
antibadmailで十分
>>327
おいおい
antibadmailの使い方知ってるの?
すまん
windowsの似た名前のスパムフィルタと勘違いしてたわ 不正中継対策はしてるのですが、大量のメール中継攻撃をくらってます。
(中継はされないけどキューイングされる状態)
tcprules上では「127.0.0.1:allow,RELAYCLIENT=""」を許可してたのですが、
smtpdのログを見るとfrom 127.0.0.1からアタックされてるように見えます。
IPが偽装されてるのだと思うんですが、対策はないでしょうか
>>330
ユーザ数は多いの?
少ないならvalidrcpttoとか使って許可するユーザを特定しちゃうとか >>330
rkhunter入れて調べろ。
話はそれから。 IP偽装で127.0.0.1とTCPで会話出来るとは思えんが・・・
まぁのっとりだよなぁ 前野さんおすすめの
一見さんお断り方式ってパッチでてますか? >>337
だね。httpdとMUAが動いているホストではよくあるアタック djbが開発したソフトウェアの安全性は高いので、
安全と思って毎日ちゃんとログみないやつ多そうだしな(特に自宅鯖厨 Qgrey
http://k2net.hakuba.jp/qgrey/index.html
を入れてみようと思うんだけど、S25R で reject されなかったメールは
基本再送要求を出す(遅延する)のかな?
ホワイトリストを定義しないと全て遅延?
それとも S25R で reject 候補になったものだけ再送要求をかけるってことかな?
使ったことある人・詳しい人、どうか教えて下さい。 >>47→>>51→>>56→>>68の流れにあった配布物ってどこで公開されているの? Qgrey単体ではS25Rできません。
S25Rしたいなら
Qgrey - S25R + qgreylist パッチ
ttp://k2net.hakuba.jp/qgrey/
S25R + tarpit before qgreylist パッチ
ttp://chiji.atnifty.com/tools/s25rtarpit_before_qgreylist/s25rtarpit_before_qgreylist.html
を使うべし。ともにQgreyのパッチ
S25Rの条件にhitしたホストまたは初めてアクセスのあったホストにだけ再送要求。
これらのホストの再送が短い間隔で行われたら拒否。
それ以外は一定期間許可(一定期間でアクセスのあったホストの情報はリセット)
なのでホワイトリストを定義しないと全て遅延ではない。
後者のパッチはホスト名でのブラックリストホワイトリストの機能があるので、後者をおすすめ。 >>342
QgreyとかtaRgreyとかの中の人ですが、後者のパッチは初めて知りました。
自分もこちらのほうがよいと思います。
>>340-341
Webにも書いていますが、自分がQgrey書いたのは、知人でqmail使っているところから
Rgreyみたいなことできないか?と頼まれてそれで書いたもので、その知人も結局
postfixをフロントエンドにおいてtaRgreyで運用するようにしてしまったので
自分ではもうqmail使っていないため、今後のメンテもあまり考えてません。
ただ、ここの過去スレとか見ると、qgreylist自体があまり出来良くないので
qmail-sppベースでパッチ書いてそちらを使うように薦めたほうがいいかと思っています。
しかし前述のように自分はqmail使っていないのでテストできないため
どなたかテストをしていただける方がいたら>>56の内容で修正したもの書いて
公開しようかと思うのですが、需要ありますでしょうか? >>343
おねがいします。いろいろな手法をくみあわせてスパム対策していますが
まだまだ届いているんです。 >>344-345
ではパッチ書いたときにテストをお願いしたいので、メールでご連絡いただけないでしょうか。
あと、RgreyとかtaRgreyとかは誤検出や遅延などなるべく少なくする、というコンセプトで
これだけでスパムを一通も受けなくする、というようなものは目指してないんですが
そのあたりは了解されてますか?
たぶん9割強はこれで落とせるので、後はHELOのブラックリストとか、コンテンツフィルタで
さらに減らす、というような運用になると思います。 >>346
別の人ですが、私も試してみたいかなと思っています。
ただ、大方どんなものになるかが分からないと
評価できる環境か否かが分かりません。
qmailは皆さん色々パッチを当てているでしょうし。
qmail-sppは必須ということでしょうか? あと、Perlでしょうか。
もう少し詳しく教えて下さい。 >>347
qmail-spp用のgreylistプラグインgreylisting-sppを改造して、tarpitとselective greylist可にします。
qmail-sppは必須で全部Cで書かれたコードになると思います。
qmail-sppを使うと、postfixであるようないろんな条件、例えばおかしなHELOの時だけ
rejectしたりgreylistingしたりというように、柔軟にフィルタを設定できるようなので
ベースとしてこれ入れるようにしたほうがいいんじゃないかと思います。 >>348
了解致しました。
現在、qmail-sppは未導入なので、早急に導入して
メールを出させていただきます。その時には宜しくお願い致します。 netqmail-1.06には素のqmail-1.03にどのようなパッチが当たっているのでしょうか? >>350
netqmail-1.05にqmailのライセンス変更が付加されたもの >>348
ここで言われているtarpitなる機能は
http://spamthrottle.qmail.ca/
と同等と考えても良いのでしょうか?
S25R・greylistingが含まれないことは承知しております。 throttling 開発者は、tarpitting よりこっちのほうが
より凝ったことやってる、と言ってるね。 qmail-spp導入はなかなか厳しいですな。
まずqmail-vidaとの相性がすこぶる悪いです。
手でrejectされたpatchを当てて頑張っているですが、更に
DomainKeys・SPF・TSL対応という大御所も控えているので
やんわり挫折しています。 ____.____ |
| | | | やんわりと窓から投げ捨てれ
| | ∧_∧ | |
| |( ´∀`)つ ミ | ┌────┐
| |/ ⊃ ノ | | | qmail |
 ̄ ̄ ̄ ̄' ̄ ̄ ̄ ̄ | └────┘
だれかがa patchy qmailでもつくらねーかなー(w apache.org が引き取ってくれれば良いわけだ。 >>353
throttlingは、単位時間内のメール数をカウントして、閾値を超えたら制限する、という手法です。
tarpitは、SMTPの返答を数十秒遅らせることで、相手が待ちきれずに切断してくるのを期待するものです。
なので、手法自体が違います。
>>354
throttlingのほうがいいと書いてるのは、単純にtarpitするとDoSされうるんで、そのことだと思います。
が、taRgreyではtarpitを抜けなかった同一IPからの接続はgreylistに回すのでその問題は回避されます。
しかし>>56で書かれている内容だと、tarpitを抜けたかどうかを検知できないんで、その問題は
残ったままになるんで、どうしたもんか思案してます。
>>355
359も書いてるみたいにnetqmailってそのへんのパッチ済みのやつではないんでしょうか。
qmail詳しくないんで嘘言ってる可能性大ですが。 ここで紹介されていたtaRgreyを試してみました。
日本以外から望んだメールが来ることはない(これまでも10年弱なかった)ので
JP以外のccTLDをほぼ全てブラックリスト(接続元ホスト)にいれて
ドットを含まないなどHELOのブラックリストを若干追加して
ほぼ(99%くらい)spamを遮断することが出来ています。
すり抜けてくるspamは接続元IPアドレスが逆引き出来ない所からのもの
ばかりなので、ばっさり拒否したいのですが、逆引き出来ないMXを立てることって
悪意と素人以外に考えられる正当なパターンってありますかね?
関連で、日本の固定IPアドレスサービスで逆引きなし・DNS設置不可
なんてところがあるならば、教えて欲しいです。 逆引きは、DNS鯖が落ちた実績があるからなー
http://www.nic.ad.jp/ja/topics/2005/20051024-01.html
まあ、その間のメールが全部ブラックリストに放り込まれても、
JPNIC氏ねで済むならいいんじゃね。 >>364
なぜ知る必要のないことまで知ろうとするんだ?
> 昨今の状況を考えると正規のMXでは
> 逆引きを設定しないと自分が困ることになることが多い現状で…(以下略)
そういう状況にしてるのはあなたのような人たちでしょ。 知る必要のないこと? 何それ?
何をそんなに怯えているの? >>365
そんなこと言ったら、HELOで言ってくることなんて、全くもって知る必要がない情報じゃない? うん
HELO飛ばしても、SMTPセッション継続する実装普通にあるしね >>370
それじゃ説得力皆無.
だいたいスレ違いもいいところだ。いい加減にしろ。 >>370
MX を FQDN で指定することと逆引きの必要性に何の関係があるんだ? 逆引きはプロバイダーから委譲してもらっていないとか。 逆引き設定しないことの是非にはどうでもよくて、指標としてどのくらい使えるかだけ考えればいいのでは。
スパム対策に使われる手法って、こういう場合はスパムの可能性が高いという指標でしかないでしょう。
ベイジアンフィルタなんて小さな指標を多数積み重ねて判断してるわけだし
greylistingだって、再送してこないクライアントはスパムクライアントの可能性が高いから、だし。
それがRFCに載ってるかどうかとかなんて関係なくて、誤検知の少ない指標があれば使えばいい。
その指標の精度を高めるために、複数の指標を組みあせて使うことで、誤検知や他への悪影響を
減らすように考えれば良いのでは。 >>374
御意。それを>>370のように、わけのわからない話を持ち出して、
逆引き登録するのは当然だとか言い出すのがいけない。370は猛省すること。 >>375
猛省すべきことか?
何か問題があったときに連絡先の手掛かりとなる逆引きの設定を
敢えてしないなんて迷惑だ。
クライアントの話じゃないぞ。公開サーバだぞ。
>>370に同意だ。 >>377
逆引き→whoisですが?
whoisだけだったら上位アロケーションの管理者しか出てこなくて困ることがある。 >>374
んで指標としてどのくらい使えるのかね。 >>377
こういうこと書く人って、実際にabuse連絡とかしたことないんだろうね、と思う。 >>380
それなりに。
少なくともgreylistingへまわすか判断させるには十分。 スレチですが
Sender IDとかいうDNSのSPFレコードを参照するスパム対策ってありましたよね・・・
M$が提案したらしいですが・・・ >>378
そっから連絡つくじゃん。
逆に FQDN わかってもそこから連絡とれるとは限らん。 >>385
だからabuse連絡したことないでしょ。
CodeRedやNimdaの時とか(も)結構色々なとこに連絡したけど
whoisの情報でちゃんと連絡が取れたのって5割くらいだったような。
残りは、FQDN→対象会社のウェブページを推定→連絡先を探すパターンか
仕方ないから上位の管理者に連絡を取ってもらうか
電話しか分からないってところもあった。
迷惑なんだよ。困るんだよ。 あぁ、CodeRedやNimdaはクライアントの例か。
でも公開サーバで連絡先の特定が困難になる状況は勘弁して欲しい。 >>387
DynamicDNSで運用してる自宅鯖厨を全否定で桶? だから逆引きだけじゃなくて、他のことでも確認してるんだろ? >>388
国内のまっとうなプロバイダの動的割り当ては逆引きも出来るし
それはプロバイダに連絡してしかるべき対処をしてもらえれば良いから関係なし。 >>393
最近では逆引きできるISPが増えてる。
効果として2割方は削減できるので、逆引き不能サイトを弾く効果はある。
ただし、どこかの国内馬鹿ISP(エッチ立系のとこ)は、逆引きをしない。
顧客サイトが多いために、ホワイトリストを管理する必要がある qmail+vpopmail+qmailadminの組み合わせで使っているんだけど
postfixでバーチャルサーバーやるときに
vpopmailみたいなツールあるのかな?
それとqmailadminみたいなシンプルな管理ツールもあるのかな?
postfixadminってのがあるが、メーリングリストは管理できない qmail+vpopmail(virtual domain)でメールサーバを使ってますが、
vpopユーザのアカウントとパスワードを、システムアカウントにしたいと思ってます。
システムアカウントから、vpop形式にするには、vconverterと言うプログラムがありますけど、
この逆の事がしたいのです。
何か、良い方法ってあります? 自分はqmail-vidaを使ってるんだけど
なんだかここではvpopmailが人気だな。
>>398
vpopmailのアカウント管理って、どの形式でやっとるん?
LDAPに移行して、LDAPで認証する、とかどない?
>>399
そりゃ、vpopmailだとWebから管理するためのツールがついてくるからね
>>400
LDAPもsqlも使ってなく、通常ののvpopパスワード形式です。 10.3をフツーに立てて
ローカルで25番を叩いてSMTPコマンドでフツーにメールを出すとします。
例えば下の通り。
HELO localhost
mail from:root
rcpt to:xxx@hotmail.com
rcpt to:aaa@bbb.com
data
Bcc:aaa@bbb.com
Test
.
これでhotmail側の受信メールを見ると
Bcc:aaa@bbb.com行がフツーに表示されるんですが、どういう狼藉なんでしょうか…?
同じように立てたpostfixだと出ません。 仕様。Bcc は MUA が削除しなければならない。
削除されないで MTA に渡ってきたときに MTA が消すのを
小さな親切と考えるのが sendmail や postfix、大きなお世話と考えるのが qmail。
おーなるほど!そういうもんなんですね。
ありがとうございました。 >Bcc は MUA が削除しなければならない。
削除というか、普通はヘッダに付けないのでは?? Bccで送信された事が分かる様にして
Bccの受信者が安易に返信しない様に
Bccを残すべきという考え方もある
Bccが付いたメールに返信する場合に
警告するMUAはまだ見たことがないが こうですか
わかりません
ttp://www.puni.net/~mimori/rfc/rfc2822.txt
前略
"Bcc"フィールドの使用には3つの方法がある。最初は、Bccフィールドを持つ
メッセージの送信準備が出来たとき、すべての受取人(Bccフィールドで指定
したものも含む)にメッセージのコピーが送られるが、Bccの行が削除される。
2つめの場合、ToやCcで指定した行で規定される受取人それぞれは上記と同じ
く、Bcc:の行が消されたメッセージのコピーを受け取るが、Bcc行にある受取
人はBcc行を含むメッセージの別のコピーを受け取る。(Bccフィールドに複数
の受取人アドレスがあるなら、いくつかの実装では実際、その特定の受取人の
アドレスだけを含む、それぞれの受取人への別々のメッセージのコピーを送る)
最後に、Bccフィールドはアドレスを持っていないかもしれないので、ブライ
ンドコピーが誰かにおくられたということを受取人に示さず、アドレスなしの
Bccフィールドとして送られる。Bccの利用をいずれの方法で行うかは実装依存
だが、この文書の「セキュリティに関する考察」のセクションをめいめいの議
論のために参照せよ。
後略 >>407
ttp://www.puni.net/~mimori/rfc/rfc2821a.txt
>一般に、リレーするSMTPは、その受けとったメッセージ内容が有効であり、
>エンベロープにそれを許可するように書かれており、内容を検査することな
>るリレーするべきである(SHOULD)。
↑「る」は「く」の誤り
(中略)
>セクション2.4.1で議論したように、リレーのSMTPはメッセージのヘッダやボ
>ディのデータを調べたりそれにより動作したりする必要はなく、自分自身の
>"Received:"ヘッダを加えること、またオプションでメールシステムのループ
>を検出する(セクション6.2を見よ)ことを除きそうしてはならない(MUST NOT)。
(中略)
>メッセージがメール環境の境界を超えてゲートウェイされるのに必要な時、
>ヘッダフィールドを書き換えてもよい(MAY)。これは、セクション2.4.1での禁
>止事項にもかかわらず、メッセージボディの検査や宛て先のローカルパートの
>解釈を含んでもよい。
qmailに問題があるのはわかるが間違いの指摘が間違いだらけなのはどうなの?
これじゃアンチや信者と変わらない
http://ya.maya.st/ >>410
そこをdisるなんて勇気あんな。
よっぽどqmailに詳しい人でも、たぶん間違いだらけって指摘のほうがまとはずれ。 大岡山の大先生はみなの無理解に呆れサイトを閉じはじめたみたいだが。 例えばRFCに準拠してないと言っているが準拠の基準となるRFCがqmailが作られたより後にできたRFCとか
unixの改行がLFなのは自明のことなのにCRLFがうまく変換できないとか
そもそも改行に2バイトも使うRFCにも問題があるのにCRLFのままで保存しろとか
qmailの「安全でないパッチ地獄」が問題だと言うが元々バグだらけのものに「最新の」パッチを沢山当てることは安全なのかとか
まともなことも沢山言っているが偏見による間違いも多い
qmailは駄目を前提に悪い印象を与えようとするDHMO的な文章の書き方だと思う
偉い先生なのかもしれないが俺程度が間違いを指摘できるようでは鵜呑みにはしないほうがいい >>415
> 例えばRFCに準拠してないと言っているが準拠の基準となるRFCがqmailが作られたより後にできたRFCとか
現状にあってないてことじゃんw 偉い先生がなんて言おうが、自分が間違っていると
思っているんであれば別に従う必要はないんでないすかね。
個人的にはやまやの書いていることは同意出来ること多いと思います。
ま、人は人、自分は自分、でいいんじゃない?
>>415
> 例えばRFCに準拠してないと言っているが準拠の基準となるRFCがqmailが作られたより後にできたRFCとか
それだけメンテされてないってのは問題でしょう。
> unixの改行がLFなのは自明のことなのにCRLFがうまく変換できないとか
いまいち意味がわからん。
もうちょい詳しく。
> そもそも改行に2バイトも使うRFCにも問題があるのに
どんだけディスク小さいんだよ。
> qmailの「安全でないパッチ地獄」が問題だと言うが元々バグだらけのものに「最新の」パッチを沢山当てることは安全なのかとか
これも意味がよくわからん。 >>416
法は過去に遡って適用されない
従って「違反」ではない
最初にも述べたが問題にしてるのは詭弁や虚言と自分の間違いは改めない態度であってqmailの現状を擁護しているわけではない
それと現状にそぐわないの原因になっていた変なライセンスはPDLになったことで解消されている
問題の指摘の方こそ現状にあってない RFC2821 はなかったかもしれないけど、821bis の議論はかなり進んでいたのに
それを完全に無視してリリースしてしまった上、その後修正しなかったのは
よろしくないと思うけど。
> unixの改行がLFなのは自明のことなのにCRLFがうまく変換できないとか
qmail-injectは単純にLFをCRLFに変換する
CRLFだとCRCRLFになってしまうという話
>どんだけディスク小さいんだよ。
確かに圧縮という意味では貧弱すぎる
しかしファイルに保存した場合1byteの違いが512や1024の違いになることを考えればわざわざこんな設計はしない
ディスクの浪費は資源の浪費であり富める者の傲慢でもある
> qmailの「安全でないパッチ地獄」が問題だと言うが元々バグだらけのものに「最新の」パッチを沢山当てることは安全なのかとか
パッチを集中管理して検証してないから安全でないということだと理解したがパッチはqmail.orgなどで集められているし「最新」のパッチが十分検証されているはずがないので他が安全だということにはならない >>421
> パッチはqmail.orgなどで集められているし
単に集積されてるだけでしょう。
集中管理して検証してるの?
> 「最新」のパッチが十分検証されているはずがないので
どのパッチのことを言ってるんだ?
> 他が安全だということにはならない
「他が安全だ」なんて言ってたっけ。 つまりパッチ当てても当てなくても安全じゃないってことじゃんww >>419
> 法は過去に遡って適用されない
> 従って「違反」ではない
現状にあってないと書いただろ。最新の RFC に適応していない、qmail を現在
進行形で運用していることについて言っている。
> 最初にも述べたが問題にしてるのは詭弁や虚言と自分の間違いは改めない態度であってqmailの現状を擁護しているわけではない
おまえこそ詭弁だな。 動かしてるヤツはもう、動いてんだから問題ない。
新規参入しようつうヤツが、どっから手をつけたら
良いのか迷うところが問題。 今頃になってライセンスを変えたのは現状に合わなくなってる
自覚が有るから責任放棄しただけだろう 419のような基地外の存在が、qmailをよりいっそうダメにしていっているよなぁ >>422
単に集積と集中管理がどれほど違うのか
他(例えば先生が勧めるPostfix)が集中管理して検証しているのならば例えばコアなコミッターが何日か数人で検証したところで作った人自身が注意深く作るのとどれほど違うのかと言っている
検証とは世界中の人に公開されてある程度少なくとも数ヶ月くらいは晒されることだと思う(論文なんかはもっと長いし)
だから「全て」の最新のパッチが十分検証されているはずがないと言った
「qmailは安全ではない他のものを勧める」から「他が安全だ」という印象を持つだろう
他のものを勧めるなら少なくともqmailより安全であることを説明できなければ公平とは言えない
>>424
だから現状を擁護しているわけではないと書いている
現状にあってないなら現状にあってないと書くべきでRFC違反だと書くのはおかしいと言っている
どこがどう詭弁なのか説明してくれ直すから
俺は先生の文のどこが詭弁なのか説明したつもりだ
>>425
>>426
折角レスくれたのに申し訳ないがそういうところがあると思うので議論するつもりは無い
なんか俺が詭弁と言い出したことで詭弁で遊ばれてる気がしてきた
ちょっと疲れたからまた気が向いたら来るわ なんで81…
410ね
>>427
そういう感情や印象で物言うんじゃなくqmailのどこがどう駄目だったのか納得いく説明が欲しい
俺だってqmailがなんとなく駄目なのはわかる
でもそれだけで他が良くなっていくの?って話
少なくともDJBはSendmailのどこが駄目なのか説明してくれたじゃん
qmailから他に移るにしてもqmailのどこが駄目で他だとどう良くなっているのか・・・
ああめんどくさ
みんな付き合ってくれたのに悪いけど疲れたからほったらかしにすると思う
すまん 冬なのにお暑いですね。
qmailが駄目だとわざわざ声を大きくいうやつはほっておけばいい。
sendmailもpostfixも同じく。
そういうやつに限って無茶なことをして泣かされたんでしょうね。
そいつらは何使っても吠える。以上。
議論なら話は別だが・・・
思想としてのqmailはすばらしかった
しかし、実装としてのqmailはダメダメだった >>428
> だから現状を擁護しているわけではないと書いている
> 現状にあってないなら現状にあってないと書くべきでRFC違反だと書くのはおかしいと言っている
RFC 違反といったら、普通現在の RFC に違反しているということだろ、
だれも大昔の RFC に違反しているとは言っていない。 なんかもう、428ってどこから手をつけたらいいのかってぐらいの馬鹿だなぁ。
馬鹿というよりはキチガイに近いけど。 >>428
正味、現状qmailを使うにあたって
何のパッチをどの順番であたればいいのかが
try&errorしてみないとわからないってあたりが
一番問題な点じゃないかな?
netqmailを起点としても、その後は似たような機能を持つパッチが複数あって
どれをどういった基準で選んだらいいのかわからんし
そのほかと組み合わせた場合にどういう相互作用を及ぼすかわからん ところでdjbや大岡山の大先生はなんでqmailの保守をやめちゃったの? >>437
>>426だと思う。大岡山スレの近状からすると最近の人は大先生の存在自体知らないようだね 単に飽きたからだろ
djb は今はサルサ・ルンバ・チャチャなどのダンスに夢中なんだよ
そもそも qmail や djbdns は Sendmail や BIND にキレた djb が
自分で使うために書いたのであって、Postfix が Sendmail の安全な
代替物を提供することを目指して開発されたのとは違う。
自分で使っている範囲で不自由しなければ興味も失せるだろ。
>>426
自分の書いたコード全てのパブリックドメイン化を宣言したのだし
本業方面での発表だから、qmail が特別という訳ではないと思われ。 >>439
| Postfix が Sendmail の安全な代替物を提供することを目指して開発され
そういう大上段から振りかぶってる人の cron は、ずいぶんと危険な代物だった時期があった。 >>440
Wietse は cron も作っていたのか、知らなかった。
ftp://ftp.porcupine.org/pub/security/index.html には無いみたいだな Postfixじゃなくて、本家の sendmail じゃないのか qmail と djbdns のおかげで MTA / DNSサーバ に sendmail / BIND 以外の選択肢があることが
広まったのが DJB の功績だと思うのですが…おかげさまで今では sendmail / postfix / exim
とか BIND / PowerDNS / NSD とか好きに組み合わせることができるようになったわけですよね?
Debian 使っているのですが、選択肢が広過ぎて逆に悩んでしまうくらいでして、まあその先駆け
となった qmail や djbdns はほとんど使わなくなっちゃいましたけど、プロダクトとしては後発
組の方が優位なのは当然なので。 公式サイトでも何でもないから
気にしなくていいよ。 スレを誘導されたのでこちらで質問させて下さい。 その1
やりたい事は、WEBページ上からqmail + PHP を使用して外部のメールアドレス
にメールを送信したいと思っています。(送信先は、常に私のメールアドレスです。)
内部へのメールは正常に送信出来るのですが、<※【調査1】に記述>
/home/testuser/maildir/new/1204726988.12480.localhost.localdomain
外部へメールをする事が出来ません。
【環境説明】
システム環境
CentOS + PHP + qmail
IP
動的IP(DynDNS利用)の自宅サーバ(メールサーバ利用)
qmail設定時に参考にしたサイト
http://centossrv.com/qmail.shtml
php.iniの設定
sendmail_path = /var/qmail/bin/qmail-inject
【調査1】
因みに、qmail用に作成したユーザに対して次のコマンドを実行すると
正常に送信出来ています。(ローカルへの送信はOKと言う意味。)
[root@localhost ~]# /var/qmail/bin/qmail-inject
to:localhogeuser
<Ctrl + D> スレを誘導されたのでこちらで質問させて下さい。 その2ー1
【エラーログの内容】
/var/log/maillog
Mar 6 02:11:16 localhost qmail: 1204737076.342791 starting delivery 39: msg 19727044 to remote hogehoge@m3.gyao.ne.jp
Mar 6 02:11:16 localhost qmail: 1204737076.343021 status: local 0/10 remote 2/20
Mar 6 02:11:16 localhost qmail: 1204737076.744935 delivery 38: failure: Connected_to_125.63.38.26_but_sender_was_rejected./Remote_host_said:_550_unrouteable_sender_address/
Mar 6 02:11:16 localhost qmail: 1204737076.745182 status: local 0/10 remote 1/20
Mar 6 02:11:16 localhost qmail: 1204737076.750492 bounce msg 19727040 qp 4335
Mar 6 02:11:16 localhost qmail: 1204737076.750639 end msg 19727040
Mar 6 02:11:16 localhost qmail: 1204737076.752434 delivery 39: failure: Connected_to_125.63.38.26_but_sender_was_rejected./Remote_host_said:_550_unrouteable_sender_address/
Mar 6 02:11:16 localhost qmail: 1204737076.752574 status: local 0/10 remote 0/20
Mar 6 02:11:16 localhost qmail: 1204737076.757930 bounce msg 19727044 qp 4336
Mar 6 02:11:16 localhost qmail: 1204737076.758185 end msg 19727044
Mar 6 02:11:16 localhost qmail: 1204737076.758591 new msg 19727043
Mar 6 02:11:16 localhost qmail: 1204737076.758714 info msg 19727043: bytes 901 from <> qp 4335 uid 507 スレを誘導されたのでこちらで質問させて下さい。 その2ー2
【エラーログの内容】
/var/log/maillog
Mar 6 02:11:16 localhost qmail: 1204737076.782938 starting delivery 40: msg 19727043 to local anonymous@localhost.localdomain
Mar 6 02:11:16 localhost qmail: 1204737076.783227 status: local 1/10 remote 0/20
Mar 6 02:11:16 localhost qmail: 1204737076.783541 new msg 19727042
Mar 6 02:11:16 localhost qmail: 1204737076.783624 info msg 19727042: bytes 987 from <> qp 4336 uid 507
Mar 6 02:11:16 localhost qmail: 1204737076.785341 starting delivery 41: msg 19727042 to local anonymous@localhost.localdomain
Mar 6 02:11:16 localhost qmail: 1204737076.785479 status: local 2/10 remote 0/20
Mar 6 02:11:16 localhost qmail: 1204737076.785547 delivery 40: success: did_0+0+1/
Mar 6 02:11:16 localhost qmail: 1204737076.785607 status: local 1/10 remote 0/20
Mar 6 02:11:16 localhost qmail: 1204737076.785666 end msg 19727043
Mar 6 02:11:16 localhost qmail: 1204737076.790383 delivery 41: success: did_0+0+1/
Mar 6 02:11:16 localhost qmail: 1204737076.790520 status: local 0/10 remote 0/20
Mar 6 02:11:16 localhost qmail: 1204737076.790592 end msg 19727042
Mar 6 02:11:19 localhost qmail: 1204737079.092516 starting delivery 42: msg 19727036 to local hogehogedesuyo@localhost.localdomain
Mar 6 02:11:19 localhost qmail: 1204737079.092752 status: local 1/10 remote 0/20
Mar 6 02:11:19 localhost qmail: 1204737079.092855 delivery 42: deferral: Unable_to_chdir_to_maildir._(#4.2.1)/
Mar 6 02:11:19 localhost qmail: 1204737079.092923 status: local 0/10 remote 0/20
スレを誘導されたのでこちらで質問させて下さい。 その3
【php側ソース】
if( mb_send_mail($addressTo, $subject, mb_convert_encoding($message,"shift_jis","shift_jis"),$header) )
{
#この部分に正常に入ります。
print("送信完了しました。");
}
else
{
print("エラー:送信に失敗しました");
}
※補足※
Windowsで正常に動作していたメール送信プログラムを
qmail(・・・※)設定済みのLinux(CentOS5)に移行した上で
実行しているのですが正常に送信先に届きません。
(また、php側でエラーは発生しません。) >>449
先方MXにunrouteable_sender_addressと言われているようだが? スレを誘導されたのでこちらで質問させて下さい。 その4
>>452
>先方MXに unrouteable_sender_address と言われているようだが?
ぐぐってみたのですが『unrouteable_sender_address』
では何もヒットしませんでした。一体どういう意味なのでしょうか?
また、『MX』について調べた結果、次のサイトにヒントがありそうなので
もう一度試してみます。
それでもダメでしたらこちらにてもう一度質問させて下さい。
【参考(になりそうな)サイト】
http://hiiro-sou.hp.infoseek.co.jp/unix/server/postfix.html
【ぐぐった結果』
「MX」とは「Mail eXchanger」の事です >>453
qmailは半角空白を「_」に変換してログを残すので
検索ワードを変えてみて下さい。
また、エラーコード550もキーワードに入れてください。
要するに、sender addressがunrouteableなんでしょ。
そのままだけど。 、、、いまいちよく分かりません。
>>452
Windowsでメールサーバを立てたいた時(Radishを利用)も同様にDynDNS
を使用し、正常に外部からWEBページ経由で自宅にメールを送信する事が出来て
いたのですが、Linux(CentOS5)だと出来ないのでしょうか?
※今日もまた、これで5時間位無駄になっちゃった。。。メールサーバの
構築って難しいな。。。職場でこーいうのに詳しい人もいないし。 >>456
一応そちらのページも見ました。
php.ini の中に確か送信元の情報を設定する箇所があった様な気がしますのでちょっと
調べてみます。
てっきり、php.iniの中の送信元のメールアドレスを修正すれば直るかと思い
php.ini を見たのですが、Windowsの場合にのみ設定が必要な様です。
(つまりLinuxの場合だといじるなという事。)
したがって、現在のphp.iniの設定は次の様になっています。
[mail function]
; For Win32 only.
;SMTP = localhost
;smtp_port = 25
; For Win32 only.
;sendmail_from = me@example.com
;sendmail_from = me@example.com >>458
sender address(From:)がどうなっているか、分かっていますか?
ログにも出ていますよ。 qmail-injectの使い方を見て来い。
話はそれから。 >>459
すみません。いまいち分かっていないです。
もう少しヒントを頂けないでしょうか?
因みに送信元のメールアドレスは、ユーザにWEBページより入力して貰い、
送信先のメールアドレス(つまり私の自宅のメールアドレス)はphpのソースの中に
埋め込んでいます。
※ユーザ、収集アプリ(ロボット)に自宅のメールアドレスを公開したくない為です。
【WEBページの詳細】
名前
送信者に入力して貰うエリア
メールアドレス
ユーザのメールアドレスを入力して貰うエリア
(つまり、ここがFROM部分になります。)
本文
メッセージを入力して貰うエリア
>>460
もう一度調べてみます。
>>461
、、、これまでかなりqmailの設定に時間を取られているので
ここで断念すると私の労力が無駄になるのでもうちょっと頑張ります。
>>463
ここまで教えてもらってわからないなら
qmailを使うのは無理だ
spam送信者になる前にやめとけ Radishの方がよっぽど使い勝手がいいな。
qmailなんぞより。 >>462 で教えてあげたのに、、、
DynDNSで立ててるような自宅メールサーバはもうじきOP25Bに塞がれて終わり。 OP25Bは、もっと普及して欲しいよ
ocnからのSPAMがうざくって、聞いてみたら
固定IPサービス契約者だったり漫画喫茶だったり
PORT25の通信できるのをオプションにしとけ!
一般ユーザーはそれで十分だろ 初めて qmail + vpopmail + qmailadmin でサーバを構築してみた。
しかし構築完了後にメールの送受信してみた所,認証を求められてメールの受信が出来ず。
送信は問題なし。
ふと思ってメーラ側の設定の
『受信メールサーバ』-『アカウント名』の設定をユーザ名だけでなく
『ユーザ名@ドメイン名』にしたところなぜか受信。
とりあえず動いているから現状はいいとしても,原因がつかめず四苦八苦中。
もし良ければヒントなど頂けないでしょうか? 仮想ドメイン対応だからドメイン教えてあげなきゃアカウント区別つかんでしょ。 >>481
即レス感謝です。
おぉ,確かに……。
Windows Server の標準POPサービスと同じになるんですね。
何でこんな単純なことに気づかなかったかすごいショックを受けております。
>>482
つ /home/vpopmail/etc/defaultdomain つか、なんで今になってその組み合わせ・・・
新規鯖なんだろ? >>484
焼き直しと手抜き。設定に凝るのはオタク。楽でよい。 FreeBSD ports qmail + vpopmail の質問です。
qmailは WITH_SMTP_AUTH_PATCH=yes でインストールしました。
ローカルでoutlookを使って問題なくメール送受信テストできましたが
telnetでsmtpの接続を確認すると
503 auth not available (#5.3.3)
とエラーが出てしまいます。
ぐぐっても原因がよくわかりません。よろしくお願いします。 だからauthがnot availableなんだろ >>487
WITH_SMTP_AUTH_PATCH=yes ってなんのパッチ?
>>488
そうです。利用不可能です。
確認したらパッチはちゃんとあたってます。
SMTP_AUTH_PATCH=on "Provide SMTP Authentication"
と言うことはどうしたらいいのでしょうか? >>490
普通のqmailには「SMTP_AUTH_PATCH=on」なんて項目はないぞ
「パッチはちゃんとあたってます」のパッチが何なのか分からなければ、
洩れもおまいも何が問題なのか一生分からないだろう >>492
Ports ですから。
>>487
ほんとにぐぐっても分からなかったか? telnet でしゃべった内容も書いてみ。 >>494
はい。ぐぐってもわかりませんでした(汗
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 example.com ESMTP
ehlo localhost
250-example.com
250-AUTH LOGIN CRAM-MD5 PLAIN
250-AUTH=LOGIN CRAM-MD5 PLAIN
250-PIPELINING
250 8BITMIME
auth plain dXNlcgB1c2VyAHBhc3N3b3Jk
503 auth not available (#5.3.3)
quit >>495
ttp://diary.yaizawa.jp/?date=20060301#p03
とかは? なんで
250-AUTH LOGIN CRAM-MD5 PLAIN
250-AUTH=LOGIN CRAM-MD5 PLAIN
と微妙に違うのが二つも出ているんだろう?
FreeBSDのportsってどんなパッチ使っているんだ? >>497
そんなことも知らないのけ?
パッチは>>496見れば分かるでしょ。 >>496
ありがとう。そこは見てました。
でもtcpserverに-lオプションなんて付けてないし…
qmailではなくvpopmailのインストールに問題があるのでしょうか? >>499
もう答えは分かったも同然なんだから、どうやって起動しているか書かないと。
qmail-smtpd-auth-0.31.tar.gz のパッチから抜粋↓
+ void smtp_auth(arg)
+ char *arg;
+ {
+ int i;
+ char *cmd = arg;
+
+ if (!hostname || !*childargs)
+ {
+ out("503 auth not available (#5.3.3)\r\n");
+ return;
+ }
...
! void main(argc,argv)
! int argc;
! char **argv;
{
+ hostname = argv[1];
+ childargs = argv + 2;
そして、パッチのドキュメントをよく読む。ttp://members.elysium.pl/brush/qmail-smtpd-auth/ qmailとvpopmailを使ってXreaというレンタルサーバのようなメールサーバにしたいと思っています。
通常、メールアカウントは/home/vpopmail/example.com/mailuserというようにしたいのですが
Xreaのように/home/systemuser/Maildir/example.com/mailuserというような構成にしてみたいのですがどのように設定すれば良いのでしょうか? 無理じゃないだろうけど、なんで Maildir を挟みたいのか、謎。 >>501
Inter7にメール書いて助けてもらう。 >>501
たぶん、お前のやろうとしていること自体がピントが外れている可能性が高い。
まずは、そもそも何を目的にしているのかを書いたほうがいい。 echo "/home/systemuser/Maildir/example.com/mailuser" > /home/vpopmail/example.com/mailuser/.qmail
とか? ぜひとも修正すべき qmail の問題
ttp://www.qmail.jp/qmail.html 今さら何言ってんだ。
qmail-1.03 のリリースから2ヶ月後にはすでにパッチが出てるってのに。
http://www.ckdhr.com/ckd/qmail-103.patch そう。じゃぁ、みんなパッチは当ててるんだな? いや、もうqmailなんか使ってないか。 >>509
このパッチは推奨パッチと見たことがある。
だから当てている人は多いんじゃないかと。
確か、net-qmail にも当たっているんじゃないかと。 qmailをdaemontoolsで起動してる時、smtpdを再起動させると
キューイング中のメール、キューに入る前のプロセス両方とも消えるのでしょうか? 動作解説を読め。
qmail-smtpdはqueueを直接弄ることはない。 2行目は質問に対する答えになってないな
どうでもいいけど
つーか、qmail-smtpd は接続があるたびにその都度起動だから、再起動もクソもない。 qmailが配信途中に反応しなくなることがあります。(遅くなる?)
localhostにtelnet後、heloしてみたら反応が返ってきませんでした。
smtpdを再起動したら直るんですが、頻繁に起きます。
再インストールしても駄目でした。qmail-qreadも空です。
何が考えられるのでしょうか。
だから qmail-smtpd は接続のたびにその都度起動で完了したら即終了だっての。
tcpserver のことならば、同時接続数があふれてないか確認しろ。 質問させてください。
.qmail-xxxからプログラムを動かしているのですが、
エラーになってしまった場合にリトライされているようです。
エラーは出ないようにしていますが、なんらかの時に困るのでこのリトライをやめたいと思います。
どこで設定すれば良いのでしょうか?
ちなみに当方17歳女子です。
セキュリティーを考慮してこれだけ入れたほうがいいと思うqmail関係のソフトを教えてください。
現在これだけ入れてます。
qmail
tcpserver
vpopmail
qmail-scanner
よろしくお願いします。 どうすればセキュリティーを確保できるか自分で判断できない時点でおワットるから
>>520です。
間違えてあげてしまいました。。。
気長に待ちますのでよろしくお願いします。 とりあえず、教えてください…
また明日来ますのでよろしくお願いします。 セキュリティーを考慮するならqmailを使うのを止めるのがお勧め >>520
ベストアンサーに選ばれた答え:セキュリティの判断が自分で出来ないならqmailを使わない 要するにセキュリティがわからないならqmailを使うべきではない。
馬鹿には使えない。
よろしいか。 セキュリティが分からないなら、qmail でもなんでも
鯖運営に類することすべきじゃない。 LANケーブルと電話線を抜け。無線LANも切れ。
他所のネットワークから完全に孤立した環境であれば、
セキュリティなんてくだらん事は気にせず、何でも
好きなだけやっていいよ。
全レス御託ばかりで萎える。
とりあえずセキュリティはもういいから
これに付け加えるなら何を入れたほうがいいのか?
qmail
tcpserver
vpopmail
qmail-scanner
何度も言いますが御託はもう結構です。ソフト名で答えてください。 cvm
enemies
getmail4
gnubiff
isoqlog
maildir-filter
mailfront
masqmail
qmail-qfilter
qmailanalog
xfingerd >>530
使い方によっては、何もいらない。
使い方によっては、ありとあらゆる物が必要。
チキンなおれは十分条件を示せないので具体例は出さない。
qmail-smtpd 動かさなければ、大丈夫じゃね? あえて Courier-MTA など変態鯖に行ってこそ漢 >>530
自分で考えられない奴に教える義理もないわな。 御託を並べるだけのチキンの意見は必要ないと言ったはず。
普段レスすらできない俺よりスキル低い蛆虫まで沸いてくる始末(萎える)
まあ俺がこういう態度だから沸いてくるのだろう。今後はスルーすることにしょう(笑)
>>535
どういうことですか?
qmail-smtpdはパッチを当ててます。やばいの? >>530
おれはいつもdaemontoolの上でqmialを動かしてるよ life with qmail を隅から隅まで読んで、
netqmail-1.0.6 を入れておけば、すくなくとも
個人用にはこと足りるはずだが。>>530 一部の方ありがとう。
別スレで解決してしまいました…
>>543
一応読んでみます。 >>544
その別スレの回答内容を書かないなんて、
典型的に嫌われる質問者のタイプだな。 すみません、ちょっと力をお貸しください。
root宛に送られるメールが他のサーバのrootに送られてしまうという事態になっています。
つまりaaa.comというサーバからroot@aaa.com宛に送られるはずのメールの送信先が
root@bbb.comになってしまいます。
(/var/log/maillogに
starting delivery 220: msg 456692 to remote root@bbb.com
と記録されています)
これはどこの設定を直せばいいのでしょうか?
よろしくお願いします。 /var/qmail/alias/.qmail-root
qmail+vpopmailで運用してるんですが、
t.hogehoge@mydomain.com
t.hoge2@mydomain.com
のようなメールアドレス(t.が先頭につくもの)をすべてroot@mydomein.comに転送させたいんですが、
これをアカウントを作成せずに、正規表現だけで転送設定させる事はできるでしょうか?
/var/qmail/users/assign に
+t.:alias:uid:gid:/var/qmail/alias:-:t-:
という設定を書いて、/var/qmail/alias/.qmail-t-default に
転送設定をつっこむ、でできるんじゃないかな。たぶん。きっと。
vpopmail も assign を使うので共存できるかどうか知らんけど。
>>554
レスありがとうございます。
/var/qmail/users/assignはvpopmailで以下のように設定されているのですが、
>+mydomain.com-:mydomain.com:89:89:/home/vpopmail/domains/mydomain.com:-::
>+virtual.com-:virtual.com:89:89:/home/vpopmail/domains/virtual.com:-::
>.
最上行に
+t.:mydomain.com:89:89:/home/vpopmail/domains/mydomain.com:-:t-:
を追加し、
/home/vpopmail/domains/mydomain.com/.qmail-t-defaultに転送先を書いたのですが転送されません。
設定が間違っておりますでしょうか?vpopmailと干渉しているのでしょうか? >>555
自己レス。
+mydomain.com-t.:mydomain.com:89:89:/home/vpopmail/domains/mydomain.com:-:t-:
でできました。
>>554さん、ありがとうございました。 qmailを未だに使い続ける=電子メールなんてもうどうにもならんから足掻かない。 s25rtarpitgreylist
graylist修正ってなってるけど、まだだめじゃない?
ファイル差し替えると graylist ファイル更新されないんだが。 >>558
まぢで!?
今度修正する時は、tar.gz もまともなものでお願いしたいなぁ。 >>558
一つ分かったことがある。
Threshold_Count_SmtpCommand はデフォルトの 2 だと駄目っぽい。
説明では、「HELO -> QUIT のようなSMTPコマンドの発行をしてくるホストに有効」
って書いてあるけど、HELO はカウントに入っていないようだ。
だから
1. RCPT TO → Temporary local problem. Please try later.
2. QUIT
という、まともな流れでも greylist 入りしない。 >>560
そうそう1.2.4だと
時間がなくてソース見てないのだが
仕事の傍らmaillogを tail -f で流してるとhelohostcheckしてないようだ。
そもそもglaylistのタイムスタンプが更新されないのでなんにも書き込みしてないと思われ。
結局1.2.2に戻した。 RedHatEnterpriseLinux4でqmail-vacationを使おうと思っています。
しかし、うまく動きません。メールは受信者に届くのですが、バケーション
メールが発信されないのです。ログを見てもバケーションメールが
発信されたログが残っていないのです。気になる点は、ローカルタイムに
する修正パッチをあてていない点と、データベースファイルが、Makefileを
みると、.vacation.dir,.vacation.pagもしくは.vacation.dbになるようなことが
書いてあるのに、ユーザのホームディレクトリには、.vacationという拡張子の
ないファイルができていることです。どなたかご教授お願いします。 562です。 インターネットで調べたところ、qmail-vacationが機能
するのは、外部から来たメールだけで、同じドメインから来たインター
ナルなメールには、バケーションメッセージを返さないという質問を
見つけたのですが、これは仕様なのでしょうか? >>565
それよりも、なによりも、なんでいまさらqmail使おうとするんだ?
時代遅れにもほどがあるぞ 徒労を未然に防ぎましょう。
* qmail は時代遅れのもので、メンテナンスされていないサーバです。その POP3
の部分は、Dovecot に引き継ぐことができます。Qmail は1990年代半ば、その
速度と安全性を誇って始められましたが、多くの修正されていないバグがあり、
その中には修正されていないセキュリティバグもあり、セキュリティの保障 (
500 USドル) も否定されました。本当に使い続けるのであれば、いくつかの
qmail のセキュリティの問題の解決の説明が含まれている Dave Sill の Life
with qmail (http://www.lifewithqmail.org/) を読みましょう。
>>568
いま、qmail+vpopmailで運用してるから
パッチの手間考えるとこれからという初心者には勧められんだろw
postfixに乗り換えようといろいろチャレンジ中
ravencoreってのがvpopmailに近いかなぁ、とか思ってる 「いろいろ」チャレンジしないと駄目な程度なら、qmail で一生
過ごしたほうが良いだろ。 virtualdomainはいいんだけど拡張アドレスがpostfixの移行に躊躇する要因だなぁ >>573
ヲレも…
なんでユーザ管理と同一インターフェースでML管理できる
MTA & MLエンジンが他には存在してくれないんだ ezmlmの件俺も胴衣。さらに、いくつもある鯖がさらに増殖していくのを面倒みるとき、
postfix に移行するのが単純に、めんどくさい。いろんなパッチ当て済みの
my source tar.gz が自己遺産的に出来てるから、それを突っ込んでおしまい。
ただし、完全自己責になってるところがやばいといえばやばい。俺が事故死したら、
あと引き継ぐやつは苦労するだろう。だが、んなこと知るか。 どーしても ezmlm が必要なら 127.0.0.1:10025 あたりで qmail を動かしておいて、
postfix の transport_maps で ML アドレスだけそっちに回せばよし。
もうパッチあてる作業が疲れたお…
configureとかで指定したいお…
パッチあててくれるスクリプトを作ろうと思いつつ、
それほどインストールする機会もないので、
ついついいつまでも手作業になってしまう…。 携帯に転送するときに、添付ファイルをはずしてくれる.qmailに書くスクリプトを探しています。
どなたか教えていただけないでしょうか。 25番ポートを無効にして
外部との通信用のメールゲートウェイからのリレーを10025番ポートで受付たいんだけど
これってできますか?
ちなみに補足すると外部との通信用のメールゲートウェイはpostfixで、
しかもこのpostfixとqmailを物理的に同じホストで運用しようと思うのだが
この構成って現実的だと思います? >>582
できる。現実的かどうかは流量とマシンパワーによるのでわからん。 すいません。質問です。
当方、複数のドメインで1台のメールサーバを運用していますが、
受信ドメインごとに接続もとドメインを制限したいと思っています。
例)
受信ドメイン:接続元の制限
a.com:制限なし
b.com:b.co.jp, bb.co.jpからのみOK
c.com:*.c.co.jp からのみOK(*はワイルドカード)
virtual domainを使えばできるかと思ったんですが、接続元の取得がよくわからない
tcpserverを使えば接続元はわかるが、受信先がわからないみたいな感じです。
双方をあわせるような工夫が必要と思いますが、設定でできるのかラッパープログラムを
作成する必要があるのか判断がつきません。識者の方教えてください。 >>585
envelopeから踏み込んだフィルタを書けば出来るだろ。
これって大して面白い仕事じゃないから、似たようなことを頼まれて
適当に打っちゃってある・・・。 tcpserverなんてSMTPプロトコルにも
関係しないようなところで、出来る話じゃあるまいが。 2、3ドメインなら、ドメインごとにバーチャルホストを立てて、
各ホストのtcpserverで受ければできそうな気もする・・・
IPが潤沢にあったりMXを自由に設定してよければの話だし、
それ以前にシステムとしての拡張性は皆無なわけだがww >>585
RCPT TO:<foo@b.com>
RCPT TO:<bar@c.com>
という場合、接続が許可されるのはどこ? あれ、送信者メールアドレスの話だったのか?
接続っていうから接続元 IP アドレスを逆引きしてうんぬんかと思った。 >>590
「送信者」ってのが、どっちのことを指しているのか微妙だけど
>>589 の RCPT TO は、>>585 で言うところの「受信ドメイン」を
特定するために必要な情報でしょ。
接続元 IP アドレスを逆引きして云々は、「接続元の制限」に
当たる部分のことでしょ。 どうも。
接続もとドメインは、送信者アドレス(mail from:)ではなく、接続もとの
サーバのドメインという意味です。(mail from:は詐称可能なので)
なのでこの部分ではTCP/IPのレイヤーになると思います。
が、受信ドメインとなるとまたレイヤーが違う(アプリケーション層)ので
めんどうなのかなと感じています。
>588
antibadmailもアプリケーション層の話なのでちょっと違いますね。 >>592
> antibadmailもアプリケーション層の話なのでちょっと違いますね。
つか、「受信ドメイン」の縛りをしたい以上は、アプリケーション層じゃないと
実現出来ないって自分でも分かってるんでしょうに。
で、なぜ「アプリケーション層の話だから違う」となるのかな? >>593
すんません。TCP/IPのレイヤーもアプリケーション層も両方扱えないと無理
という意味でした。もちろん、アプリケーション層の情報は必要になります。
tcpserverで$TCPREMOTEHOST(リモートホストのDNS検索値)がとれるようなので
tcprulesでqmailの環境変数に渡すことができれば、どちらも扱えそうな気がしてきた。 たびたびすいません。(::)
やっぱり無理くさい。tcpserverはqmail-smtpdを起動しているが、
その後のプロセスに対して環境変数の渡し方がわからん。
qmail-queue -> qmail-send -> qmai-..
ふう。
procmailとかだったらできるかな・・>< 無理。
qmail-send は qmail-smtpd 以前から起動してるものだし、
いろんなところから来たメールをひとつの qmail-send で処理するわけなので、
キューごとに異なる環境変数なんて渡せるはずがない。
qmail-queue までは環境変数が渡ってるはずだけどね。
>>596
>>589 のパターンは別として、可能だと思うけど? 結末を報告すると、IPの制限はあきらめました。
envelope-fromを参照することで制限をつけることとしました。
envelope-fromは偽装可能なのでちょっぴり心許ないぞ まあ、逆引きできないからな。
whoisまで挽いて検索しろなんて、自動化不可能だ。
MUAでやってくれ。 >>599
tcpserver で逆引きさせれば良い話じゃ?
そこで逆引きできない MX はホワイトリストに IP アドレスを指定すれば良いだけ。
まぁ、本人が諦めたって言うから、スルーしてたけど >>597 で言ったように、
出来ると思うよ? qmailでずっと運用しているのですが、この間SMTPの反応が20分程度反応がない状態に
陥ってしまい、実際にmaillogをみると確かに20分間のログが全くありませんでした。
ログがなかった前後を見てもキューが溜まっていたり、数が極端に増えたわけでもないようです。
これってどんなことが考えられそうでしょうか?
また、この原因を特定するための手段としてどんなことが考えられるでしょうか?
攻撃を仕掛けられて通信不能状態になっていたとか、
他のログも確認してみたら >>602
トラフィックやCPU、メモリ等が若干増えているのは確認できたが、
いつもの忙しい時間帯のリソース使用状況に比べると低いんですよねぇ。
障害発生直前でも何かしら右肩上がりに兆候が見えるログがあると究明しようがあるんですが、
それもなく、不能になった時間帯のログもない(T_T)
http://ya.maya.st/mail/lwq.html#log-block
qmail側になにか問題があったからログがなかった、ではなく、
ログ取り側に問題があったからqmail本体も引きずられた、という可能性もあり。 俺も前に似たようなことあった。
なんか突然smtpdのレスポンスが120秒とかになった。
LoadAvgも普通だし、特に変なとこなかったのになぁ。
一応svc -du smtpd したけど変わらなかったし。
でもなんか4時間くらい放っておいたら、1秒以下に戻ってた。
ログはどうだったか忘れた。
vipwでuid いじられてて、その際は吐けなくなってた機械なんてのはありそうだがね。
>607
MTA移行できない言い訳に使える場合がある程度。
とっとと投げ捨てた方がいいとは思うが。 バーチャルドメインで、受信はPOP3だけで充分、
/etc/passwdを使用したくないのでvpopmailを使いたいって場合、
qmailがベストかなーと思いますが、違うかな >>609
なんか、いままで一度もMTAの管理をしたことなさそうなヤシだなぁ。
このご時世でSPAM対策についてまったく触れていないなんて。 >>612
それだけじゃ足りずに、qmail-scannerでspamassassin使うようにして、
スコアが高いものはユーザのスプールには入らないようにした。
でも、受け取ってしまっている時点でアレなんだよねぇ。
postfixではメモリリークに悩ましいけどclamav-milterで要求が完全に
満たせるのに。にしても、clamdで160MB、clamav-milterで200MBって
なんじゃこりゃ。
あと、存在しないユーザ宛のメールも受け取ってしまってから
あとでエラーメールを返すのが基本なのもアレだし。これについては
qmail-sppと自作フィルタでどうにかしたけど…
qmailは自分で何とかしなければいけないところが多すぎて泣けてくる。 とうとうpostfixに乗り換えた。
ごめんよ、qmail いまからqmailやるんだったら、ここのパッケージでいいんじゃね?
http://www.qmailtoaster.com/ パッチを当てて延命しても、それはもうDJBが「安全」と謳ったqmailとは別の物。
鯖更新などの継続案件ならともかく、新規で導入する価値は無いとおも。 正規表現badmailfrom とか、なんだらかんだら色々
パッチあてた myqmail + qmailscan + SA パッケージが
出来てあるからそれをそのまんま使う。>>617 >>613
> postfixではメモリリークに悩ましいけどclamav-milterで要求が完全に
もしメモリリークが本当なら、そんなの論外で使えないじゃん。 メモリー漏れって本当にpostfixなの?
フィルターじゃ? >>622
だから、clamav-milterの話だろ。 >>621
なんで>>620が噛付かれないといけないんだ?
>>613は使ってからモノを言ってるんだろ。
もし仮にそれが誤りでも>>620は何も悪くないだろ。 メモリリークと聞いただけで「論外で使えない」とか知ったかぶったバカは放置しとけ プログラマ視点で言わせてもらうが、メモリリークしてるなら確かに論外。
短時間でプロセスが終了して、OS が勝手に面倒見てくれるから
free なんぞしなくて大丈夫なんて奴がたまにいるが、論外だ。 clamav-milterに限らず、clamdもずっと立ち上げておくとだんだん太っていく罠 w3m+BoehmGCのようにGCが仕事しないケースもあるがな シンプルな構成が気にいってるんだけどね
基本的に問題になるのってSMTPの部分だし
代替ソリューション使い続けるのは
有りだと思うんだけどどうかね? postfixに移行したいけど拡張アドレス使いまくってるから移行できない;; そうだな、Postfixは拡張アドレス使えないしな qmailはtcpserver経由で起動したqmailのqmail-commandに、接続元SMTPのIPを渡したいのですが可能でしょうか。
qmailで受け取ったメールをプログラムで処理する際、接続元SMTPのIPを取得したいという事です。
以下の環境変数には、接続元SMTPのIPはありませんでした。
http://man.qmail.jp/jman8/qmail-command.html
qmail-localからcommandに渡される環境変数
tcpserver自体は接続元SMTPのIPを取得し、$TCPREMOTEIP という環境変数を設定するようです。
TCP environment variables
http://cr.yp.to/ucspi-tcp/environment.html
$TCPREMOTEIP
が、qmail から起動されたプログラムでは取得する方法が無いようなのです。
プログラムがメールを受け取る際は「sh -c command 」という形式で実行されると上記マニュアルにありますが、「sh -c command `set`」としてみた結果、この sh 自体も環境変数としては接続元SMTPのIPを認識していないようです。
参考
http://program.station.ez-net.jp/special/network/mail/qmail.program.asp
http://ya.maya.st/mail/lwq.html#environment-variables >>639
環境変数では無理だと思う。
qmail-smtpd -> qmail-queue の時点で外部との接点はなくなるし。
qmail-command 側でヘッダをパースして、どうにかするしかないんじゃない? >>640
パースすれば可能とは思いましたが・・・。
>>641
知らなかったっす。日本語文書少ないですね。
軽く見てみましたが、いまいちどのようにすればいいか分かりませんでした。
環境変数をセットしてあげる機能を追加すれば、qmail-command 側で参照可能になるという理解でいいんでしょうか。
もしくは、「sh -c command 」される時に、「sh」の実行空間でその環境変数が取れる・・・感じでしょうか。 >>642
qmail-sppはqmailにプラグイン機能を付加するもので、qmail-sppから
呼び出されるプラグインがSMTPHELOHOST等の環境変数を見られるように
なっている。
とりあえず、このスレの>>18-69あたりを見れば大体わかるんじゃない? 素の qmail では qmail-queue がキューに放りこんだ後、
qmail-send がそれを拾うという仕組みなので、
環境変数の受け渡しはここで必ず途切れる。
qmail-spp がどういう仕組みかは知らんが、qmail-local まで情報を伝えようとするなら
キュー自体に環境変数を保存するような仕組みに改造されてないかぎり無理だと思う。
>>643
直近の Recieved: でもOKではあります。
Recieved: がどのようなルールで追加されるのかがよく分かっていなくて、確実なパースが出来るかが心配だったもので。
でも直近の Recieved: は自分のqmail が付けたものだから、何番目に出現するかやフォーマットは、基本的には必ず同じになると考えて良いですよね。
であれば、Recieved: から取るのでも良いかもしれません。
>>644
なんとなく分かりました。
いろいろ便利そうなので、この件に関わらず、使ってみたいと思います。
>>645
なるほど。
ということは、メール受信時にqmail-sppで、カスタムメールヘッダーとして接続元IPを追加できれば・・・、でしょうか。 spamとかvirus判定して黒ならブラックリスト→tcpserverのcdbに投入
ってところかしら。。。 >>647
ケータイサイトを作っているのですが、接続元SMTPを3キャリア公開のIPに限定します。
qmailのアクセス制御であればtcpserverが本筋ではあると思うのですが、作業担当や
管理対象(設定ファイルやプログラム、データベースなど)の一極化などの問題から、
接続元IPをプログラムでハンドリングしたいという要件です。 >>649
qmail-smtpd の前段でラッパースクリプトを実行させれば良いじゃないか。 その通りだな。
なにもメールを受け入れてから細工なんてしなくても、HELOなりEHLOの段階で
リジェクトしちゃえばいい。 >>650
>>651
なるほど。イメージがわきました。
tcpserver から別のプログラムを起動してチェックし、
リジェクトするか qmail-smtpd をexecするか、という理解で合ってますでしょうか。
リジェクトするにはラッパースクリプトがどうしたらいいかが
わかるようなドキュメントって、マニュアルなどにありますか?
qmail-smtpd.c なりを読む必要がありますか?
ttp://man.qmail.jp/jman8/qmail-smtpd.html >>652
基本的にspam対策と一緒だからs25rtarpitgreylistのスクリプトでも眺めれば
どうすればいいかわかるでしょ。 ヲレだったらqmail-sppのplugin書いちゃうけど。 qmail-sppを導入済みならそうするだろうな。
今回のは直接スクリプトをかますだけで十分だと思うけど、後々の
改造やら昨日追加の可能性があるならqmail-sppのプラグインに
しておいた方がメンテが楽かもね。 qmail初心者なので教えください
pop befor smtpの導入でrelay-ctrl-2.5を入れてみたのですが(3.1.1入れろと今は言わないで)
pop3で読みにいっても、cdbファイルが更新されてないんですが・・・
/var/spool/relay-ctrl内にはIPの空ファイルができているんですが・・・
tcproulesのパスも合ってるのですが・・
crontabに設定したrelay-ctrl-ageが更新されるとcdbファイルも更新されるんですが・・・
ちゃんと中にそのipが切れるまで入ってます・・
普通は読みにいったら、即cdbファイルにそのユーザーのipがrelay-ctrl-allowで反映されるんですか?
>qmail初心者なので教えください
初心者だと教えないといけないのか? >>657
そこではコンサル雇えと言うのがqmailユーザの作法です。 失礼しました
qmail初心者なのに教えてください >>656
qmail-popup なりをどうやって起動しているか、それを書かないと。 >>660
普通に本に書いてある、超一般的なインストール方でやってみました
もうどこにも同じ内容で書いてある形で・・・
で〜ちゃんとspool内には新しいipがどんどん書き込まれて、タイムアウト消去されていくのですが
なぜかcdbファイルが即座に更新されてないみたいなんです
ようするにcrontabでrelay-ctgrl-ageが動くとcdbが更新されているという??
これ仕様?じゃないですよねっていう質問だったんですが・・・
>>657みたいなやつが出てくるのは想定してましたがw実際でてきてわろたw
ヤフでrelay-ctrlで検索して一番最初に出てきたサイトを参考にしますた
そこにはこう記述してあります(他でもほとんど同じですが・・・)
/usr/local/bin/tcpserver -vHR 0 pop3 \
/var/qmail/bin/qmail-popup hoge.hogeserver.com \
/bin/checkpassword /usr/sbin/relay-ctrl-allow /var/qmail/bin/qmail-pop3d Maildir \
2>&1 | /var/qmail/bin/splogger pop3d 3 &
cdbファイルはこれまた本とかネットの例のようにtcp.smtp.cdbとしてまふsmtpはもちろんtcpserverにxオプつけて指定してます >>661
> で〜ちゃんとspool内には新しいipがどんどん書き込まれて、タイムアウト消去されていくのですが
> なぜかcdbファイルが即座に更新されてないみたいなんです
> ようするにcrontabでrelay-ctgrl-ageが動くとcdbが更新されているという??
まさかそんな、と思って 2.5 のソース(relay-ctrl-allow.c & relay-ctrl-age.c)を見てみたよ。
で、結局上記の予想通りみたい。
relay-ctrl-allow では、cdb ファイルを一切操作してない。
また、README を見てみると
Operation:
- relay-ctrl-age records IPs in /var/spool/relay-ctrl, checks all
previously recorded addresses, and removes any that have not been
updated for at least 15 minutes. It then lists all of the addresses
through a pipe to tcprules to build the control database for the smtp
server.
- relay-ctrl-allow checks the environment for the remote IP from which
the connection is originating. It runs relay-ctrl-age to ensure that
it is recorded in the control tables.
って書いてあるし、そういう仕様じゃないかな、と。なんか微妙な仕様だけど。 vpopmail + courierでなら、きちんとcdbファイルは更新される。
けど、いまさらPOP before SMTPなんて… >>664
詳しくソース見てないけど、relay-ctrl でも 3 系は即時反映するみたい。 >>661
>普通に本に書いてある、超一般的なインストール方でやってみました
大岡山先生が「本は買うな」と言ってたのに、本買ったのか・・・ >>661
qmailの本でrcpthostsに受け取りたいドメインを列挙しろっていう本があるんだが、まさかそれじゃないよな? >>666
おーめんさん、学校の図書館に鎮座しているソフトバンクの本どす
>>667
がはははははははははははははは(≧▽≦)びびんご >>663
ありがとうございますm( __ __ )mやっぱりそうなんですか・・・
じゃあpop3した後に、smtpdが動作してcdbファイルを参照しても意味ないんじゃ?
それならどうやってリレー制御するんでしょうか?わけわからん????
>>668
\(^o^)/オワタ
/(^o^)\ナンテコッタイ >>669
2 系を使う限りは、反映されるまで暫く待て、ということでしょう。
どういう事情があるか分からないけど、3 系に移行すれば
それらしい POP before SMTP は出来るかと。 またまた初心者です
下記のようにエラーが出てしまいます
●Vpopmail 5.4.24でのコンパイルエラー
libvpopmail.a(libvpopmail_a-vpopmail.o)(.gnu.linkonce.t.__i686.get_pc_thunk.
bx+0x0):/usr/local/src/vpopmail-5.4.13/vpopmail.c:86:
first defined here
collect2: ld returned 1 exit status
make[2]: *** [vchkpw] Error 1
make[2]: Leaving directory `/usr/local/src/vpopmail-5.4.13'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/vpopmail-5.4.13'
make: *** [all] Error 2
こんなエラーが出た場合は、gcc-3.3 か gcc-3.4 が入ってない可能性があります。
って書いてあったんで、調べたらgccは3.4でした
ちなみにosはソラリス8です
ソラリスではエラーになっちゃうのは仕様ですか? >>672です
エラーの内容ですがbackfillのsymbolがない?って感じですか
solaris8が入ってるいろんなマシンに同じようにmakeしてみましたが
すべて同じ箇所で止まりました ./configureにはオプションをいろいろ変化させて
みましたがどれも同じでmake時に同じ箇所で止まってしまいましす
gcc -g -O2 -Wall -o vchkpw vchkpw.o md5.o hmac_md5.o libvpopmail.a -lcrypt
libvpopmail.a(libvpopmail_a-vpopmail.o): In function `vdeluser':
/root/vpopmail-5.4.27/vpopmail.c:1769: undefined reference to `backfill'
libvpopmail.a(libvpopmail_a-vpopmail.o): In function `make_user_dir':
/root/vpopmail-5.4.27/vpopmail.c:2371: undefined reference to `backfill'
collect2: ld はステータス 1 で終了しました
make[2]: *** [vchkpw] エラー 1
make[2]: ディレクトリ `/root/vpopmail-5.4.27' から出ます
make[1]: *** [all-recursive] エラー 1
make[1]: ディレクトリ `/root/vpopmail-5.4.27' から出ます
make: *** [all] エラー 2
似たような箇所でとまって困っているという内容の書き込みを見つけたので(未解決)
それをコピペしました
ひょっとしたsolarisでこの5.4.27バージョンをmakeするにはなにか工夫が必要なのでしょうか?
知ってる方教えてください
それと5.4.27以下のもっと低いバージョンを探しているのですが
どこかにあるところ知ってる方教えてください
教えてばかりで申し訳ないですが、よろしくですm( __ __ )m qmialの内容ではありませんがqmail+vpopmailは定番なので
ここで詳しい方が沢山いらっしゃるとおもい続けて記載してます、ごめんなさい
vpopmail-5.4.25-24まで試してみましたがやはり
同じような箇所でmakeがとまります
ただundefined symbolの内容が若干違うようです
25ではvchkpwがないと怒られます???なんで? >>676です
全バージョン試してみましたがだめでした・・・orz
solarisでmakeするには何かいじる必要があるのでしょぅか・・・
誰かsolaris8でインスートルできた方教えてください >>677です
結局vpopmail-5.4.0とか.5 .10くらいならmakeは通りました
でもmake installが通らないので(なぜかこける(;∀;))
仕方ないので手作業で実行ファイルを全部cpして
教科書に書いてある通りにその後の作業を続けたら
一応バーチャユーザーでメールの読み込みまだはできました
しかしきしょく悪いよ〜ちゃんとmakeとinstallさせてよぅぅぅ
誰か助けてえええええええええ vpopmailの更新してるんだよな。
libvpopmail.a をどこからリンクしてるかを調べむ。
vpopmailかcourierかのconfigureスクリプトがおかしくて、
自力でMakefileのリンク周りを書き換えた覚えがある。 libvpopmail.a に backfill() が無いってエラーでしょ。
ちょっと前にインストールしたlibvpopmail.a があるんじゃないか。
libvpopmail.a が正しくできているかを調べれば?
>>679 >>682
それ玄人レベルのアドバイスなのでパァなわらすには理解でけません
ありがと&すまそ by678 >>683
おいおい、そのレベルでqmail運用したらspam地獄だぞ
gmailを使うgoogle appにでも移行しとけ >>684
このあんぽんたんめ
ならおめーが解説してみろや、このおたんこなすび >>685
そのれべるもなにも、これだけ教科書やネットに参考文献ころがってるのに
何を恐れるものがあるというのだw
普通に管理くらいでけるやん
ちなみにどうやったらspam地獄になるのか教えてくれやw?
要するにこの俺様は、それなりにネットでくぐったり、ここで教えてもらったりして、素人レベルの解決が可能であるかもしれないが
プログラムに触れる部分や、makefileやその類いをいじくる知識はさっぱり君だと言っているのだ
makeinstallでけなくとも、実行部分を所定の位置にこぴぺして
設定ファイルを準備して動かしたすることならOKの初心ゃあなわけだわさ
しかしネットでくぐれないようなレベルに達してしまうと、ぱぁな部類に属してしまうので
同じ箇所で嵌った先人にアドバイスを貰えれば嬉しいなぁ〜とここに書き込みしてるのだから
>>684みたいなゴキから文句言われたくないわさ
どうせな〜んにもわかってないだろうにw ちなみに下記のアドバイスの意味はわかる
でもlibvpopmail.aが正しくできているかの意味がわからない
そのファイルが存在していたとしても、それが正しいか正しくないかを開いたところで
判断できないし、仮にそのファイルが潰れていたとしても
じゃあどうして正しく吐き出すようにしたらいいのかという高等レベルwまでは
脳内解決でけまへんということなのです・・・orz
***なファイルがないのエラーだったらまだ何かを追加し忘れているとか
よく検索でくぐって見つけることができるのだが・・
プログラムの記述がおかしいちゃんちゃこりんは規格外ですw
>libvpopmail.a に backfill() が無いってエラーでしょ。
>ちょっと前にインストールしたlibvpopmail.a があるんじゃないか。
>libvpopmail.a が正しくできているかを調べれば? 意味がわからない=理解できない
の意味です、アドバイスには感謝してますm( __ __ )m
make、もしくはmake installはちゃんとできないけど、うごかすことができたのでもう消えます
ありがとねみんな
さいごにvpopmail-5.4.17までは教科書通りでconfigureしてmakeできました
ただmake installはつまずきます、手でバイナリを移動させて設定したら
ちゃんとうごきました、だからmakeはうまく通っていると思います
以上! 二度と湧いて出てくるなといわれているのに、なんで自分の馬鹿さ加減を
晒したがるんだろう、この手のキチガイは。
キーワードを与えられても、それについて自分で調べる知能がないのなら
生きているだけ無駄。早く死ねばいいのに。 s25rtarpitgreylist.pl の気になる点について書いてみる
・ファイル中のコメント部にある括弧が一部全角になっているので 7bit ASCII のみにして欲しい
・Mode_Check_RemotoIp_HeloIp のチェック(デフォルト ON)で、HELO が IP アドレス表記で
[xxx.xxx.xxx.xxx] となっている場合、[] を除去せずに ${Remoteip} と比較しているので
誤って判定されている >>691
きみは人の文字読むことできないのね・・かわいそ
きみの人生って一言で語ってみ?
>>694
自作自演ご苦労さまです( ´Д`)σ)Д`)ァゥァゥ 691 みたいに、分かり切ったことを書くのも同類じゃないか。
ノイズレベル上げるな。 そういや、pop3/imap側は何を使ってる人が多いかな?
うちはcourier-imapでpop3/imapをやってる
>>692
これって誰が作ってるやつだっけ?
俺じゃないよな… こんなスレ無くなったらいいのに
誰もいないけどすでにw >>692
の件、直して頂いたようで、ありがとうございます。
ただ、最近繋がり難いみたいすね。
一向にダウンロード出来ません… きまぐれPCひろばって毎晩0時前後が異常に重いよね。
なんか激重いバッチでもうごいてんじゃね? パソコンに詳しいからという理由で管理を任されてしまったUNIX初心者です。
サーバの試験運用にあたり、ドメイン無しでqmailを動かそうと思います。
meファイルを弄ればいいんじゃないか、というところまで辿り着いたところです。
このmeファイルを弄り、自分のWinマシンからサーバにメールを送信したところ、
以下のようになりました。
●ドメイン名 ←想定通り動く
●IPアドレス ←動かない
●[IPアドレス] ←動かない
ドメイン無しで運用しようとする場合、どのように設定すべきでしょうか。
なお、上記のパターンで「動かない」場合、
●/var/log/maillog には出力なし
●送信に利用したプロバイダからのエラーメール
553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1)
てーか今からやるのならどうしてpostfixにしないの? 過疎スレかと思ってたのに反応早くてびっくりです。
>706
どこだったか忘れたけど、「ドメインで運用しとけ」みたいな記述は見た気はします……。
>707
まるっきり空っぽの状態から試験用サーバを渡されたわけではないとか
既に運用されている他のサーバ(こっちは怖くて触れない)がqmailだったとか
他のソフトを入れるという発想が無かったとか、その辺の理由です。
>>708
とりあえずこのスレを全部読んで、なぜqmailは止めとけといわれたのか
理解できるぐらいの知識を持つこと。 >711
精進します。
メール周りに手を付けたのが昨日からなもので。
万が一に元システム担当者と連絡がついたら、
postfixなんかも含めて相談してみようと思います。
>712
分かりづらくてすみません。
IPアドレスのみで運用できないかという話です。 運用はできるが、利用できない。
MXレコードの意味がわからなければ。
モノはいいよう。 「運用はしていますが、これこれでりようはしかじか」と
あんたに担当をまかせた阿呆な相手に言い訳しなさい。
そんなところか。
>>713
それでも意味が通じない。
発言はもっと正確に。 いきなり過疎スレとか言うような知能の持ち主は放置するのがいいかと。 教えてもらうような態度じゃないし、
仕事だったらちゃんと金はらってどこかのコンサル頼め 日本だと魚肉ソーセージが近いんじゃね?って主張してる人がいた あれだけ勢力を誇ったdjb陣営も無残に滅んでしまったなあ。
信者の人々は今どうしているのだろうか?
>>725
ほとんどが転向してしまったよ。
M野さん以外での生き残りは隠遁生活してこんなの書いてる人ぐらい。
http://tabesugi.net/memo/cur/cur.html 同一のサーバの同じドメインで、とあるアカウントにはメールが届いて、
もう一つのとあるアカウントには届かないんですがどうしてでしょうか?
届くほうのログ
Jul 24 15:19:30 hoge.com qmail: 1248416370.230431 new msg 836695
Jul 24 15:19:30 hoge.com qmail: 1248416370.230484 info msg 836695: bytes 239 from <root@hoge.com> qp 28774 uid 0
Jul 24 15:19:30 hoge.com qmail: 1248416370.233335 starting delivery 145: msg 836695 to local seikou@hoge.com
Jul 24 15:19:30 hoge.com qmail: 1248416370.233818 status: local 1/10 remote 0/20
Jul 24 15:19:30 hoge.com qmail: 1248416370.318912 delivery 145: success: did_1+0+1/
Jul 24 15:19:30 hoge.com qmail: 1248416370.318976 status: local 0/10 remote 0/20
Jul 24 15:19:30 hoge.com qmail: 1248416370.319013 end msg 836695
届かないほうのログ
Jul 24 15:20:04 hoge.com qmail: 1248416404.269755 new msg 836695
Jul 24 15:20:04 hoge.com qmail: 1248416404.269819 info msg 836695: bytes 248 from <root@hoge.com> qp 28786 uid 0
Jul 24 15:20:04 hoge.com qmail: 1248416404.349167 starting delivery 146: msg 836695 to local sippai@hoge.com
Jul 24 15:20:04 hoge.com qmail: 1248416404.349249 status: local 1/10 remote 0/20
Jul 24 15:20:04 hoge.com qmail: 1248416404.354936 delivery 146: success: did_0+0+1/
Jul 24 15:20:04 hoge.com qmail: 1248416404.355014 status: local 0/10 remote 0/20
Jul 24 15:20:04 hoge.com qmail: 1248416404.355033 end msg 836695
did_1+0+1とdid_0+0+1/が違って、1番目はローカルへ保存されていないっつーことのようですが、
何が原因かエスパー出来る方いますか? >>728
x+0+1 ってことは、何かしら .qmail を書いているんじゃないかと。
で、qmail-local.c によると、count_file が増えるのは . か / で始まる行がある場合。
.qmail の記述内容を確認してみたら? >did_1+0+1とdid_0+0+1/が違って
この3つの数字は、順にファイルに保存した数、転送した数、プログラムを実行した数。
ということで、.qmail からスクリプトかなんかを起動していて、
それがコケたために .qmail のそれ以降の行が無視されたとかそんな感じだと思われ。
>>728-729
ソッコーのレスありがとうございます。
色々試してみたんですが、どうやらアカウントに大文字が1文字でも含まれてるとダメなようでした。。
で、ぐぐってみたら
http://www.qmail.jp/QA/ex/
> 大文字を含むアカウントは無視されます。(メイルを受けとれない。)
> メイルの宛先のローカル部は小文字に変換されて処理されます。
> 拡張部も小文字に変換されてた形で .qmailの有無を調べます。
なんてありました^q^
お騒がせしました。。。 ttp://www.qmail.jp/QA/ex/
>Q. qmailが安全確実(secure)というのはどういうことですか。
>sendmailは安全ではないのですか。
誰か正解を教えてください。 スパム業者のアドレス収集攻撃が多発、Symantecが警戒を呼び掛け
http://www.itmedia.co.jp/news/articles/0908/14/news013.html
こういうDHAが多発するような昨今ではqmailのような
全部受け入れちゃう仕組みは破綻してるなー。
理論がどうこうよりも時流から取り残された。
しかし、拡張アドレスのせいで簡単に移行できない…。
>>733
RBLで弾けば少しは違うでしょ。
「Web屋のネタ帳」みたいな教条主義者でもないのなら、
使うべきだよ。 Web屋のネタ帳、って、面白い (微妙に悪い意味で) 人だと思ってたけど、
教条主義者なの? 「Web屋のネタ帳」は見たことあるかもしれんけど、しらん。どーでもいい。
RBLは使っているし、S25R、Greylistingなども試してはいるけど、
根本的対策にはならないじゃない。
MTA運用してるなら(今にはじまったことではないが)無差別送信してくる状況は
把握できてると思う。それがDHAのように自動生成の宛先でもエラーが帰ってこないと
リスト化されてしまうと、いつまでもそこに送り続けられてしまうのでよくないと思うんだ。
もちろん送信してる奴らを撲滅したいところではあるが、現状そうもいくまい。
運用側でなんとかせねば。はぁ。 RBL は 何処の black list を使うかで、有効性と過剰保護性が
変わってくるから、あるていど試行錯誤が必要。いろいろある
かも知れないが、ウチはspamhaus。あとは、badmailfrom に
正規表現が使えるパッチあてて、spamassassin で集めた
spam の envelope を見て定期的に badmailfrom を更新する
cron 流してる。 >>736
>DHAのように自動生成の宛先でもエラーが帰ってこないとリスト化されてしまうと、
今時MAIL FROMを偽装しないとは、礼儀正しいスパマーもいるんだな >>739
生存確認&リスト化は、配信用とは別の仕組み使うから。 生存確認なんて、奴らはやってねーよ・・・
10年前くらいに廃棄したドメインのMXレコードを探されるぜ 生存確認してspam listの管理をするまでもなく、botnetの処理能力を生かして
かまわず送りつけちゃったほうが低コストということなんだろうねい。 >>743
リストを売る際は、生存確認するんでないかな。
到達率何%って売り文句見かけるし、たまに空メールをぶち込みにくるのは
生存確認だと思ってたんだけど、違うのかな。 morercpthosts 使ってみた方感想教えてください すみません、質問なのですが
qmail-inject を使った perl のプログラムで、
To の設定と表示上別のアドレスにメールを送ることってできますか?
メーラーで見たときに、aaa@xxx.com 宛てに届いているけど、実際にはサーバからは bbb@zzz.com に送られてるようなものです。
From は如何様にも設定できるのですが、To は調べても出てこず。。
メルマガシステムなどは、固定アドレスでたぶん bcc とか使わないで配信されているので、
出来ないことはないような気もするのですが、お分かりになる方がいらっしゃったら是非お願い致します。 >>748
> To の設定と表示上別のアドレスにメールを送ることってできますか?
出来るけど、qmail に限った話じゃないね。
> メーラーで見たときに、aaa@xxx.com 宛てに届いているけど、実際にはサーバからは bbb@zzz.com に送られてるようなものです。
? aaa に「実際に届いてる」のか、メーラーで見た時に「aaa 宛に見えてるだけで届いてない」のか
文章が曖昧で分からない。
どっちにしても、スレ違いかと。 >>749
ありがとうございます。
すみません、qmail を使って配信する方法を知りたかったのでこちらに書かせていただきました。
確かにsendmailとかでもできるかもしれないですが。。どちらにしろ知識不足で。
メーラー上 aaa@xxx.com 宛てに届いている表示なのだけど、実際に aaa@xxx.com には送られておらず、
そのメールはサーバーから bbb@zzz.com に配信されているというようなものです。
挙動としては、ezmlmで配信しているように、宛先・差出人を weeklymag@xxx.com にして一件ずつプログラムで別のアドレスに送りたいのです。
見た目だけなら、宛先・差出人入れて、BCCに入れるのも一緒なのですが、数をまわすとその分自分にメールを送ることになってしまうので。
To の置き換えはどうしても見つからず。。
お力をお貸し頂ければと存じます。 qmail-inject(8) を読んでもわからないようならば
自作するのはあきらめて他の人が使ったツールを探してきた方がいいと思う。マジで。
>>751
大きなヒントをありがとうございました!無事解決しました。
あなたは神のような人です。 portsからqmail-1.03_7を入れるんですが
オプションの選択画面に不正リレーのパッチかなんかの
項目がないのですが、qmail-smtpd-relay-rejectをダウンロードして
パッチをあてる必要はありますか?
よろしくお願いします なんでqmailを使おうとしているの?
qmailは今となってはレガシー環境のために仕方なく使うもので、
そんなこともわからないレベルの人が使うようなシロモノじゃないんだけど。
>>755 前に使ってたのでつい選んでしまいました
特別に意味はないです
前回qmailを選んだ理由はsendmail以外ならよいかな。ぐらいの感覚でした
こだわりとかはないです はい。Postfixを入れてみます
ありがとうございました >>759
何をトチ狂ったか、hotmail が改行コードを CR+LF じゃなくて LF で
送りはじめたと聞いたけどほんと?
だとしたら「qmail(笑)」じゃなくて「hotmail(笑)」なんだけど。
まあ、qmail の方もこのぐらい寛容に受けとってやれよと言ってもいいと思うけど。 >>760
tcpdumpしてみたがそのようだ。
ttp://www.qmail.org/qmail-smtpd-newline-1.03.patch
このパッチ当てて回避してる。
MSNに問い合わせたけどテンプレ回答しかよこさねーな。 質問です。
自分はdebian lennyでMail鯖を構築中のものです。
qmail+tcpserver でなんとか自ドメイン内での送受信はできるようになりますたが、
外部の送信ができません。
外部ドメインに送信しようとすると
sorry, that domain ,,
すいません途中で送信してしまいました。
>>762です。
質問です。
自分はdebian lennyでMail鯖を構築中のものです。
qmail+tcpserver でなんとか自ドメイン内での送受信はできるようになりますたが、
外部の送信ができません。
Thunder bird で外部ドメインに送信しようとすると
sorry that domain isn't in my list of allowed rcpthosts
といったエラーメッセージが出てきます。
/var/qmail/control/rcpthosts に自分の送りたいドメインを追加すればいいのでしょうが
自分は色々な人に送りたいのでそれでは根本的な解決にならないので困っています。
また /etc/init.d/qmail restart をしたら /var/log/mail.log を見てみたら
Nov 8 00:23:51 hoge qmail: status: exiting
Nov 8 00:23:51 hoge qmail: status: local 0/10 remote 0/20
Nov 8 00:23:51 hoge qmail: tcpserver: fatal: unable to bind: address already used
と出ました。 >>764
え?DNS??
なんです? MX はちゃんと登録いてますが? >>763
> /var/qmail/control/rcpthosts に自分の送りたいドメインを追加すればいいのでしょうが
ここの理解が間違っている。 >>768
すいません、たぶん間違ってますね。
今さっき rcpthosts を削除したら外部への送受信ができるようになりましたが
これではスパム業者にのっとられてしまうと思うので
なんとかしてなおしたいんです!
なにかご教授いただけませんでしょうか? >>769
rcpthosts でググれば理解できると思うんだけど。 >>770
ぐぐってわからないから聞きにきたんですよw
rcphosts って
・ここに記されているホスト,ドメイン宛のメールのみ受け取る
・環境変数RELAYCLIENTが設定されている場合はrcpthostsを無視する.つまりどのような宛先でも受け取る
ってことですよね?
とにかくヒントがほしいんですよw
DNSとか関係ないじゃないですかw >>771
> ・ここに記されているホスト,ドメイン宛のメールのみ受け取る
そう。基本的に自ドメインのみを記述する。これで外部から踏み台は出来なくなる。
> ・環境変数RELAYCLIENTが設定されている場合はrcpthostsを無視する.つまりどのような宛先でも受け取る
そう。だから、tcpserver で内部からの接続は RELAYCLIENT を設定する。 >>772
で、なんで外部ドメインへのメール送信ができないんでしょうか?
ちなみに外部ドメインからのメールは受信できました。
基本的なところでつまずいているのはわかるのですがヒントをいただけたらと思います。 >>773
いや、だから書いてある通りでしょ。
外部→MX ※ rcphosts に自ドメインが書かれているので受け取る
内部→MX ※ rcphosts に外部ドメインが書かれていないので外部に中継しない
外部へのメールも MX で「中継」してるんだよ?
だから、問題は rcphosts じゃなく、tcpserver の方。
> Nov 8 00:23:51 hoge qmail: tcpserver: fatal: unable to bind: address already used
なんて言われてるんだし。 >>774
すいません何かまだ理解していないようです。
DNS のMX レコードにな私のグローバルIPは登録してあります。
* ドメイン取得はお名前.comさんにお願いしているので間違えありません。
>>774 さんが仰ってることは /etc/resolv.conf に何か書き足せということですか?
混乱しているのが rcpthosts を削除すると内外にメールを送受信できるということです。 >>775
あぁ、MX って言ったのがまずかったかな… 混乱させてしまったようで申し訳ない。
MTA とでも qmail とでも読み替えてくださいな。DNS はとにかく忘れましょう。
> 混乱しているのが rcpthosts を削除すると内外にメールを送受信できるということです。
ファイルがない場合はオープンリレー状態になります。
とにかく、今調べるべきことは tcpserver の設定などです。 >>776
おせわになります。
tcpserver は aptitude でパッケージからダウンロードしてしまいました。
まずどのあたりから調べたらいいでしょうか?
そういえば設定ファイルなどいじっていないような気がするです。
dpkg -l コマンドで tcp 関連のものを調べたら
ii ucspi-tcp 0.88-15 tools for building TCP client-server applica
ii ucspi-tcp-src
でした。
またtcpserver 関連のプロセス状況を見てみたら
qmaild 17720 0.0 0.0 1832 568 ? S< Nov06 0:00 tcpserver -u 64011 -g 65534 0 smtp /var/qmail/bin/qmail-smtpd
root 17845 0.0 0.0 1832 568 ? S< Nov06 0:02 /usr/bin/tcpserver -R -H 0 pop-3 /usr/sbin/qmail-popup hogehoge.com /usr/bin/checkpassword /usr/sbin/qmail-pop3d Maildir
でした。 >>777
> そういえば設定ファイルなどいじっていないような気がするです。
そりゃ駄目でしょう。CDB(ルール)ファイルを作って tcpserver に読ませなきゃ。
> qmaild 17720 0.0 0.0 1832 568 ? S< Nov06 0:00 tcpserver -u 64011 -g 65534 0 smtp /var/qmail/bin/qmail-smtpd
-x で CDB ファイルを指定して起動するはずなんだけど、tcpserver の起動
オプションを正確に調べてください。tcpserver の起動方法が何か分からないので
どのファイルを調べればいいかまでは分かりかねます。
あとは
> Nov 8 00:23:51 hoge qmail: tcpserver: fatal: unable to bind: address already used
とのことなので、他に qmail-smtpd が起動していないかも調べた方が良いかと。 >>778さま
ありがとうございました!!!
とうとう成功しました!!
ご助言ありがとうございました!!!
>> そういえば設定ファイルなどいじっていないような気がするです。
>そりゃ駄目でしょう。CDB(ルール)ファイルを作って tcpserver に読ませなきゃ。
についてですがこれについてはおこなっておりました。
>> Nov 8 00:23:51 hoge qmail: tcpserver: fatal: unable to bind: address already used
>とのことなので、他に qmail-smtpd が起動していないかも調べた方が良いかと。
qmail: tcpserver: fatal: unable to bind: address already used
の意味ですが、もう既に他のプロセスで使ってるよ!!って意味らしいです。 >>779
まずは、おめでとう。お疲れ様でした。
で、何が原因だったの? どう対処したの? >>780
非常に摩訶不思議なことというかアホなことだったのですが。
root 17845 0.0 0.0 1832 568 ? S< Nov06 0:02 /usr/bin/tcpserver -R -H 0 pop-3 /usr/sbin/qmail-popup hogehoge.com /usr/bin/checkpassword /usr/sbin/qmail-pop3d Maildir
という tcpserver のプロセス部分の
hogehoge.comが本来ならばhoge.comであるべきなのに
hogehoge.comとなっていたのが原因でした。多分。
で一度 killall tcpserver をし、/etc/hosts を編集し qmail を再起動したら
外部にも送信できるようになりました。
でも解決はしましたが本当にここが原因だったのかわかりませんが。。。
ただここしか触っていないのでこれしか思いつく原因がありません しかも携帯にも送れるなんてすばらしいです!
本当にありがとうございました >>781
> hogehoge.comとなっていたのが原因でした。多分。
qmail-popup の方は関係ないはずです。
そっちは POP3 の方だけしか面倒見ないプロセスですので。
要するに
> で一度 killall tcpserver をし qmail を再起動したら
ですか。 >>783
ということはどういうことですか?
あらら・・またわからなくなってきました・・・ >>762
ttp://www.lifewithqmail.org/lwq.html にある手順通りにやれば、必ず動く。じゃ。 >>785
なんかアドバイスできない人に限ってこれだよなw
しゃべらないでいいよw >>786
偽者ですか?
やめてください・・
>>785さん日本語版のも読みましたよ >>788の言ってるspammerは>>762のqmailのことだろう。
別に>>762がspamを送ろうとしてると言ってるわけじゃなく、
qmailはspamを送る踏み台に容易にされるってことだから誤解しないでくれ。
life with qmail の日本語版も読んだんなら、
悪いことは言わないから新規でqmailで鯖立てるのはやめたほうがいいぞ。 life with qmailの日本版を参考にしてる人って、
あの翻訳した人がアンチqmailだということは知ってるんだろうか。
>>791
訳者がqmail嫌いってのは冒頭の訳注に書いてあるから知ってると思いたい。
内容に意図的に嘘を混ぜてるわけでもなさそうだし参考にするのは構わないと思う。
俺もqmail嫌いだけど仕方なく管理してるし、life with qmail日本語版を参考にしてる。 元々嫌いなものをいやいや訳した、みたいな言い草はどうなんよ www.rbl.jp で relay check して確認するんじゃダメなの? >>794
spamを送る踏み台ってのはちょっと語弊があった。すまん。
第三者リレーじゃなくてbackscatterのことが言いたかった。
広義のspamに含まれるってことで勘弁してくれ。
Debianのqmailパッケージ見てみたけどbackscatter対策は
されてないようなので自分で手直ししないといけない。
ttp://debz-di.kabocha.to/archives/2007/03/20070311104740.html >>795 ああ、そっちか。そのページにコメント入れているヤツは、実は俺っす。 >>796
結構前になるけど実はそこ見て初めてrealrcptto知って、
うちのqmailに当ててみた。それまではキューが詰まって遅配したり、
backscatter.orgのブラックリストに載せられたりしてたけど、
おかげで少しはマシな運用ができるようになったよ。 そうですか。それはそれは、です。そこのサイトのコメにも書いたように、
それまでに一杯当てたパッチとかぶるんで、realrcptto は、ソースを見ながら
自分で手で入れたのが二年ちょっと前。いまログをみてみたけど、もう、自分で
何をやったのかよく思い出せない。tar.gz で固めてあるパッチ済ソースが頼りだわ。 backscatter.orgって今も生きてる?
トップページがかなりうさんくさい感じなんだけど。 >>790
そのとおりです
言いたいことを代弁してくれてありがとう Postfixへの移行も考えてるけどqmailに比べて巨大だから尻ごみしてしまう件
Webサーバの方は既にApacheへのアンチテーゼとして小さくて高機能なサーバが色々出ているのにねぇ… どういう機能が必要かにもよりますが Debian だとパッケージ化されている
http://untroubled.org/nullmailer/
なんかは簡単でよいですよ >>802
まあ postfix が機能的にも情報的にも一番便利だと思いますけど。
>>803
まともな設定できる能力ないとqmailは使いこなせんわなww > まともな設定できる能力ないとqmailは使いこなせん
使いこなすって。。。マジごみでしょqmail。
今から新しく導入する理由なんて全くない。
qmail紹介しているウェブのページは、ちゃんと
「今から新規に導入する場合、qmailは選ばないように」
って書くべき。
実際、俺の前の管理者が趣味で入れたのかどうなのかしれないが、
そのあとを引き継ぐことになったオレ涙目。
社内のシステムが拡張アドレス使いまくりで利用してるため、
乗り換えたくても乗り換えられない。しょうがないのでパッチに継ぐパッチ
で対応するしかないし、そのたびに検証環境作ってテスト。
今期中にDKIM対応しろって言われてもう泣きそう。
正直、俺のあとに引き継ぐやつが不憫でならない。 「まともな設定できる能力ないとqmailは使いこなせん」と「ごみ」は
別に矛盾しない。 「まともな設定できる能力なくてqmailも使いこなせん」ようなヤツは「ごみ」、
で正しい。 DKIM導入を理由に別に移るしか!
拡張アドレスはpostfixなら一段あるから
大号令かましてまとめちゃえ
逆に聞きたいのだけどpostfixでは対応出来ない拡張アドレスの使い方ってどんなの? >>810
customer@example.co.jp
custmer-support@example.co.jp
custmer-support-elec@example.co.jp
custmer-support-elec-home@example.co.jp
なんてのはpostfixじゃ無理でしょ? foo-aというユーザがいたときに、問答無用でfooの拡張アドレスだと
postfixは解釈してくれる。
移行したいのに、これでマジ詰んでる...
qmailだとusersで指定すればfoo-aもユーザ扱いできるはずだが、
postfixだと「区切り文字に指定した記号は含んではいけない」ってなっちゃうわけ? 「区切り文字に指定した記号をユーザ名に含んでも良い」のほうが運用面倒だろ
foo ユーザが foo-a 使おうとしたら、foo-a ユーザがいて、とかわけわからん。
つかpostfixでのデフォ区切り文字は「+」なんだが
それを使いたくないってことか?
まあメアド登録時に「+」「=」をはじくWebサービスがあるからってのはわかるが 拡張アドレスっていう発想自体がめんどうの元な気がする。 +とか弾くところ多すぎ。
RFCちゃんと確認しろよと。 >>819
だよねぇ。
「+」を含んだアドレスを登録したらいつの間にか空白に変換されてるところもあったw >>820
それ(+→空白)は、単にWebプログラムの問題だと思う。 んでもRFC的に許容されてるからといって
/home/foo/public_html@example.com
とか
test.cgi?name=foo&sex=female@example.com
とか
/usr/bin/perl@example.com
とか
"`foreach\ i (./*){echo\ $i}`"@example.com
こまるだろ。 >>817
qmail使っていたところを移行したいので、できるだけ手抜きをしたい
わけですよ。だから区切りを-に変えて設定ファイル名も.qmail-aとかで
どうにかできるようにしたい。
さすがにユーザ名を変えろとはいえないし。
そんなわけで今でもいやいや使ってます。public domainになったのが
ちょっとだけ救い。
qmailの質問ってここでいいのかな?
今qmail使ってて、届いたメールを別のメールに転送してるんだが
特定の条件のメールのみ転送しないようにフィルタを作りたいんだ。
いろんなサイトを見てると、.qmailに記述を加えてやればいいみたいなんだが、
具体的にどういったスクリプトを書けばいいんだろう。
(例)件名に「test」とついたメールのみ転送したい。
<.qmailの中身>
./Maildir/
|./filterScript
&test@sample.com
filterScriptで”件名が「test」のときにexit 99を返す”ようにすればいいっぽいんだけど、
どうやって件名に指定した文字があるか取得するのかわからないんだ・・・ grep -i subject: | grep -i test とかじゃダメなの? >>827
shell scriptとかperlスクリプトとか、やったことある?
>>829
やってることはわかるんだけど、何に対してgrepしてるのかわかんない・・・
>>830
一応bashもperlもわかる・・・けど、
それらのスクリプト内で「件名」をどう取得するのかがわからないんだ・・・
>>831
軽く調べてみたけど、こいつ自身が転送する機能を持ってるの? >>832 "dot qmail" でググってみんさい。あ、それから、
.qmail で呼ばれたプログラムには、メールメッセージは
標準入力のかたちで引き渡される。 827は放置対象だろ。これ以上かまってもなにもいいことがない >>808
> 「まともな設定できる能力なくてqmailも使いこなせん」ようなヤツは「ごみ」、
> で正しい。
その通りだ
>>805
> 実際、俺の前の管理者が趣味で入れたのかどうなのかしれないが、
> そのあとを引き継ぐことになったオレ涙目。
だからお前がゴミなんだよ
> 正直、俺のあとに引き継ぐやつが不憫でならない。
ゴミから引き継ぐやつ可哀想 >>827
mess822 だな。
ためしていないが、
| [ "`822field subject`" = test ] && exit 99
のような感じか? >>827
少々スマートに
| condredirect 転送先アドレス sh -c "822field Subject | deMime | grep -qi 'なんとか'"
いかが?
IPアドレス→国コード の変換(DNSのTXT形式)をしてくれる鯖を利用して
受信メールのヘッダに X-Country:xx って挿入したいんだけど
どうやったらできますか
RBL だと完全に弾いちゃうんで、とりあえず受信しておいて
メーラー側で X-Countryに基づいて仕訳(迷惑メール処理)したいんですが。 >とりあえず受信しておいて
bakscatterの餌食ですねわかります >>844の世界のspammerはReturn-Pathに自分のアドレスを正直に名乗ってくれる優しい人たちばかりなんだよ Return-Path: っていうか、envelop FROM な。 >>844
bakscatterの意味を知ってて書いてるのか?
>>843 は単に、発信側のSMTP鯖のIPアドレスの割当国をメールヘッダの中に仕込ませて
メールクライアント側で、迷惑メールフォルダへ放り込みたいって言ってるだけだろ >>843
>変換(DNSのTXT形式)をしてくれる鯖を利用して
なんてするなら、GeoIP使ったほうがネットワークに優しいよ
Qmailはmilter使えないから、procmail経由でスクリプト噛ましてCountryコード付加すればいいんじゃないかな? 長文失礼します
.qmailの「|」でコマンドに標準入力として渡される
メールデータについて、本文(body)の改行コードは
送信元のメールクライアントの環境により
変わるものですか?
perlで本文(body)に書かれたキー、
例えば、optionというキーの値
抜き出し、それに従って処理を行っています。
本文に書かれた
option:1
なら
1を抜き出す処理を行っています。
自宅のメールクライアントがThunderbird(OS:Windows)だと
きちんと「1」が抽出され、処理が正常に動作するのですが、
別の環境(会社のNotes OS:Windows)だと「1」が抽出されていないようで、
正常に処理できませんでした。
会社からなので、ちょっと中身を調査することができませんでした。
※ヘッダー情報(From:や、Subject:〜)は、
Notesでもきちんと抜き出せました。(送信元に返信するようにしていて
会社のNotesに返信されたので。)
考えられるのは改行コードかなと思い、
標準入力をファイルに出力
するコードを埋め込みましたが、
違う原因かもしれないので、何か思い当たることが
ありましたらご教示下さい。
>>853のperlコードですが
これだと、メールクライアントで動く、動かないが発生します。
while (<STDIN>){
#ヘッダー情報(件名)はどんな場合でも正常に取得可能
if ($r =~ /Subject:/i){
$subject = $';
chomp($subject);
}
#本文がメーラー環境により取得できなかったりする。
if ($_ =~ /option:/i){
$option = $';
chomp($option);
} >>854ですが
違っていました
if ($r =~ /Subject:/i){
->
if ($_ =~ /Subject:/i){
でした
>>853
> .qmailの「|」でコマンドに標準入力として渡される
> メールデータについて、本文(body)の改行コードは
ここの前提(qmail でとかパイプでとか)は要らないでしょ。
要するに、単にメール本文の改行コードが
> 送信元のメールクライアントの環境により
> 変わるものですか?
ということですね。それなら変わるものと思っておいた方が良いでしょう。
ただ、ほとんどの場合は MUA じゃなく MTA/MDA が原因かと。
この辺りは bare LF で検索したらそれなりに情報があるかと。 >>856
レスが遅くなりすみません。
my $data = do{ local $/; <STDIN>};
@lines = split("\n",$data);
for(my $i = 0;$i <= $#lines;$i++){
$r = $lines[$i];
$r =~ s/\r.*//;
・・・
こんな感じでオールラウンドにできたと思います。
すみません
質問させてください
qmailでDNSの逆引きができないIPからのメールは送信しない設定で
tcpserverに -b -c オプションをつけて
tcprulesに
=:allow
:allow,RBLSMTPD="Access denied. bad reverse DNS"
などと記述するいい、ようなことがネット上によくありますが
この
=:
はなにを意味するんでしょうか? qmail+vpopmailで、複数のドメインを一つのIPに向けて運用しているんですが、
control/me等に記述するホスト名って
応答したり送信したりする時に、各バーチャルドメインのホスト名にその場その場で変えられる
設定やパッチって無いものでしょうか
HELOでxxx.comって名乗っておいてfrom:はyyy.netとか気持ち悪すぎるしSPAM扱いされそう MXを名乗るべきところとAを名乗るべきところをごっちゃにしてはいかん。
ヘッダのRecievedでもbyと直後のfromでホスト名が噛み合ってなかったりするし
如何なものかと思ったんですがそんな事は無いんですかね
いや普通に使えてはいるんですが何か気持ち悪いなと >>864
> ヘッダのRecievedでもbyと直後のfromでホスト名が噛み合ってなかったりするし
それと送信者メールアドレスの話は全然別。 >>868
自分は DNSSEC をつかうつもりはないし、自分の自宅鯖がフルリゾルバとして参照している
プロバイダのDNSサーバも、DNSSECが有効になるのはだいぶあとだろうけど、
そういう場合は DNS の応答パケットが512バイトを超えることはない= ほぼ実害はないと思っていいのかな?
仮にメールの送信先のドメインのゾーンが DNSSEC 対応していていても、
qmail が MX レコードなどを引きに行くときに、現状は DNSSEC を有効にしないでDNSクエリするから、
帰ってくる DNS 応答パケットも 512 バイト以下になるのかな。
>>870
ありがとう、読みました。
postfix への入替を検討します。 去年五月にうちもこの問題に遭って、dns.c パッチ当てて使い続けている。
qmail の最大の問題は、公式メンテナが居ないからこういうとき右往左往する
ことだよね。ただ、残存信者は、なまじスキルがあるから、なんとかパッチ
見つけて使い続けてしまうんで、中々絶滅しないのではとも思われる。 このパッチって、当ててるのが普通だと思ったんだけど
当ててないとこ結構あんのか 多くのnetqmail 頼みのユーザは dns パッチ無しだろう。
netqmail が何故このパッチしないのかは知らない。 ごめんやっしゃ〜どなたかいてはります?
旧メールの質問あるんやけど、勝手に質問残していってええかな?
同じドメイン同士なら内外関係なくメールの送受信できるんやけど、他のドメインになると全く送受信でけへんのよ。
これってどないしたら直ります?ちなみにうちのアホプロバイダがOP25B対策してるらしいですわ。だから一応サブミッションポートは開けてありますぅ〜
ほなよろしゅうたのんますわ、自分普段はデビー板に常駐してるさかいに、呼びにきてくれたらいつでも出張りますんで。 >>879
タボ!それ言ったら元もこうもないんじゃボケ!わからん奴は一々レストランせんといてや〜
postfixならやり方が公開されてるよ
別ポートで建てて外部への送信はpostfix経由とかどうよ >>881
ん?おもろそうやん、なんか参考になりそうなサイトありますかー?
ちゅうか、俺らで構築せーへん?おもらそうやん >>883
何ゆーとりますの?この書き込みから包茎やらなんやらって…アタマヤられてるのとちゃいますか? 884はレスからも恥垢臭が漂ってくるほど臭く、特にこの時期は
生きる悪臭公害として、周囲から忌み嫌われている。 >>887
たのんますーデビーユーザーなんやけど、UNIX板で聞いたほうが解決するやろーって進められたんですわ。
>>888
とりあえず、ここ見ろ ttp://www.houkei-navigator.net/ >>890
ダボ!ワシの利かん坊は浪速界隈じゃ有名なんやで?
アホか、そんな手術したら地上最強になってまうやん。最終携帯ミストバーンになってまうで あんさんが毎晩、自慰を繰り返して脳内麻薬物質(エンドルフィン)に依存すやろ
ほしたら、自慰をせんと眠れなくなり、その後の人生は眠剤に依存した生活になりよるさかい
気を付けておくんなはれ CNAME_lookup_failed_temporarily._(#4.4.3)エラーが頻発して困ってます。
queuelifetimeを1時間にするという対応を考えているのですが、
デフォルトの一週間と比較して、あまりに短いのでこれで良いのか悩んでます。
このエラーの時、なるべく素早く送信者に通知する良い方法はありますか?
まず、そのエラーが相手ドメインの問題で発生してるのかどうか確認しろ。
相手のところではなく自分のところの起きてる問題なら、
バウンスするまでの時間を短くするのではなく、
そもそもバウンスしないようにするのが正解。
たとえば、宛先ドメインがDNSSECを有効にしてる場合にそのエラーが出る。
qmailのバグなので、qmailを捨てるかせめてパッチを当てるのが正解。
http://jprs.jp/tech/notice/2011-03-03-inappropriate-handling-for-long-dns-packet.html
素早い回答に感謝します。
情報が足りて無くて恐縮ですが、エラーは相手ドメインの問題です。
さしあたって、対症療法としてバウンスするまでの時間を短くしつつ、
qmailを捨てるかパッチを当てるか、検討します。
echo "相手ドメイン:bounce" > control/virtualdomains
echo "| exit 100" > alias/.qmail-bounce
そのドメインだけ即座にバウンスさせられるはず。試してないけど。
qmailのアカウント追加って、普通のユーザを追加することでも出来るの? UNIXユーザアカウント追加でもqmailのアカウントを追加した事になるかって事じゃないの? djbdnsはローカルでお手軽に使ってるけど
qmailはもう無いや MXは付けずにAだけあれば十分という嘘やその嘘のまま実装されたDNS関連のサービスが結構あるのに?w 誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。
グーグル検索⇒『宮本のゴウリエセレレ』
TVO9F2NP6N 知り合いから教えてもらったパソコン一台でお金持ちになれるやり方
時間がある方はみてもいいかもしれません
グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』
IW8JG コミュニティ主導のqmailフォークプロジェクト「notqmail」が立ち上げられる
https://mag.osdn.jp/19/08/23/160000 最近はメッセージのやり取りはLINEとかフェィスブックメッセンジャーとかが主流なのか? qmailフォークとか宗教か!?
Postfixでダメな理由は? s/qmailとかnotqmailなんてのがあるのか 634えんどうなぎさ ◆/OeEDDo2qQ 2018/11/25(日) 21:29:22.09ID:MYtANyWz0
最近のホモ親父は出した糞をただ食うだけでは満足しない。
「美味しそうに食え」って言うんだぜ?
あんな苦くて臭いものをどうやって美味しそうに食えって言うんだ?
「そうしないと金はやらん」って言われるし正直死にたくなってくるぞ。
http://egg.2ch.net/test/read.cgi/tubo/1500175074/415
415えんどうなぎさ ◆zSnHtkJcqY 2017/08/07(月) 15:01:06.94ID:CLbKoYoX0>416
男娼でスカトロをリクエストされるが男娼の中では非常にハードなプレイだ。
ホモの肛門を舐めるよりもキツい。
ウンコ食わされたり身体に塗られたりとかしてみろよ。
その時は地獄の時間だった。
http://egg.5ch.net/test/read.cgi/applism/1523494036/723
723うなー ◆/OeEDDo2qQ (アウアウカー Sa43-PmXH)2018/04/20(金) 20:55:20.92ID:UU+yRPoJa
俺は職がない。
だが金を稼いでいる。
ホモ親父に抱かれることで金がもらえる。
いい親父だとしゃぶってマグロになるだけで終わる。
酷い親父だとウンコ塗られたり食わされたりする。
この生活いつまで続くのかな。
34ゲームセンター名無し (オイコラミネオ MM1f-dFMC)2018/07/06(金) 17:50:46.60ID:bPoehpsAM
>32 大便の味か リアルに食べると分かるがかなり苦い
しろハメに不定期出演している頭髪薄毛ヒゲモジャモジャ素人男優みたいな男ばかりくる
そんな男の大便を泣きながら食った時は惨めな気持ちになるよ、毎回なw qmailのソースを読んでいるのですが、
この中に”token822.c”というソースがあります。
このソースを理解するにはRFC822を読んでおく必要があるのでしょうか? >>924
qmailレベルのソフトウェアならソースを読んで理解したら
RFC822を理解しましたと言っても良い
間違ってることもあるかもしれないが
多分いずれの場合も起きる誤読の方が多いだろう
相補的に同時に読んでも良い >>925
>>926
レスありがとうございました。
コードリーディングって、qmailのソースだけを読めばいいのかと
もやもやしてました。
まだ読み始めたばかりなのですが、レスのおかげで
迷いがなくなりました
今はqmail-start.cのexecvp()で置き換わる
qmail-send.cの長さにビビっています。
コメントに、このファイルは長すぎると書かれていて
気が滅入りました。
また、何かお聞きしたいことがあると思いますの
レス頂ければと思います
ありがとうございました djbのコードはちょっとクセがあるけど読む価値はあると思う
セキュリティに関するいくつかの考察 - qmail 1.0 から十年
https://www.unixuser.org/~euske/doc/cr.yp.to/qmailsec-ja.html qmail-start.cでqmail-lspawnをexecするので
qmail-lspawn.cを読めばいいんだと勝手に思い違いをしていた
main()が見当たらない。
qmail-lspawnという実行ファイルを作る事に気付いて
Makefileをみてみた。
qmail-lspawnがspawn.oに依存していることが確認でき
spawn.oを作るspawn.cにmain()があると確認できた。
教訓:Makefileも検索してチェックする必要があると学習した qmail内のグローバル変数のprintデバッグしたいのです
ソース内にprintfを書き込んで、標準出力
もしくはlogを書き出すようにソースを変更してから
再コンパイルして、動かすしかないのでしょうか
大昔の実機にlinuxをインストール、
qmailのソースを展開して
make setup checkまで準備し、作業を止めています。
もしもっといい方法があれば
アドバイスお願いします おはようございます
931さんに指摘してもらって、ps ax | grep qmailで
601 ? S 0:00 qmail-lspawn ./Mailboxと表示されたので
#gdb qmail-lspawnで起動し
(gdb)attach 601で
プロセスidを指定して、attachできました。
Reading symbols from /lib/libc.so.6...done.
Reading symbols from /lib/ld-linux.so.2...done.
0x400c717e in __select () from /lib/libc.so.6
上記のように表示されました。
ただここから、各関数にブレークポイントを張ろうとしても
関数が定義されていないと表示されます
spawn.cのmain()関数の後ろの方にfor(;;) {}ループがあり
この中のselect()で待っていると推測しました
別のターミナルで/var/qmail/bin/qmail-injectで
ローカル内に送信しても何も起きませんでした
現時点で何の知識が足りないのか分かりません。
どうすれば、breakでポイントを張って、
nextで進めてくようになるのでしょうか。 -g -O0でコンパイルしたのか?
>>931のページをよく読め おはようございます。
933さんにしてきしてもらった、
-g -O0を指定してコンパイルはしてませんでした
conf-ccファイルで、1行目を
cc -g -O0
と修正し、コンパイルしました
コンパイルはエラーなくできました
しかし、gdbでbreak mainとしても
main関数は定義されてないとメッセージが返ってきます
まいりました。 >>934
ちゃんとnot strippedになってる?
/tmp:$ cat hello.c
#include <stdio.h>
int main(void) {
printf("Hello, World!\n");
return 0;
}
/tmp:$ gcc -g -O0 hello.c -o hello
/tmp:$ file hello
hello: ELF 64-bit LSB pie executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, BuildID[sha1]=28eab96536677fb6eacc582323810f594e57e2c8, for GNU/Linux 3.2.0, with debug_info, not stripped
/tmp:$ gdb hello
(略)
Reading symbols from hello...
(gdb) info function .
All functions matching regular expression ".":
File hello.c:
2: int main(void);
Non-debugging symbols:
0x0000000000001000 _init
0x0000000000001040 __cxa_finalize@plt
0x0000000000001050 puts@plt
0x0000000000001060 _start
0x0000000000001090 deregister_tm_clones
0x00000000000010c0 register_tm_clones
0x0000000000001100 __do_global_dtors_aux
0x0000000000001140 frame_dummy
0x0000000000001168 _fini
(gdb) quit 935さん。朝の忙しい時にレスありがとうございました
helloワールドで同じようにやってみました
$ gcc -g -O0 -o hello hello.c
$ file hello
hello: ELF 32-bit LSB executable, Intel 80386, version 1,
dynamically linked (uses shared libs), not stripped
$ gdb hello
GNU gdb 19991004
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License,
and you are
welcome to change it and/or distribute copies of
it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.
Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux"...
(gdb) info function
All defined functions:
File hello.c:
int main();
Non-debugging symbols:
0804842c _etext
08049540 __bss_start
08049540 _edata
08049558 _end
以上です。
今度、qmailの実行ファイルで、同じようにやってみます qmailを展開したディレクトリで
conf-ccを編集
cc -g -O0
と修正後、make setup checkしてコンパイルできました
/var/qmail/binに移動後
# gdb ./qmail-lspawn
GNU gdb 19991004
Copyright 1998 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-redhat-linux"...
(no debugging symbols found)...
(gdb) q
# file ./qmail-lspawn
./qmail-lspawn: ELF 32-bit LSB executable, Intel 80386, version 1,
dynamically linked (uses shared libs), stripped
935さんの指摘どうりnot strippedになってませんでした
conf-ccの初期値は
cc -O2
で、ここを修正すればOKかと思いましたが
ダメ見たいです
MakefileにはMakefileを編集するなconf-*を使えと
コメントされてます
とりあえず、qmail conf-ccで検索してみます おはようございます。出来上がる実行ファイルがnot strippedになる場合とstrippedになる場合の
コンパイラのスイッチの違いがあるのでしょうか-gをつけても、つけなくてもnot strippedになります
$ cat samp.c
#include <stdio.h>
void subfunc();
int main() {
subfunc();
return 1;
}
$ cat sub.c
#include <stdio.h>
int subfunc() {
for (;;) {
printf("%s\n", "SLEEP");
sleep(2);
}
return 1;
}
gcc -O2 -c sub.c
gcc -O2 -c samp.c
gcc -O2 -o samp samp.o sub.o
$ file samp
samp: ELF 32-bit LSB executable, Intel 80386, version 1, dynamically linked (uses shared libs), not stripped
$ gcc -O0 -g -c sub.c
$ gcc -O0 -g -c samp.c
$ gcc -O0 -g -o samp samp.o sub.o
$ file samp
samp: ELF 32-bit LSB executable, Intel 80386, version 1, dynamically linked (uses shared libs), not stripped
簡単なサンプルで実行ファイルを作った場合、上手くいくのですが、
qmailのソースをコンパイルした場合は、上手くいきません
何かアドバイスを頂けるとうれしいです >>938
./loadの中の-sが原因
--strip-allの意味
objdump -ft ファイル名 >>939 さん
ありがとうございました。
conf-ldを
gcc -g -O0
と修正し、make setup checkを実行後
動作確認しました。
objdump -ft ファイル名
を書いてくれた意図は
宿題としてすこし考えさせてください もう1つ聞きたいことがあります
今回ここで質問させていただき、
not stripped / strippedの事とか
サイズを減少させるための--strip-allの事とか
僕は初めて知りました
935さんや939さんは
どうやって学習されたのでしょうか?
学校の先生や先輩から手取り足取り教えてもらえるのでしょうか?
僕の場合は、書籍による独学がメインで
今回の事柄について書かれている本はありませんでした
どうすれば、今回の問題の回答にたどり着く人になれますか? >>941
gccのドキュメントを読む
manpageよりtexInfo
少し古ければ日本語版もあるだろう
本家のよく書かれたドキュメント読むのが結局は近道
特にqmailみたいなANSI Cの基本ライブラリに対する明確な批評があるようなソースを読む場合は
Cやgccを深く知ることがqmailやdjbの哲学を知ることに繋がる
この道はRustにも繋がった道だし
「読んで」ためになるドキュメントと
必要な時に参照するだけしか価値のないドキュメントの見分けはすぐにつくようになる
GNUの主要ソフトウェアのtexInfoは割合いいものが多い
今はO’reillyがいいのだろうけど
乱読すると若い人は財布が気になるはず
賞味期間の短い本を買うのは
objdumpはいちいちgdbを起動しなくても
実行ファイルに目的のシンボルが入っているかどうか確認するため >>926
>(qmailの方が)間違ってることもあるかもしれないが
と簡単に書いたが
見つけたら賞金がもらえるのだ! こどおじなんてどこから感染しないと思うんだけど、月額6000円に値上げするわ。
決算は黒髪にしたの? レス数が900を超えています。1000を超えると表示できなくなるよ。