Sendmail

     

sendmail.cfの作成が出来ずにずーーーーっと悩んでいました。色々なトラブルがあって(というかよくわかんない・・・)じぇんじぇん進みません。進む気配すらありません(笑)。というわけで.cfの作成はとりあえず後回しという逃げの方向で進めます。.cfはデフォルトで/etc/mailにあるsendmail.cfをそのまま使います。

とりあえず動いたというだけのものですからSPAM対策とかはまったく考慮に入れてません。まぁとりあえずメールは飛ぶぞと。でもって中身もココから持ってきただけですね。(Thanks ふうさん) 知識のなさを痛感しました・・・

.cfをいじらないので、やることはすんごく少ないです。まず下記のとおりパーミッションを変えてあげましょう。rootでないと出来ません。

[macosx:~] root# chmod go-w / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue
[macosx:~] root# chown root / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue

Sendmailが自動的に起動するように下記のように/etc/hostconfigを変更します。

[macosx:~] root# cat /etc/hostconfig
HOSTNAME=macosx <ホスト名を入れる。
MAILSERVER=-YES- <YESにする。
で、再起動するか、もしくは下記のコマンドを実行します。

[macosx:~] root# /usr/sbin/sendmail -bd -q1h

これでSendmailが動き出します。メールを飛ばすためには該当ドメインのDNSサーバーのMXレコードにSendmailが動いているホストが登録されていることが条件です。BINDの設定はこちら。

上記のBINDの設定はローカルな環境で動かしたものですので、そこのネットワーク内でした有効ではありません。この状態でほかのドメインにメールを出しても上流のメールサーバーに許可されていないのでメールは届きません。届いちゃったらそのメールサーバーがおかしいです。

ちなみにメールは/var/mail/USERNAME にひとつのファイルとして置かれます。qmailみたいにディレクトリの中にファイルが転がってるわけではないです。

分からない点があれば掲示板に書き込んでみてください。

9415 Hits

戻る