SMTPサーバ:Postfix
| ここでやること |
|---|
|
■ メール送信サーバであるPostfixをインストールする ■ メール受信サーバであるpopa3dをインストールする |
まずはメールの送信と受信を行うSMTPサーバの設定を行います。(POPサーバはSMTPサーバで受信したメールを取り出すためのプログラムです) ここでの設定はセキュリティを考え、自宅LAN内のパソコンからのメール送信のみ許可しています (つまり自宅以外のパソコンからは使用できません)。だって自宅サーバなんだし、自分以外使いませんから。
あと、多くのプロバイダはスパムメール対策のために自宅サーバの管理者泣かせのOP25B (Outbound Port 25 Blocking:契約しているプロバイダ指定のメールサーバ以外からの送信を遮断)という制御を行っているのでその回避方法も掲載します。
メール転送プログラムは多数ありますが私はPostfixを使用します。(使っている人が多いし、たまたまPostfixに関する参考書があったから)
コマンド:Postfixのインストール
まずはPostfixのインストール
下記の質問をされますので答えていきます
rootへのメールの場所 → NONE
メールネームの設定 → 収得した玄箱のドメイン名
整形の設定(append domain to simple address) → No
受信ドメイン名 → 収得した玄箱のドメイン名, localhost.dyndns.org, local host ←ここではあまり余計な情報を載せない方がいいと思います
※後で設定をやりなおす時は
ファイル編集:/etc/postfix/main.cf
smtpd_banner = $myhostname ESMTP ←外部に余計な情報を出さないように設定
biff = no
append_dot_mydomain = no
myhostname = 収得した玄箱のドメイン名
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = 収得した玄箱のドメイン名, localhost.dyndns.org, localhost
relayhost =
mynetworks = 127.0.0.0/8 192.168.0.0/24
LAN内のパソコンからメールを送信できるように設定。デフォルトのままだと telnetやsshでサーバにログインしたユーザーしか使えません
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
コマンド:Postfix再起動
Postfixを再起動して設定を反映させます
RBL.jp
ファイル編集:/etc/postfix/main.cf
以下の分を追加する
ファイル編集:/etc/postfix/transport
/etc/postfix/transportのファイルを新規作成し、下記の内容を記入します
.docomo.ne.jp :[プロバイダのsmtpサーバアドレス] ←mail.xxx.jpなど
コマンド:Postfixの再起動
下記コマンドで設定を反映させ、transport.dbを作成する
Postfixを再起動させて設定を反映させる
導入されると自宅サーバからの外部へのメール送信が全て遮断されてしまいます (契約しているプロバイダの情報を参照してください)。それに対処するために自宅サーバから一度プロバイダ指定のサーバにアクセスしてから 外部へメールを送信する手法があります。
ファイル編集:/etc/postfix/main.cf
経由するサーバを指定
コマンド:Postfixリロード
設定を反映させる
POPサーバ:popa3d
メール受信サーバであるPOPサーバのインストールと設定を行います。
※他にもimap対応のサーバなど多数ありますのでどれををインストールしても良いです。
コマンド:popa3dのインストール
インストール時に下記の質問に答えます
スタンドアロン設定:yes ←Noならinetdの管理下におかれる
ファイル編集:/etc/shells
/etc/shellsに下記の文字を追加します。これでユーザ登録の際に、シェルを/bin/falseと指定されたユーザは メールログインが出来てメールコマンドは通りますが、一般シェルの操作はできずに余計な操作をされるのを防ぎます
コマンド:メールユーザ追加
まずは基本的なシェルコマンドを使えないユーザを作成します。この名前がメールアドレスの@の前の文字列になります
作成したいメールのパスワードを設定します
もしも、すでに作成されているユーザーのシェル権限を変更するには下記のコマンドを実行します
LAN内から外部へのメールしか使用しないのでOutlookExpress等でのPOPサーバとSMTPサーバアドレスを玄箱のアドレス(例えば192.168.0.10など)に設定します。
上記の設定を行ってもメールが送られてこない場合、もしかしたらエイリアスの設定でメールの受信者が他のユーザーになっている可能性がありますので 下記の設定を確認します。この機能は通常、複数のメールアドレスを1つのユーザーが受信させるために使用します。
コマンド:aliasesの設定
メールアカウント名 : 受信するメールアカウント名 ←必要が無けれは削除します
エイリアスの変更を行ったら下記のコマンドで設定を反映させます。