--- [管理番号 131] (最終更新 1999/02/17 23:58:45) Q. 送信してしまったメールを取り消したいのですが、どんなコマンドを使用 すればよいのでしょうか? A. そのようなコマンドはありません。 --- [管理番号 132] (最終更新 1999/02/17 23:58:45) Q. biffで 日本語がきちんと表示されない。 A. [FreeBSD-users-jp 378]をご覧下さい。 --- [管理番号 154] (最終更新 1999/02/17 23:58:45) Q. 外部にメールを送るのにモデムを使用している場合、メーラで送信した 後、モデムが繋がるまではメールがどこかに保存されていると思います。 この保存されているメールの送信をやめたい場合は、どんなコマンドを使用す れよいのでしょうか? A. そのようなコマンドはありません。;p どうしても削除したいとき、 sendmail を使っている場合には 以下の手順で キューから削除することで 事実上送信をやめることができます。 1. su でスーパーユーザーになる。 2. mailq コマンドを実行し、メールキューの状態を確認する。 $ mailq Mail Queue (1 request) --Q-ID-- --Size-- -----Q-Time----- ------------Sender/Recipient------------ JAA00501 10 Thu Sep 18 09:48 ryuchi 1dummy@hogegoe.foo.co.jp Q-ID がメールのIDです。 発信者と送信先の情報があわせて表示されますから、 これを頼りに削除したいメールの IDを判定する。 3. sendmail の PID を得る。 $ ps ax|grep sendmail 161 ?? Is 0:00.39 sendmail: accepting connections on port 25 (sendmail) 3784 p0 S+ 0:00.02 grep sendmail 4. sendmail を kill する。PID は 3.で得た sendmail の pid. $ kill PID 5. キューからファイル /var/spool/mqueue/[dq]f ( には mailqで 調べた Q-ID を指定。) メールは 2つのファイルに分かれてキューに格納されて いるので df および qf で始まる 2つのファイルを削除する。 $ rm /var/spool/mqueue/[dq]fJAA00501 6. sendmail を再起動する。 $ /usr/sbin/sendmail -bd -q30m --- [管理番号 166] (最終更新 1999/02/17 23:58:45) Q. 付属の mail コマンドで日本語メールを送ると、mail コマンドに与えたテ キストの文字コードがそのまま出て行ってしまいます。色々と不便なのでどん なコードで書いても自動的に JIS になって出て行って欲しいのですが。 A. 出て行く時に nkf で JIS コードに変換するのがよいでしょう。具体的に は次のようにします。 ・まず,/etc/mail.rc に, set sendmail=/usr/local/bin/sendmail.wrap 等と,一行加える. ・上で指定した,/usr/local/bin/sendmail.wrap として, 以下のようなシェルスクリプトを作成し,実行できるようにしておく. ------ ここから ------ #!/bin/sh /usr/local/bin/nkf -j | /usr/sbin/sendmail $* ------ ここまで ------ --- [管理番号 169] (最終更新 1999/02/17 23:58:45) Q. メールアドレスとして、ユーザ名の部分(@の前の部分)に 長い文字列を使いたい。 A. ユーザ名の部分は、FreeBSD2.x以前は8文字まで、3.0以降では 16文字まで使えます。 それより長いものを使うには /etc/aliases で対応させましょう。 詳細は、man aliases。 /etc/aliasesの修正後は newaliasesコマンドを忘れずに。 --- [管理番号 172] (最終更新 1999/02/17 23:58:45) Q. メールサーバ以外のマシンにログインした時は biff や xbiffが反応しな いのですが。 A. biff, xbiff 自体はスプール(新着メールが溜るディレクトリ)を見るだけ ですので メールサーバではないマシンでは 何もメールが届きませんので 反応しないわけです。 xbiffでなんとかするのであれば、 メールサーバにあるメイルスプールディレクトリを NFS で共有する or rsh でメールサーバ側で xbiffを起動する ということになると思います。 また、YOUBIN という comsat を受けてアナウンスしてくれる枠組があります。 FreeBSD の ports にもなっています。ports/mail/youbin です。xbiff の replacement として xyoubin が用意されています。また、YOUBIN に対応した 高機能なクライアントとして xpbiff があります。 --- [管理番号 173] (最終更新 2000/12/07 02:37:24) Q. mailx コマンドはないのでしょうか? A. FreeBSD には mail コマンドしかありません。mailx は SYSTEM V UNIX で 拡張されたものです。 --- [管理番号 185] (最終更新 1999/02/17 23:58:45) Q. sendmailが起動すると "My unqualified host name (hoge) unknown; sleeping for retry" と表示される。 A. sendmailは起動した時に 自機のIPアドレスを調べます。 それにはhostname にドメイン名を補完した名前でIPアドレスを求めようとします。 その際 適合したホスト名がないとこうなります。 [FreeBSD-users-jp 11718] ホスト名からIPアドレスを求めるには /etc/hostsを用いる方法、 NIS(yp)、DNSを利用する の3つの方法があります。 これは各マシンで選ぶことが出来て /etc/host.confで検索する順番を指定で きます。 先程の問題は /etc/host.confのホスト名の検索順を hosts bind と記述し、 /etc/hosts に 自機の IPアドレスと FQDN名(ドメイン名を含む長い名前)を 記述することで回避できます。 --- [管理番号 187] (最終更新 2003/05/17 21:39:23) Q. メールサーバの設定を行うために sendmail.cf や submit.cf を作成し ようと思いますが、書き方がわかりません。 A. sendmail.cf の書式、特に書き換えルールの部分は複雑ですので、いきなり sendmail.cf を作るのは難しいかもしれません。 そこで sendmail に附属の cf という設定ファイル生成ツールを使うとよい でしょう。FreeBSD 附属の sendmail.cf や submit.cf もこれで作られて います。 cf の概要については をどうぞ。 附属の英文ドキュメントが /usr/share/sendmail/cf/README にあります。 cf プロジェクト (仮称) で、和訳作業をしています。 同様の設定ファイル生成ツールとして、WIDE プロジェクトが配布していた CF というツール (cf とは全く別物です) もありました。しかし、sendmail 8.9.X 対応のバージョンを最後に更新されていないため、お勧めできません。 特に sendmail 8.12.0 以降で追加された submit.cf は CF では生成できません。 --- [管理番号 294] (最終更新 1999/02/17 23:58:45) Q. popperを導入したら /var/log/messagesというファイルに May 27 23:12:53 ns popper[2245]: (v2.2) Unable to get canonical name of client, err = 0 というmessageが出るようになりました。 A. pop で接続してくるクライアントのホスト名がIPアドレスから検索できな いようです。/etc/hosts に書くか DNSを使っているならそちらに記述しましょ う。また ログを記録しない方法もあります。 [FreeBSD-users-jp 13416][FreeBSD-users-jp 13419] --- [管理番号 303] (最終更新 2004/04/09 05:05:58) Q. fetchmail が reading message 1 (xxxx bytes) .fetchmail: SMTP connect failed fetchmail: SMTP transaction error while fetching from xxx.xxx.xxx というエラーを表示して、メールを持ってきてくれません。 A. fetchmail は、POP や IMAP で取得してきたメールを、標準では SMTP を使っ て配送しようとします。sendmail.cf を正しく設定した上で、sendmail(8) を daemon モードで動作させてやれば一応問題は解決するのですが、ローカルメー ル配送のためだけに sendmail を動かしておく意味は無いばかりか、セキュリ ティの面でもあまりお薦めできません。 その代り、~/.fetchmailrc に mda 指定を追加する方が良いでしょう。以下に 例を示します。なお、username は各自のローカルユーザ名に置き換えてくだ さい。 1) mda "/usr/libexec/mail.local username" ローカルメーラを指定する方法です。今までは一般的な方法でしたが、 4.2-RELEASE からは、/usr/libexec/mail.local が set-user-id バイナリと してインストールされなくなった影響で、そのままでは使えなくなった方法で す。しかし、他の方法に比べ万一なにか問題があった場合でも、外部への被害 を与える心配が無いという意味では安全です。 2) mda "/usr/sbin/sendmail -oem username" 4.2-RELEASE からは、sendmail を指定することになります。もちろんそれ 以前のリリースでも有効な方法ではあります。 3) mda "/usr/local/bin/procmail -d username" メールの振り分けのために procmail を指定する方法です。上記の二つは単 純にローカルのメールスプールに転送するだけでしたが、独自のスクリプト等 を指定する事で柔軟な処理が行えます。 --- [管理番号 308] (最終更新 1999/02/17 23:58:45) Q. POP対応のMHを使ってメールを読む時に spoolのメールを削除しない設定っ てあるのでしょうか? A. MH の設定ですが、man inc すると、以下のような記述があります。 In all cases, the user's mail drop will be zeroed, unless the `-notruncate' switch is given. ~/.mh_profile に inc: -notruncate と書いてみましょう。 --- [管理番号 337] (最終更新 1999/02/17 23:58:45) Q. 800x600ドットのノートパソコンで Mule を使っているのですが、この解像 度で Mew を利用した場合、サマリーモードの表示領域の行数が少なすぎて不 便です。これを常に10行程度に保つ方法はありますでしょうか? A. ~/.emacs のなかで、下を定義する。 (setq mew-window-configuration '((summary (1 0)) (message (8 31)) (draft (1 0)))) message の後ろが、summary 対 message の比率です。 (message (1 1)) にすれば 1:1 なります。 mew.el の defvar してる変数をみれば他にもいろいろなカスタマイズができ るでしょう。 --- [管理番号 487] (最終更新 1999/02/17 23:58:45) Q. プロバイダのメールサーバ経由でメールを送ろうとしているのですが /etc/sendmail.cf: line xx: unknown control line "mailserver.hoge.or.jp" (xx は任意の数字)と言うエラーがでて sendmailが起動しません。 A. /etc/sendmail.cfの記述に誤りがあると思われます。 プロバイダの メールサーバのホスト名を指定する マクロ 'DR' と サーバのホスト名 の間に空白またはタブなどが入っていませんか? 'DRmailserver.hoge.or.jp' という様に 続けて記述します。 --- [管理番号 497] (最終更新 2002/02/14 00:39:59) Q. 巨大なメールを受け取れません。root 宛にそれに関するエラー報告のメー ルはありません。 A. /var/tmp (FreeBSD 4.1.1-RELEASE以降) や、 /tmp (FreeBSD 4.1-RELEASE以前)が あるファイルシステムの空き容量が少ないときに起こります。mail.local(8) コマンドがこれらのディレクトリにテンポラリファイルを作ろうとして 失敗するためです。 root に報告が行かないのはエラー報告メールも容量制限を 越えるためです。 --- [管理番号 511] (最終更新 1999/02/17 23:58:45) Q. 受信したメールで、行頭の '.' が '..' になってしまうことがあります。 なぜですか。 A. 古いメールソフトには、行頭の '.' が '..' になってしまうものがあります。 この場合、新しい版のものにするか、別のメールソフトにしましょう。古い fetchmail でも発生すると聞いています。 sendmail がメールの本文を送信するとき、本文の終りを示すために、'.' を 使います。本文中に '.' があるとき、本文の終りだと誤認されないために、 '..' へ変換してから送信します。 受信する側は '..' を '.' へ変換して受信 することになっています。この変換がうまくできないソフトだと、メールが途中 で切れたり(聞いたことがないけど可能性があります)、'.' が '..' になってし まいます。ご質問のトラブルは、後者の現象が出たものですね。 なお、fetchmail-4.3.1 (2.2.5-RELEASEのports/packagesではこのバージョンで す)で試したところでは、大丈夫のようです。 --- [管理番号 524] (最終更新 1999/02/17 23:58:45) Q. POP3 Server に正常にアクセスできません。 % telnet POPSERVER pop3 としたところ、次のメッセージが返って来ました。 -ERR System error, can't open temporary file, do you own it? A. 次のような解決策があります。 A1. popper を port/package を使って導入する。 例えば 2.2.5-RELEASE では qpopper-2.4b2 の port/package が用意されています。 A2. /var/mail の permission を変更する。 % su # chmod 1777 /var/mail のようにして working file が作成されるようにします。 A3. あらかじめ working file を作っておく。 user の名前が USER、所属 group が GROUP だとして、 % su # cd /var/mail # touch .USER.pop # chown USER:GROUP .USER.pop # chmod 600 .USER.pop という風にします。 A4. popper用のアカウント``pop''をbinグループに所属させる。 A5. qpopper をつかわないで、imap4 についてる pop server を使う。 A6. mbox 形式に見切りをつけ qmail に(以下略) --- [管理番号 546] (最終更新 1999/02/17 23:58:45) Q. メールを出してしばらくすると、MAILER-DAEMON さんから メールが送られ て来ました。これは一体なんなのでしょうか? A. なんらかの原因で相手にメールを届けられなかった時は MAILER-DAEMON と いう人からメールが返送されてきます。これをエラーメールと言います。この MAILER-DAEMON というのはメール配送プログラムのことです。Subject を見るとだいたいの原因がわかります。メール アドレスは、ユーザー名@ホスト名 となっているとします。 Subject: Returned mail: User unknownこれは、ユーザー名が間違っているか、 そのようなユーザがいなかったことを表しています。ユーザー名の大文字と小 文字は区別されるので、小文字のところは小文字で、大文字のところは大文字 で正確に書いてください。 Subject: Returned mail: Host unknown これは、ホスト名が間違っているかそのようなホスト名が存在しないことを表 しています。 詳しい原因は、返送されてきたメールの中に記録されています。これを良く読 み取り対処しましょう。 また、メーリングリストに送ったときには、そのメーリングリストに参加して いるほとんどの人には届いているのに、だれかに何らかのエラーにより届けら れなかったときも送られてくることがあります。自分が送ったものがメーリン グリストサーバから送られてきているときには、メーリングリストには問題な く届いているので、ほとんどの参加者には届いています。そのためもう一度送 り直す必要はありません。 --- [管理番号 550] (最終更新 1999/02/17 23:58:45) Q. Mew を使っています。あるメーリングリストからメールが来るのですが、 これに返信を書く場合には From: とは違う返信用のアドレスに送る必要があ ります。返信を書くドラフトモードにしたときに、メーリングリストのアドレ ス (From:についているアドレス) も送信先に含まれてしまいます。手動で消 すことができるのですが自動的には付かない様にする方法はありませんか。 A. ~/.emacs ファイルに以下の設定を書き加えます。 (setq mew-mail-address-list (append (and (boundp 'mew-mail-address-list) mew-mail-address-list) '("anyone@jp.hoge.foo.or.jp"))) ここで anyone@jp.hoge.foo.or.jp が自動で加えたくないアドレスです。 詳しいことは Mew のマニュアルを読んでください。 もちろん、手動で To: や Cc: を書けば、そのアドレスにも送信できますので 安心してください。 --- [管理番号 615] (最終更新 1999/02/17 23:58:45) Q. 一台の PC に二つのドメインを収容していますが、各ドメイン宛の同じユー ザ名のメールを別々のメールボックスへ振り分けるにはどうすればいいでしょ うか。 A. 収容している二つドメインを xxxx.or.jp と yyyy.co.jp とし、 webmaster@xxxx.or.jp へのメールを user1 のメールボックスへ、 webmaster@yyyy.co.jp へのメールを user2 のメールボックスへ振り分ける場 合を例に取って説明します。 【環境】(FreeBSD 2.2.1-R + sendmail 8.8.5 + CF 3.5Wpl3で確認) ifconfig(8) の alias を使って二つの IP アドレスを振り、xxxx.or.jp と yyyy.co.jp の二つのドメインを一台の PC に収容。named(8) の MX と sendmail.def の ACCEPT_ADDRS にホスト名を設定して、二つのドメイン宛の メールを受信することができるように設定。adduser(8) で user1 と user2 のアカウントを設定。 【手順】 sendmail.def に追加: USERTABLE_MAPS='xxxx.or.jp=hash:/etc/ut.xxxx \ yyyy.co.jp=hash:/etc/ut.yyyy' (CFのディレクトリで) $ make sendmail.cf (CFのディレクトリで、root権限で) # install -c -o bin -g bin -m 444 sendmail.cf /etc # reboot /etc/ut.xxxxの内容: webmaster:maildrop user1 /etc/ut.yyyyの内容: webmaster:maildrop user2 # makemap hash /etc/ut.xxxx.db < /etc/ut.xxxx # makemap hash /etc/ut.yyyy.db < /etc/ut.yyyy /etc/ut.xxxx や /etc/ut.yyyy の内容を変更しても sendmail を再起動 する必要はなく、makemap(8) するだけで有効になります。 --- [管理番号 616] (最終更新 1999/02/17 23:58:45) Q. 複数のドメイン宛のメールを一台のマシンに集めるにはどうしたらいいで しょうか? A. 一台に集めるだけなら DNS の MX レコードを定義するだけです。 メール配送プログラム (MTA) はメールを配送する時に送りたい相手のメール アドレスを見て、どのマシンに送りつけるべきかを判断しています。その場合 に DNS の MX レコードを検索して送りつけるべきホスト名を得ます。これを 利用して各ドメインの MX レコードに同じホスト名を記述すればメールを一台 のマシンに集めることは簡単にできます。 ただし集まったメールを実際にそのマシンが受け取って Disk に保存するかは 別問題です。MX はメールを送りつけるホスト名の定義だけであって、そのマ シンがメールを受け取るかの設定ではありません。 --- [管理番号 617] (最終更新 1999/02/17 23:58:45) Q. メール配送プログラムが届いたメールを受け取ってくれません。 A. メール配送プログラム (MTA) はメールを配送する時に送りたい相手のメール アドレスを見て、どのマシンに送りつけるべきかを判断しています。その場合 に DNS の MX レコードを検索して送りつけるべきホスト名を得ます。 ただし送りつけられたメールを実際にそのマシンが受け取って Disk に保存す るかは別問題です。MX はメールを送りつけるホスト名の定義だけであって、 そのマシンがメールを受け取るかの設定ではありません。 メールを受け取るかどうかの設定はメール配送プログラム (MTA) の設定に依 存します。代表的な MTA である sendmail(8) の場合は 設定ファイル sendmail.cf の中に記述、新種の MTA である qmail () の場合は control/locals に記述します。 --- [管理番号 672] (最終更新 1999/02/17 23:58:45) Q. Mew を使ってメールの読み書きをしています。Microsoft Outlook を使って いる友人に 添付ファイルを付けてメールを送ったところ 「添付ファイルには ファイル名を付けて送ってくれ。」と言われました。Mew にはファイル名を指定 する機能がないので困ってしまいます。 A. Microsoft Outlook は ファイル名でどんなファイルであるか判断している様 で、添付ファイルに名前がついていないと、適当な名前を付けて拡張子を .dat としてしまう様です。 添付ファイルのファイル名は、該当パートのヘッダに Content-Disposition: attachment; filename=ファイル名 で指定します。Mew では 以下の様に操作します。 1. 通常通り 添付ファイル付きのメールを作成します。 2. 日本語のファイル名を付けたいときは 予め 'D' を使って Content-Description: を作っておきます。 3. c-c c-m で MIMEをプレーンな状態に展開します。 4. 該当パートのヘッダに Content-Disposition: attachment; filename=ファイル名 の行を書き加えます。このとき、日本語のファイル名は MIME エンコード された状態のものにしましょう。 2. の部分で作成した日本語の部分は 'Content-Description:' というヘッダ にありますので、これをコピーす れば OK です。 5. 編集が完了したら c-c c-c でメールを送信します。 なお、Mew 1.93b では Content-Disposition: に対応しており、マルチパート・ エディタ上で 'P' で Content-Disposition: を挿入できます。 --- [管理番号 673] (最終更新 1999/02/17 23:58:45) Q. Mewでメーリングリスト (ML) から届いたメールに返事を書くと、MLと発信 者の両方にメールを送ってしまいます。届いたメールにReply-Toが付いていて も、From:にも送ってしまうようです。どうしたら良いのでしょうか? A. Mew のマニュアルによると、これが Mew のルールです。Mew は、可能性の ある配送範囲を列挙し、不要ならユーザが削る」という単純なルールしかあり ません。配送範囲を推測するのは困難だからです。 それでも配送範囲を限定したいのであれば、~/.emacsに (setq mew-replyto-to-list '("Reply-To:")) を追加すると、Reply-Toで指定されたアドレスだけに返事を送って、From:に は送らなくなります。Mewでは、返事を送るアドレスのデフォルト値を、以下 の変数で指定できます。 mew-replyto-to-list Reply-To:が存在する場合に、To:に書くアドレス (デフォルト: "Reply-To:" "From:") mew-replyto-cc-list Reply-To:が存在する場合に、Cc:に書くアドレス (デフォルト: "To:" "Cc:" "Apparently-To:") mew-noreplyto-to-list Reply-To:が存在しない場合に、To:に書くアドレス (デフォルト: "From:") mew-noreplyto-cc-list Reply-To:が存在しない場合に、Cc:に書くアドレス (デフォルト: "To:" "Cc:" "Apparently-To:")  なお、メールを送る前にそのメールが誰に送られるのかを確認する習慣を付 けておいた方が無難です。 --- [管理番号 683] (最終更新 1999/02/17 23:58:45) Q. sendmail を使っているサイトでメールの転送をしてもらっています。 今般、事情により転送先を変更しようと思って $HOME/.forward に新しい転送 先のアドレスを書いたのですが、どうしても新しい転送先に送ってくれません。 (mail コマンドで新しい転送先のアドレスを指定するとちゃんと配送されます。) A. /etc/aliases ファイルにそのアカウントに対する転送先が既に書かれて いるのだと思います。(これまでたまたま /etc/aliases と $HOME/.forward の転送先が同一だったため気が付かなかったのかもしれません。) /etc/aliases に転送先が書かれている場合は $HOME/.forward は参照されま せん。/etc/aliases ファイルは一般ユーザでも読めるので確認してみましょ う。 定義されているときは、管理者に頼んで /etc/aliases の転送先の定義を書き 換えるか、転送の設定を外してもらいましょう。 --- [管理番号 722] (最終更新 1999/07/02 16:25:57) Q. Mew の Message ウインドウでヘッダーの日本語が文字化けして読めません. Summary ウインドウではちゃんと読めます. なぜでしょうか? A. 特定のバージョンの fetchmail はメール中の MIME をデコードしてしまいま す. Mew の Summary, Message ウィンドウはどちらもヘッダが MIME エンコー ドされていれば, デコードして表示するというのは同じなのですが, MIME エン コードされていない場合の動作が異なります. MIME エンコードされていない場合, Summary ウインドウ : JIS なら文字化けしない. EUC, SJIS 共に文字化け. Message ウインドウ : どの文字コードでも文字化け. という仕様です. このため Mew の Summary ウインドウでは日本語のヘッダが読めても, Message ウィンドウでは文字化けするという状況になります. 対策は, fetchmail が MIME のデコードを行わない様に設定する事です. ~/.fetchmailrc に no mimedecode を加えてください. これで MIME のデコードを行わない様になります. 詳しくは fetchmail(1) を参照してください. なお, この問題はお使いの fetchmail のバージョンが 4.4.1 以上 4.4.7 未満 あるいは 4.7.6 以上の場合に発生します. Mew を使用する時は no mimedecode を必ず設定するべきでしょう。 なお ports/packages の current でのバージョンは 1999年5月16日現在 5.0.0 です. --- [管理番号 740] (最終更新 1999/02/17 23:58:45) Q. MH を用いてメールを送ったときヘッダの From: に自動設定される E-Mail アドレスの マシン名部分を削るには。つまり、 From: foo@machine.my.domain の 'machine' を取りたい。 A. MH は自ホスト名を sendmail の設定とは無関係にリゾルバを用いて取得し、 From: 行に設定を行います。これを変更するには /usr/local/lib/mh/mtstailor に 設定したいホスト名を 「localname: my.domain」の形式で記述します。 これによって自ホスト名の代わりに my.domain が利用されます。 --- [管理番号 743] (最終更新 1999/02/17 23:58:45) Q. $HOME/mbox 内の mail message を /var/mail/ に戻す方法はありますか? mail -f で pre を実行しても Cannot "preserve" in edit mode と怒られます。 A. man を参照するとわかるように pre は hold と同義で、$HOME/mbox 内の メッセージを /var/mail/ に戻すことはできません。MH や im で $HOME/mbox を処理したいのであれば、 MH の場合: inc -file $HOME/mbox im の場合: imget --src=local:$HOME/mbox のようにしてメッセージを取り出すことができます。 --- [管理番号 749] (最終更新 2004/04/09 05:04:57) Q. Sendmail をバージョンアップしたい。インストールするためのパッケージは ありませんか。 A. 特にありませんが、最新の FreeBSD-current, -stable では RELEASE に 付属のバージョンよりも新しい sendmail が付属していることが多いので これのソースを持ってきてコンパイルするのが比較的簡単です。 から入手できます。バージョンアップに際しては以下の Web サイトを 参考にするとよいでしょう。 - Sendmailの公式ページ - コンピュータ緊急対応センター (JPCERT/CC) 「技術メモ - sendmail バージョンアップマニュアル -」 古いバージョンで使用していた設定ファイル sendmail.cf をそのまま使って たいていは問題ないでしょう。ただし、新しく導入された機能にはそれに対応 した設定を行う必要があるので、適宜見直した方がよいでしょう。 --- [管理番号 777] (最終更新 1999/02/17 23:58:45) Q. Microsoft Outlook ユーザの友人から MS-DOS のテキストファイルが添付ファイル の形式で送られてくるのですが、文字が化けてしまい うまく読み込めません。 Outlook ユーザ同士では問題ないと言っています。 A. 私のところに Microsoft Outlook より MS-DOS テキストを添付して 送られて来た メールでは ファイルの中身が MS-DOS テキストファイルで 漢字コードに いわゆる Shift-JIS が使われていました。 このメールのヘッダを見ると Content-Type: text/plain; name="filename.txt" Content-Transfer-Encoding: base64 と書かれていました。つまり添付ファイルの中身は plain なテキストで文字コード は us-ascii であることを宣言しています。( 'charset=' 省略すると us-ascii と なります) しかし 実際にはファイルの中身は Shift-JISの DOS テキストですから、 このままでは正しく読めません。 そこで下記の様な方法にします。 1. muleなどで 普通のファイルとしてメールを読み込み Content-Type: の値を Application/Octet-Stream に書き換え、保存します。 2. 再度 mew で読み込みます。 すると 添付ファイルの部分は バイナリファイルと して見えるはずです。 3. これを適当なファイルとして保管します。 4. 保管したファイルを mule などを使うと 読むことができます。 --- [管理番号 789] (最終更新 1999/02/17 23:58:45) Q. natd + qmail でプライベートネットワーク内のメイルサーバへメールを配 送しようとしています。ところが、プライベートネットワーク内から外へメー ルできるんですが、外から内へはメールできなくて hoge@hoge_domain... Deferred: Operation timed out with pis.toba-cmt.ac.jp. というエラーメールが返ってきます。何がいけないんでしょう。 A. これは MTA が MX を引いた後、natd マシン上で TCP の 25 番で相手と通 信したけれど相手にしてくれるプログラムがいなかった時のメッセージです。 natd では divert ソケットと共に用いてマシンに入ってくるパケットについ ては指定された変換テーブルに従ってプライベートアドレスに変換し、外部へ のパケットについては発信元 IP アドレスを現在のマシンのものにするという 変換を行います。したがって、natd は外部からきたパケットについてはいわ ば関所のような働きをするわけで、このとき通行手形にあたるものが変換テー ブルとなるわけです。通常変換テーブルは -redirect_port や -redirect_address でユーザが指定したものです。ただし、-deny_incoming を no にするとユーザ指定外のパケットも通してしまいますので、普通はこれ を yes にして必要外のパケットは通さないようにし、必要なものだけ -redirect_port や -redirect_address で指定します。 まずあなたの指定した natd.cf ファイルを見てください。 "-deny_incoming yes" にもかかわらず -redirect_port で 25 番ポート (こ れ SMTP の TCP ポート番号ですね :) を指定していないんじゃないですか? deny_incoming yes redirect_port tcp internal_mail_server_address:25 25 を指定してください。また、qmail を御使いですから natd マシン上では qmail コントロールファイル smtprouts の中に .internal_domain_name: :internal_mail_server_name.internal_domain_name を作っておかなければなりません。これは内部から外部へは配送できているの で大丈夫でしょう。 [参考資料: natd(8), qmail-control(5), qmail-remote(8)] --- [管理番号 806] (最終更新 2002/04/11 03:59:26) Q. 自宅メールサーバを経由してメールを出そうとしたところ、 Mail from x.y.z.u refused, see http://dorkslayers.com/orbs/ Mail from x.y.z.u refused, see http://maps.vix.com/rbl/ などというエラーメールが返ってきました。x.y.z.u は自宅メールサーバの IP アドレスです。なにがいけないのでしょう? A. MAPS RBL とか ORBS というのは、spam (無差別広告メールなど、いわゆる 迷惑メール) の中継対策がなされていないメールサーバを集めたデータ ベースです。 あなたのメールサーバは spam の中継に利用されて、このデータベースに 登録されてしまった可能性があります。 多分、あなたがメールを出した宛先のメールサーバは、spam を受け取らない ために、MAPS RBL や ORBS に登録されているメールサーバからのメールを 受け取らない設定になっているのでしょう。 などを参照して、自分のメールサーバの設定を直してから、MAPS RBL と ORBS の 登録を外してもらってください。自分のメールサーバの設定を直さずに登録を外そう としても、すぐ再登録されてしまいますのでご注意を。 --- [管理番号 807] (最終更新 1999/02/17 23:58:45) Q. Windows や Macintosh などのメイラで、FreeBSD のマシンに spool され ているメイルを取得したいのですがどうすればいいですか? A. FreeBSD マシンに POP サーバをインストールしてください。 Qualcomm 社から提供されているフリーの POP3 サーバ、qpopper をインストー ルしてください。ports でのインストールだったら /usr/ports/mail/popper、 packages でのインストールだったら qpopper-2.xx というのを探してくださ い。 inetd.conf の書き換えと再起動 (または inetd に SIGHUP を送る) が必要で す。 注意!: qpopper にはセキュリティホールが発見されています。必ず最新版 (少なくとも 2.52 以降) にバージョンアップしてください。 --- [管理番号 808] (最終更新 1999/02/17 23:58:45) Q. 「POP プロトコルは危ない」と言われたのですが。 A. 「危ない」の意味にはいくつかあります。それぞれある程度対策は可能で す。 1. デフォルトの認証方式、USER/PASS 認証を使うと、ネットワーク上を POP パスワードが暗号化されずにそのまま流れる。 APOP などの他の認証方式を使ってください。 2. FreeBSD で一般的な POP サーバ、qpopper の古いバージョンには root 権 限を盗まれるセキュリティホールがある。 最新版 (少なくとも 2.52 以降) にバージョンアップしてください。 3. POP プロトコルでは mail 本文が暗号化されずに流れる。 sendmail や qmail が使うプロトコル、SMTP でも暗号化はしていないので、 あまり気にしてもしょうがないかもしれません。どうしても暗号化したければ ssh などとの組み合わせ技も可能ですが、一般的でないので説明は省きます。 --- [管理番号 810] (最終更新 1999/02/17 23:58:45) Q. 「POP プロトコルの USER/PASS 認証は危ないから使ってはいけない」と言 われたのですが。 A. POP プロトコルにはいくつかの認証方式がありますが、最も一般的な認証 方式 (USER/PASS) を使うと、ネットワーク上を POP パスワードが暗号化され ずにそのまま流れます。このため、POP パスワードを盗聴者に横取りされる可 能性があります。通常 POP パスワードと unix のログインパスワードは同じ ものが使われるので、非常に危険です。 可能な限り APOP による認証を使ってください。ただし、このためには、 1. サーバが APOP での認証に対応していること (FreeBSD で一般的な qpopper なら問題なし) 2. クライアントが APOP での認証に対応していること (例えば、Windows のメイラ Becky! は大丈夫です) 3. APOP を利用するユーザが、APOP のためのパスワード設定を正しく 済ませていること が必要です。 --- [管理番号 811] (最終更新 1999/02/17 23:58:45) Q. qpopper で APOP の設定をするにはどうしたらいいですか? A. ports/packages でインストールした場合、/usr/local/bin/popauth とい うコマンドが準備されています。 root になって # popauth -init を実行し、データベースを初期化します。これはインストール時に一度だけ実 行し、以後は実行してはいけません。実行すると各ユーザが設定した APOP の パスワードが消えます。 その後、各ユーザで % popauth を実行し、APOP のためのパスワードを登録してください。 qpopper は、「一度 popauth を実行したユーザは、APOP しか使わない」と仮 定しています。このため、一度 popauth を実行したユーザは、以降 USER/PASS による認証は使えません。つまり、APOP に対応していないメイラ を使うことができなくなります。 --- [管理番号 812] (最終更新 1999/02/17 23:58:45) Q. qpopper で USER/PASS 認証を禁止するにはどうしたらいいですか? A. qpopper のコンパイル時に APOP_ONLY を定義すると、APOP 以外の認証方 式を使えなくなります。/usr/ports/mail/popper から ports でインストール する場合、Makefile を眺めると説明が書いてあります。 --- [管理番号 815] (最終更新 1999/02/17 23:58:45) Q. POP プロトコルと POP3 プロトコルって違うんですか? A. 「POP プロトコル」とは、Post Office Protocol の略です。 Post Office Protocol にはいくつかバージョンがあって、現在はRFC1939 で バージョン 3 が定められています。「POP プロトコル」と言った場合、バー ジョンを指定していないだけで、大抵同じもののことを指していると思います。 Post Office Protocol バージョン 3 (POP3) については RFC1939 を参照して ください。 --- [管理番号 826] (最終更新 1999/02/17 23:58:45) Q. Subject: =?iso-2022-jp?B?GyhJUjBYXTheWD1EGyRCQmAycRsoQg==?= と "Subject 欄" に半角カナ文字が MIME encode されていました。これは、す べきでないにしても、べつにいけない事ではないのでしょうか? 要は、MIME encode されていたら、半角カナは使えるのかということです。 A. 「半角カナ文字」が使用できるか否かは、使用する文字コードに「半角カ ナ文字」が含まれるか否かによります。MIME encode されているか否かに よるのではありません。 上記の Subject: 例は * ISO-2022-JP という種類の文字コードを (=?iso-2022-jp) * MIME の B encode という手法を用いて (?B) 表現している事を示しています。ところが、ISO-2022-JP 文字コードには 「半角カナ文字」 (JIS X 0201 カタカナ文字) は含まれていません。よっ て、上記 Subject: 例は自己矛盾を起こしてしまいます。 日本語を表現するための文字コードには、ISO-2022-JP の他に Shift_JIS (シフト JIS) や EUC-JP (日本語 EUC) などがあります。Shift_JIS や EUC-JP には「半角カナ文字」が含まれています。よって、これらの文字コー ドを用いて MIME encode すれば、「規格上は正しい」「半角カナ文字を含 んだ」Subject: を実現できます。 しかしながら、多くの電子メールソフトは Shift_JIS や EUC-JP を用いた MIME encode には対応していません。この場合、たいていは MIME encode された文字列がそのまま表示されることになります。Shift_JIS や EUC-JP を用いると、結局は相手に自分の意図する言葉を伝える事ができずに終る 可能性が大きいのです。 受け取り人全員の電子メールソフトが Shift_JIS や EUC-JP の MIME encode に対応している事が明らかなら、それを使うのもよいでしょう。し かし、それが確認できない場合は、使わないでください。特に、メーリング リストなど公共の場においては、決して使用してはいけません。 結論としては、「半角カナ文字」は諦めて * 「全角カナ文字」(JIS X 0208 カタカナ文字) を * ISO-2022-JP 文字コードで 用いる事を強く勧めます。 --- [管理番号 921] (最終更新 1999/07/02 16:22:46) Q. mnews の MH モードで、pop サーバからメールを取り込むことができませ ん。どうすればよいのでしょうか。 A. POP3 サーバ、あるいは APOP サーバからメールを取得しようとしていま せんか? その場合、「ユーザの入力が不要な inc」が実行できるように .netrc などに設定を加える必要があります。具体的には次のようにします。 1. mnews の設定ファイル ${HOME}/.mnews_setup ファイルに以下を追加します: mh_mode: on msgchk_rule: 2 2. POP3 サーバからメールを取得する場合は、MH の設定ファイル ${HOME}/.mh_profile に以下を追加します: inc: -norpop -noapop -host pop-hostname -user pop-account msgchk: -norpop -noapop -host pop-hostname -user pop-account APOP サーバからなら、次のようにします: inc: -apop -host pop-hostname -user pop-account msgchk: -apop -host pop-hostname -user pop-account ここで pop-hostname には POP3/APOP サーバ名、pop-account には POP3/APOP アカウント名を記述します。 3. MH の inc, msgchk コマンドを問い合わせなしで実行するため、 ${HOME}/.netrc ファイルを作成し、以下の記述を加えます。 machine pop-hostname login pop-account password pop-password pop-hostname には POP3/APOP サーバ名、pop-account には POP3/APOP アカ ウント名、pop-password には POP3/APOP パスワードを記述します。 上記のように、$HOME/.netrc ファイルには生のパスワードが記述さ れるため、その取り扱いには細心の注意を払って下さい。他のユーザーに読ま れないように、ファイルのモードは 600 にしておきます。 % chmod 600 $HOME/.netrc 以上の設定でメールを取り込んで読むことができるようになるでしょう。 なお、mnews 1.21 は環境変数 MH による設定ファイル (.mh_profile) 切り替え には対応していません。対応させるには、たとえばこんな patch を適用して mnews を作り直す必要があります: ----patch start---- --- src/mh.c.dist Fri Sep 4 11:28:45 1998 +++ src/mh.c Fri Sep 4 12:07:05 1998 @@ -416,7 +416,36 @@ if (!mh_mode) { return(0); } - sprintf(init_file, "%s%c%s", home_dir, SLASH_CHAR, MH_INIT_FILE); + { + char *mymh; + + if ((mymh = getenv("MH")) != NULL) { + /* set alternate MH profile path */ + if (*mymh == SLASH_CHAR) { /* absolute path */ + if (PATH_BUFF < (strlen(mymh) + 1)) { + fprintf(stderr, "init_file buffer is not enough: current = %d\n", PATH_BUFF); + exit(1); + } + sprintf(init_file, "%s", mymh); + } else { + char *p; + + if ((p = getcwd(NULL, PATH_BUFF)) == NULL) { + perror("getcwd"); + exit(1); + } + if (PATH_BUFF < (strlen(p) + 1 + strlen(mymh) + 1)) { + fprintf(stderr, "init_file buffer is not enough: current = %d\n", PATH_BUFF); + exit(1); + } + sprintf(init_file, "%s%c%s", p, SLASH_CHAR, mymh); + free(p); + } + } else { + /* set standard MH profile path */ + sprintf(init_file, "%s%c%s", home_dir, SLASH_CHAR, MH_INIT_FILE); + } + } buff1[0] = buff2[0] = '0'; init_field[0].field_buff = &buff1[1]; init_field[1].field_buff = &buff2[1]; ----patch end---- この patch を適用した mnews であれば、 % env MH=/other/place/other_mh_profile mnews args... として、標準とは異なる MH 設定ファイルを利用できます。 なお、/usr/local/share/doc/mnews/ ディレクトリ内に mnews 関連ドキュメ ントがありますので、こちらも随時参照して下さい。 --- [管理番号 1053] (最終更新 2001/08/12 02:51:16) Q. スタンドアロンなマシンで、他の user に mail を出したのですが、戻って 来ました。 (もちろん、user名はあってますし、ドメイン名も間違ってません。) A. 「ドメイン名も間違ってません。」ということは、"username@domainname" 形式で送っていますね? "username" のみで送ったら、たぶん届くことでしょう。 どうしても、「"username@domainname" 形式で送りたい。」と思うなら、 /etc/host.conf を変更しましょう。 [管理番号 185]、[管理番号 344] が参考になるでしょう。 --- [管理番号 1069] (最終更新 2003/05/17 21:39:23) Q. sendmail の aliases に設定したメールアドレス宛にメールを送付した時に、 alias に発信者が含まれていても発信者本人には配信されません。 これを発信者にも配信されるようにすることは出来ますか。 A. sendmail の MeToo オプションが False になっている為、このような挙動に なっています。(デフォルトは False です)。他のオプションと共に sendmail(8) に説明されているので、一読しておきましょう。 sendmail.cf で設定する方法、コマンドラインで指定する方法があります。 その設定で使い続けたい場合は前者の方がよいでしょう。 (1) sendmail.cf で設定する。 (1a) cf を利用する場合は、sendmail.mc に define(`confME_TOO', `True')dnl と記述します。 (1b) 直接 sendmail.cf を編集する場合、 O MeToo=True と記述します。標準の sendmail.cf だと #O MeToo=True とコメントアウトされているので、外せばよいでしょう。 また、 O MeToo=False または短い記述方法を用いて OmFalse となっている場合は、この部分を上記のように変更しましょう。 (2) sendmail のコマンドラインでは sendmail(8) に記載の通り、 -O MeToo=True とオプションを指定出来ます。 --- [管理番号 1126] (最終更新 2001/08/12 02:51:17) Q. Mule 上で mh-rmail を用いてメールを読み込む時、あるいは MH で inc や scan したときに表示されるメール一覧のメール番号の桁数を変える にはどうしたらいいか? A. デフォルトではメール番号は 4 桁ですが、これを例えば 5 桁に変更 したい場合には次のようにします。 (1) まず、 /usr/local/lib/mh/scan.default を ~/Mail/scan.form として コピーします。 (2) ~/Mail/scan.form を次のように編集します。 ---------- ~/Mail/scan.form ------------------------------ %; NOTE: This file is supplied for reference only; it shows the default %; format string (for non-UK sites) which was compiled into "scan". %; See the source file "h/scansbr.h" for details. %5(msg)%<(cur)+%| %>%<{replied}-%?{encrypted}E%| %>\ ---------------------- end of ~/Mail/scan.form------------- 4 行目に注目してください。デフォルトでは %4(msg)%<(cur)+%| %>%<{replied}-%?{encrypted}E%| %>\ となっているはずですが、この 4 を 5 に変更します。 (3) ~/.mh_profile に以下の設定を追加します。 scan: -form scan.form inc: -form scan.form 以上で inc や scan した際に表示されるサマリーのメール番号 の桁数を 5 桁にすることが出来ます。 (4) Mule の mh-rmail を使用する場合には ~/.emacs に次の設定を 追加記述してください。これを行わないと、フォルダを scan した 際に表示が乱れたり、削除や refile 等のコマンドを設定した 時など、取消が出来なくなります。 (setq mh-cmd-note 5 mh-good-msg-regexp "^.....[^D^]" mh-deleted-msg-regexp "^.....D" mh-refiled-msg-regexp "^.....\\^" mh-flagged-scan-msg-regexp "^.....\\D\\|^.....\\^\\|^.....\\+\\|^......%" mh-cur-scan-msg-regexp "^.....\\+") また、MIME エンコードされたヘッダーの日本語を正しく処理させるため には MH をバージョンアップするのが簡単です。 [管理番号 1137] [管理番号 458] --- [管理番号 1129] (最終更新 2001/08/12 02:51:17) Q. sendmail(8) を daemon mode で起動したり、newaliases(1) を したりすると hash map "Alias0": unsafe map file /etc/aliases: No such file or directory hash map "Alias0": unsafe map file /etc/aliases: Permission denied あるいは newaliases: cannot open /etc/mail/aliases: Group writable file などというメッセージが出ます。 ひどい時には、メールが配送されなくなります。 A. /etc/mail/aliases.db や /etc/mail/aliases (4.2-RELEASE 以前は、それぞれ /etc/aliases.db と /etc/aliases) が存在しているか、またファイルの所有権とパーミッションが適正か どうかをチェックしてください。このメッセージは /etc/mail/aliases のパーミッション等が不適切な場合に出ます。 参考までに、パーミッションや所有権の 4.3-RELEASE のデフォルトでの 適正な状態は次の通りです。 -rw-r--r-- 1 root wheel 1410 Dec 19 08:31 aliases -rw-r--r-- 1 root wheel 32768 Apr 17 06:30 aliases.db また / と /etc と /etc/mail のパーミッションについても注意を 払う必要があります。いずれのディレクトリも owner、group は それぞれ root、wheel でパーミッションは 755 でなければなりません。 /etc/mail/aliases.db が存在しない場合には、上記をチェックした上で newaliases(1) コマンドを実行します。これでうまくいかない場合には # touch /etc/mail/aliases.db と空のファイルを作成してから newaliases してください。 なお、このような場合に sendmail(8) はメールをいったんキューに 落し、メールを配送しなくなることもあります。/etc/mail/aliases 等のパーミッションなどを補正してから、sendmail -q とすれば キューにたまったメールが処理されるようになります。 パーミッションやファイルの配置が原因で、NIS マップの初期化や 更新の際に mail.aliases を作成する場合にも同様の問題が生じます。 --- [管理番号 1157] (最終更新 2001/10/14 11:51:14) Q. Mew を使っていますが、メールが文字化けして読めないことがあります。 jless などで Mew を経由せずに直接読むと読めるのですが、どうすれば Mew でも読めるでしょうか。 A. これは、 * Content-Type field で charset が指定されていないのに、本文が us-ascii 以外の文字コードセットになっており、なおかつ Mime-Version field が含まれている。 * Content-Type field で指定された文字コードセットと実際の文字コードセッ トが合っていない。 * Content-Type 行が以下のような形式になっている。 Content-Type: Text/Plain; charset=iso-2022-jp などといった場合に起こります。 対処法については info の Mew[.jis]→Viewing→illegal を見ましょう。 また、 の 「規格違反のメッセージ」の項にも載っています。 最後の例は、mail server が Solarisで、local mailer が /bin/mail の場合 によく起こります。この場合には、mail server の管理者に local mailer (/bin/mail から /usr/lib/mail.local へ) の変更を依頼しましょう。 --- [管理番号 1217] (最終更新 1999/03/10 01:59:32) Q. qpopper の USER/PASS認証で ユーザ として root,toor,daemon,operator,bin,games,news,man,uucp,xten,nobody を指定すると、正しいパスワードを与えているのに以下のように 失敗してしまいます。なぜですか? % telnet news pop3 Trying 192.168.1.1... Connected to foo.bar.org. Escape character is '^]'. +OK QPOP (version 2.53) at foo.bar.org starting. <3185.919126589@foo.bar.org> USER news +OK Password required for news. PASS HogeHogeFuga -ERR Password supplied for "news" is incorrect. +OK Pop server at foo.bar.org signing off. Connection closed by foreign host. A. qpopper には、接続を拒否するユーザリストを与えることができます。 FreeBSD の portsや、packages からインストールした場合、デフォルトでは Makefile で ftp の接続拒否ユーザリストである /etc/ftpusers を指定してます。 O_DEFS= -DSETPROCTITLE -DKEEP_TEMP_DROP -DBSD44_DBM -DBIND43 \ -DBULLDB -DNONAUTHFILE='\"/etc/ftpusers\"' ユーザ news は、/etc/ftpusers にデフォルトで記述されていますので 失敗するわけです。 では、/etc/ftpusers からユーザ news の記述をはずせばいいかというと、 そうではないようです。 ユーザ news は、/etc/passwd にデフォルトで存在するユーザで、UID が 8 です。 恐らくセキュリティ上の理由からだと思われますが、 qpopper は UID が 10以下のユーザの接続を拒否するようです。 実際、認証は、 Access is blocked for UIDs below 10 というエラーで失敗します。 ユーザ news で qpopper に接続する理由が単に news 宛のメイル取得であれば、 /etc/aliases で一般ユーザに振ることで解決できるでしょう。 --- [管理番号 1353] (最終更新 1999/07/02 16:26:34) Q. POP/APOP 認証だけ行ってメールを受信しないようにするにはどういった方法 がありますか。POP before SMTP採用サイト(SPAM対策のために、メールを 送信する直前に POP/APOP 認証が必要なサイト)を使う際に必要なのです。 A. 以下のとおりいくつかの方法があります。 1. fetchmail -c を実行する 2. MH の msgchk を pop/apop で実行する (man msgchk を参照してください) 3. 手動で認証を行う。 % telnet POPSERVER 110 USER USERNAME PASS PASSWORD QUIT 4.認証だけ行うクライアントを作る。 1) シェルスクリプトを使う。 #!/bin/sh ( sleep 1; echo USER USERNAME; sleep 1; echo PASS PASSWORD; sleep 1; echo QUIT ) | telnet POPSERVER 110 2) perl5 と p5-Net を使う。 #!/usr/local/bin/perl use Net::POP3; $pop = Net::POP3->new('POPSERVER'); $pop->user("USERNAME"); $pop->pass("PASSWORD"); $pop->quit(); --- [管理番号 1437] (最終更新 1999/12/23 18:00:31) Q. PPP 接続して オフラインで mqueue にためたメールを送るため % sendmail -q -v を実行したときに配送を拒否されると、直後に再配送を試みても Running AAA02472 (sequence 1 of 1) AAA02472: too young (00:00:06) などと表示され、配送できません。 A. /etc/sendmail.cf に O MinQueueAge=10m という行があるはずです。これは「mqueue に保存されてから再処理 されるまでの最短時間」を表します。 `too young' と言われたのは、ここで設定した時間 (この例では10分) が 経過しないうちに再配送しようとしたからです。これを O MinQueueAge=1m とすれば1分になりますし、コメントアウトすればいつでも再配送できます。 CF をお使いなら、sendmail.def の中の #MIN_QUEUE_AGE='10m' を適切に設定すればよいでしょう。CF-3.7Wpl2 の sendmail-v8.def を 使うと、デフォルトでは O MinQueueAge=10m となるような sendmail.cf が生成されます。 --- [管理番号 1473] (最終更新 1999/12/23 18:00:45) Q. /usr/bin/mail で日本語のメールを読もうとすると、長いメール だけが文字化けします。 A. $HOME/.mailrc で set PAGER=jless となっているか見直しましょう。 環境変数 PAGER で jless が設定されていても、$HOME/.mailrc で set PAGER=more となっているとページャとして more が起動されて しまいます。 短いメールはページャが起動されずに素の iso-2022-jp が出力され、 kterm は iso-2022-jp を正しく表示できるのでうまく表示されますが 長いメール (環境変数 crt よりも行数が多いメール) はページャが 起動されて、ページャが ESC コードを ^[ と出力してしまいます。 --- [管理番号 1655] (最終更新 2000/12/07 02:39:31) Q. popclient の情報はどこにありますか? A. popclient の開発は終了し、既にメンテナンスは行われていません。 既に port/package もなくなっています。 その後継である fetchmail というプログラムがあり、port/package が 用意されているので、こちらを使いましょう。 また、4.2-RELEASE からは、sendmail が一部変更になり、 /usr/libexec/mail.local は set-user-id バイナリとしてインストー ルされなくなりました。その為 popclient はメールスプールを lock する所でエラーとなり、正しく動作しません。 --- [管理番号 1729] (最終更新 2000/12/07 02:34:00) Q. 2000.10.22 ごろ取得した FreeBSD 4.1.1-STABLE を使っていますが、 CF-3.7Wpl2 を使って作成した sendmail.cf ファイルを使うと、local な 宛先の mail について次のようなエラーが発生します。FreeBSD 付属の sendmail.cf ではうまくいくのですが。 Oct 27 19:19:31 host1 sendmail[12196]: e9RAJVC12196: from=user1, size=30, class=0, nrcpts=1, msgid=<200010271019.e9RAJVC12196@host1.my.domain>, relay=user1@localhost Oct 27 19:20:02 host1 mail.local: lockmailbox /var/mail/user2 failed; error code 75 Oct 27 19:20:02 host1 sendmail[12198]: e9RAJVC12196: to=user2, ctladdr=user1 (1000/1000), delay=00:00:31, xdelay=00:00:31, mailer=local, pri=30030, dsn=4.0.0, stat=Deferred A. /usr/libexec/mail.local コマンドの suid bit が設定されなくなったた めです。CURRENT への変更は 2000.10.10, RELENG_4 への変更は 2000.10.19 にされています。 このため、これら日付以降の 5-current, 4-stable を使用する場合に CF を使って sendmail.cf ファイルを作成する場合は、 LOCAL_MAILER_FLAG_ADD='S' を .def ファイルに追加して下さい。 参考: 次の記事から続くスレッド --- [管理番号 2229] (最終更新 2002/08/24 06:22:40) Q. FreeBSD 4.6-RELEASE で /stand/sysinstall や rc.conf で sendmail_enable="NO" としているにもかかわらず、sendmail が デーモンとして起動されます A. sendmail が 8.12.x に変更されたためです。 sendmail では、その機能実装のために root の setuid が必要ですが、sendmail 8.12.x ではセキュリティ強化 のために MSP (Mail Submission Program) を root の setuid から切り離して独立させました。 このために sendmail 8.12.x では MSP もデーモンモード で稼働させる必要があります。したがってセキュリティの 確保を目的として sendmail をデーモンモードで起動させ ないつもりで sendmail_enable="NO" と設定しても、MSP としての sendmail がデーモンモードで起動します。この MSP として起動されている sendmail デーモンには、従来 指摘されてきた脅威の可能性はありません。 qmail や postfix のような sendmail 以外の MTA を使って いる場合や、その他の方法で MSP を起動する場合などで rc.conf で MSP としての sendmail の起動も不要な場合には、 rc.conf に sendmail_enable="NONE" ("NO" ではないことに 注意)と設定します。 参考: [FreeBSD-users-jp 68867] から始まるスレッド