10 件のコメントがあります。

スパムブロック機能により、投稿が失敗することがあります。
うまくいかない場合は、一行目だけをまず投稿し、そのあと編集から残りを追記してみてください。

1 - 10 / 10

STARTTLS

From : 悩んでいる人 @ 2006-07-04 09:54:15 編集 引用

はじめまして。Macminiを使いメールサーバーをたてようと奮闘中にこのサイトにたどり着き参考にさせて頂いております。そこで一つ質問なのですが
Ehlo Localhost を実行した時に

250-STARTTLS
250-AUTH LOGIN PLAIN CRAM-MD5
250-AUTH=LOGIN PLAIN CRAM-MD5

の3行が表示されません。なんどやり直しても同じ状況になります。
考えられる理由は何でしょうか。どうぞよろしくお願いいたします。

Re: STARTTLS

From : namahage @ 2006-07-05 22:25:02 編集 引用

どうも悩んでいる人さん、こんにちは。

STARTTLSの件ですね。
実は以前、同じ内容の相談をメールでお受けしたことがありました。
その方も悩んでいる人さんと同じように、

250-STARTTLS
250-AUTH LOGIN PLAIN CRAM-MD5
250-AUTH=LOGIN PLAIN CRAM-MD5

が表示されないと困っておりました。
いろいろと状況をうかがってみたり、わたしも手元のマシンを使ってためしてみたりしたのですが、同じ状況にはならなくて、原因不明のまま、攻める手がなくなっていました。
お二人の方が、同じような状況におられるということですと、なにかわたしのサイトの設定方法にも手落ちがあるのかもしれません。

telnetで接続したときに、上記の3行が出ないというと、まずMacのなかでどんなエラーが出ているのかを確認してみたいところです。

エラーのログを確認するには、ユーティリティフォルダにある「コンソール」を起動させて、表示されるウィンドウの左上の「ログ」と書いてあるアイコンを押します。

すると左側にログファイルの一覧が表示されると思いますので、その中から「mail.log」を探してクリックします。ここにいま接続しようとした際にどういうエラーが起きているのかが記載されているんじゃないかと思います。

書いてあることはなんだか分けのわからないことがほとんどですが、なんとなくここがおかしいという雰囲気は読めてとれると思います。実際のところ、わたしもさっぱりわかっていないのですが、最悪、差し障りのない部分でログの中身を教えていただけたらなにか、出口が見つけるお手伝いができるかもしません。

なんとなくmain.cfやmaster.cfなどのファイルの記述、またはsmtpd_scache.pagやsmtpd_scache.dirあたりに関係がありそうな気がしています。

あーと、いま思いついたことですが、smtpd_scache.pagとsmtpd_scache.dirのアクセス権とオーナー、グループはどうなっていますか?

オーナー:システム(読み書き)
グループ:wheel(読み)
その他:(読み)

になっていますか?

Re: STARTTLS

From : 悩んでいる人 @ 2006-07-07 19:35:00 編集 引用

namahage様
お忙しいところレスいただきましてありがとうございます。
smtpd_scache.pagとsmtpd_scache.dirのアクセス権とオーナー、グループの設定はあっているようです。
ふと思ったのですがmain.cfに追加した記述の中に
smtpd_tls_cert_file=/System/Library/OpenSSL/certs/server.crt
smtpd_tls_key_file=/System/Library/OpenSSL/certs/server.key
とありますが実際には
/System/Library/OpenSSL/certs/
内には何もなく空の状態です。この事が原因になっている事はありますでしょうか?もしありましたらどう対応すればよろしいでしょうか?

大変恐縮ですがよろしくおねがいいたします。

Re: STARTTLS

From : namahage @ 2006-07-18 20:47:30 編集 引用

どうも、返信がなかなかできずにおりました。

/System/Library/OpenSSL/certs/

が空っぽだとどうなるか早速試してみました。
Mac OS X10.4.7のMacminiでやってみたところ、
空っぽの状態でもSTARTTLSに進めてしまいました。
なので、空っぽでもうまく行くような気がします。

ちなみにmastar.cfやmain.cfの編集は何を使っていますか?
miですか?

Re: STARTTLS

From : chitoa @ 2007-12-31 00:26:14 編集 引用

namahageさん、お世話になっています。
新規スレッドを立てるつもりでしたが、既出の話題でしたので、これにRESを付けます。

Ehlo Localhost を実行した時に
250-STARTTLS
250-AUTH LOGIN PLAIN CRAM-MD5
250-AUTH=LOGIN PLAIN CRAM-MD5
の3行が表示されません。

私も同じ現象です。この状態だと、/ect/aliasesの設定を読めません。newaliasesが効かず、
メールは実在するユーザー宛にしか、配信されません。ですから、ここに記載した転送設定は
機能せず、転送設定のアドレスにメールを送ろうとすると、
local recipient tableにない、などといって怒られます。

Mailserv for Leopardを購入しているのですが、このソフトを起動していると
たまたま、問題が解決します。
250-AUTH LOGIN PLAIN CRAM-MD5
250-AUTH=LOGIN PLAIN CRAM-MD5
250-STARTTLS
も確認できるようになります。ただ、このソフトが何をやっているかわからないので、気持ちが悪いです。

実際、pop3もpostfixもstartボタンを押す必要はなく、Mailserve for Leopard自体が起動されていれば
OKです。ただ、OS再起動をすると停止するので、意識的にスタートさせるひつようがあります。
(自動スタートのやり方がおわかりなら、ご教示いただけると幸いです。)

ちなみに、ps aux | grep postfixで見ると、Mailserve for Leopardでpostfixをstartさせているときと、
これを使わずにpostfixを起動しているときとでは、状態が異なります。違うmain.cfを読んでいるのか?
など、ブラックボックス的で、しっくりきません。

何かのヒントになったり、ヒントを頂けたりすると、有り難いです。

Re: STARTTLS

From : namahage @ 2008-01-02 01:10:40 編集 引用

あけましておめでとうございます。

ちょっと返信が遅くなってしまいました。
STARTTLSのこの問題は未だによくわかっていません。
私の周りの環境で再現できているマシンがなくて、ちょっと攻められずにいます。

PostfixEnablerのほかにもいつのまにかMailserv for Leopardというのがあるんですね。
知りませんでした。わずかな時間のうちに次々とすすでいくものなんですねぇ。

PostfixEnablerではPostfixEnablerが/etc/postfix/main.cfの最後にPostfixEnablerで設定した記述類を追記するという仕組みで動いていました。

Mailserv for Leopardを試したことがないため、どういう作業をやっているのかはわからないのですが、Webページの内容からすると同じ作業をやっているような気がします。または/etc/postfixフォルダ内になにかconfigファイルのようなものを作成しているような気もします。とりあえずは、ちょっとmain.cfを覗いてみたいですね。

あと、Mailserv for Leopardの自動起動の仕方ですが、これはシステム環境設定のアカウントパネルで設定できると思います。アカウントパネルを開くと「ログイン項目」という設定がありますので、ここにMailserv for Leopardをドラッグアンドドロップすれば起動はできるようになります。

ただ、私のうっすらした記憶ですが、PostfixEnablerでは一度設定をすれば、毎回起動をしなくても、サーバー起動時にメールサーバーとして動作するようになった思います。あくまで設定を行うだけのツールだと思います。なので、Mailserv for Leopardを毎回起動しなくて、設定の変更が必要なときだけ動かせばよいような気がします。

もし毎回必要となると、起動時の管理者パスワードに対応しないといけなくなる訳ですが、そのときはAppleScriptかなにかで対応する方法が考えられます。

Re: STARTTLS

From : chitoa @ 2008-01-02 12:43:44 編集 引用

あけましておめでとうございます。
年始早々お返事を頂きまして、有難うございます。

STARTTLSのこの問題は未だによくわかっていません。

これが/etc/aliasesの設定が有効になるかならないのか、問題の切り分けに
なることを確認しました。

ちょっとmain.cfを覗いてみたいですね。

DMでお送りしましょうか?

MailservforLeopardの件ですが、申し訳ありません。いろいろ試した結果、直接には
関係ないようです。私の環境では、シャットダウンしたあとに新たに起動すると
postfixが全く起動していない、またはpostfixに関わるqmgrのデーモンだけ起動した
状態になるようです。
(一応、/etc/hostconfigにPOSTFIX=-YES-と書き加えてみたのですが、変化ないようです。)
そのいずれの状態でも、starttlsは確認できないので、このままでは
/etc/aliasesの内容は無効です。

ターミナルから明示的にpostfix stopとし、そしてstartとするとやっと
smtpdやtlsmgrが動き出します。これで正常な状態になります。
この段階でstarttlsが確認できます。

自動起動方法がわかるまでは、なるべくOS停止や再起動をしないようにして
(サーバーだから当然ですが)、どうしてもの時は、postfixを明示的にstopして再度
startすることで、対処することにします。

/usr/local/cutedge/postfix/LaunchDaemons/postfixLauncher
あたりが怪しい気がします。

なお、mailserv4Leopardを自動起動する方法を教えていただいたのですが、
「システム環境設定」のアカウントの中に「ログイン項目」はなく、「ログインオプション」があるだけでした。これは既存のアカウントに対するオプションのようです。

Re: STARTTLS

From : namahage @ 2008-01-03 00:16:54 編集 引用

どうもこんにちは。

自動起動方法がわかるまでは、なるべくOS停止や再起動をしないようにして
(サーバーだから当然ですが)、どうしてもの時は、postfixを明示的にstopして再度
startすることで、対処することにします。

/usr/local/cutedge/postfix/LaunchDaemons/postfixLauncher
あたりが怪しい気がします。

少し状況が見えてきました。
Mac OS Xは起動に関するシステムがバージョンによって変更が行われています。
Linuxなどでは伝統的なxintedや、Pantherから採用になっているStartupItems、Tigerから採用になっているlaunchdがあります。それぞれバージョンによって互換性があるように二つ使えるようになっていたりするようですが、Leopardでは基本的にはlaunchdにしぼられるようです。

といったわけで、とりあえずpostfixが自動起動してくれるようにするためにはlaunchdに起動設定をすませておく必要があります。
postfix用のlaunchd.plistは/System/Library/LaunchDeamons/org.postfix.master.plistに配置されています。OSでデフォルトでloadになっているかもしれませんが、いちおう以下のコマンドで読み込ませることができます。

sudo launchctl load -w /System/Library/LaunchDaemons/org.postfix.master.plist

ただ、今しがたorg.postfix.master.plistの内容をのぞいてみたところ、この内容のままでは、Mac起動時に自動起動するようにはできていないようにみえました。デフォルトでは以下の内容になっています。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.postfix.master</string>
<key>Program</key>
<string>/usr/libexec/postfix/master</string>
<key>ProgramArguments</key>
<array>
<string>master</string>
<string>-e</string>
<string>60</string>
</array>
<key>QueueDirectories</key>
<array>
<string>/var/spool/postfix/maildrop</string>
</array>
</dict>
</plist>

これを以下の手順で編集してみました。

1, /System/Library/LaunchDaemons/からorg.postfix.master.plistをデスクトップにコピー
2, 編集はMac的にはXcode付属のPropaty List Editor、または普通にCotEditorなどのテキストエディタで以下のように編集。編集内容は-eと60の削除と、OnDemandにfalse設定の追記です。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>org.postfix.master</string>
<key>OnDemand</key>
<false/>
<key>Program</key>
<string>/usr/libexec/postfix/master</string>
<key>ProgramArguments</key>
<array>
<string>master</string>
</array>
<key>QueueDirectories</key>
<array>
<string>/var/spool/postfix/maildrop</string>
</array>
</dict>
</plist>

3, 編集保存後、ターミナルから以下のコマンド実行

sudo cp ~/Desktop/org.postfix.master.plist /System/Library/LaunchDaemons/org.postfix.master.plist

4, アクティビティモニタでpostfix関連のプロセスが常駐していることを確認。(tlsmgrやpickup, qmgrなど)

5, MACを再起動しても自動起動、常駐しているかをチェックして終了です。

ただ、Mailserv for Leopardが/usr/local/cutedge/postfix/LaunchDaemons/postfixLauncher以下でどういう動作をしているのかはちょっと気になります。こちらとぶつからないようになっているとよいのですが...。ちなみにこのフォルダの中には何が入っているのですか?

なお、mailserv4Leopardを自動起動する方法を教えていただいたのですが、
「システム環境設定」のアカウントの中に「ログイン項目」はなく、「ログインオプション」があるだけでした。これは既存のアカウントに対するオプションのようです。

ログイン項目の場所ですが、これはアカウントパネルを開いてですね、「管理者」権限を持っているユーザーをクリックします。そうすると、右側に「パスワード」と「ログイン項目」と二つ設定タブがでますので、「ログイン項目」を選んでみてください。

Re: STARTTLS

From : chitoa @ 2008-01-03 11:38:29 編集 引用

こんにちは。

自動起動の方法を教えてくださり、ありがとうございます。
説明がいつも丁寧で、自分ならひとのためにここまでできません。

やりかたはわかったのですが、現状でメールサーバーとして調子よく動いていますので、石橋を叩いて渡りたいと思います。

ただ、Mailserv for Leopardが/usr/local/cutedge/postfix/LaunchDaemons/postfixLauncher以下でどういう動作をしているのかはちょっと気になります。こちらとぶつからないようになっているとよいのですが...。ちなみにこのフォルダの中には何が入っているのですか?

これはファイルであって、フォルダーではないようです。ファイルの中身はバイナリで読めませんでした。

さらに「ログイン項目」について、追加説明を頂き、ありがとうございます。わかりました。
とりあえず、MailServe for Leopardは不要のようですから、代わりにiChatを入れました。
(別話題になりますが、「どこでもMyMac」はとても不安定で、iChatを常駐させておくとうまくいくときが
あるので)

Re: STARTTLS

From : chitoa @ 2008-01-03 21:37:11 編集 引用

こんにちは。

石橋を叩いて渡るつもりでしたが、改良の可能性を提示されると、試してみたい
衝動が抑えられませんでした。^^;)

教えていただいたスクリプトを書き込み
sudo launchctl load -w (以下省略)
を実行すると、その後再起動したり、OS終了後、起動したりしてもどうやらpostfixが
自動起動し、starttlsが確認できる状態になるようです。

起動直後、postfixのデーモンは qmgrとpickupしか動いていないのです。
これでは転送設定は効いていないだろうな、と諦めつつehloで見ると
なんとstarttlsもAUTH LOGIN PLAIN CRAM-MD5も確認できるのです!
そして実際に転送アドレス(実ユーザーがいないアドレス)あてに、メールが
届くのです。更には、ehloのコマンドを叩いたあとに、再度postfixのプロセスを
確認すると、あれ不思議、この段階では
smtp -u
local -t
cleanup
trivial
tlsmgr
smtpd
qmgr
pickup
と、先よりいつのまにか、6つも動いているデーモンが増えているのです。

背景がどういう動作になっていくかの勉強は、とりあえず、先延ばしにします。
とりあえず目的を果たすことができました。

どうもありがとうございました。次は、任意のディレクトリでのカウンター(cgi)の設置、
blogの設置、自動バックアップ、など挑戦していく予定です。これからもどうぞよろしくお願い致します。

Post Your Comment


*は入力必須です。E-Mailは公開されません。