Vine Linux 4.1
Sponsored Link

SMTPサーバー構築2008/08/25

  SMTPサーバーを構築します。デフォルトで入っているPostfixを使い、 メール不正中継防止にSMTP-Authの機能を利用し、送信にも認証が必要なように設定します。

[1] Postfix の設定をします。
# まずは必要なものをインストール

[root@ns root]#
apt-get -y install cyrus-sasl*


[root@ns root]#
vi /usr/lib/sasl2/smtpd.conf


# 以下2行記述

pwcheck_method: saslauthd
mech_list: plain login


[root@ns root]#
vi /etc/postfix/main.cf


# 69行目:行頭の#を削除しホスト名指定

myhostname =
mail.srv.world


# 76行目:行頭の#を削除しドメイン名指定

mydomain =
srv.world


# 92行目:行頭の#を削除

myorigin = $mydomain

# 106行目:行頭の#を削除

inet_interfaces =
all


# 154行目:行頭の#を削除

mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain

# 253行目:行頭の#を削除し自ネットワーク追記

mynetworks = 127.0.0.0/8,
192.168.0.0/24


# 410行目:行頭の#を削除しMaildir形式へ移行

home_mailbox = Maildir/

# 515行目:行頭の#を削除

header_checks = regexp:/etc/postfix/header_checks
# 追記:メールボディチェック

body_checks = regexp:/etc/postfix/body_checks


# 最終行へ追記

message_size_limit = 5242880

mailbox_size_limit = 104857600


# 以下4行SMTP-Auth用(5行目は4行目の続き)

smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain = $myhostname
smtpd_recipient_restrictions = permit_mynetworks, permit_auth_destination, permit_sasl_authenticated, reject


[root@ns root]#
vi /etc/postfix/header_checks


# 以上2行アドレスなしメール拒否

/^From:.*<#.*@.*>/ REJECT
/^Return-Path:.*<#.*@.*>/ REJECT
# ヘッダのReceived行非表示

/^Received:/ IGNORE


[root@ns root]#
vi /etc/postfix/body_checks


# 本文にexample.comが含まれていたら拒否

/^(|[^>].*)example.com/ REJECT


[root@ns root]#
/etc/rc.d/init.d/postfix restart

Postfixを停止中:
[  OK  ]

Postfixを起動中:
[  OK  ]

[root@ns root]#
/etc/rc.d/init.d/saslauthd start

saslauthdを起動中:
[  OK  ]

[root@ns root]#
chkconfig saslauthd on
[2] 名前解決できるようにネームサーバーに別名を登録しておきます。
[root@ns root]#
vi /var/named/srv.world.lan


$TTL 86400
@
IN
SOA
ns.srv.world. root.srv.world. (

200707260
5
;Serial

3600
;Refresh

1800
;Retry

604800
;Expire

86400
;Minimum TTL

)
IN
NS
ns.srv.world.

IN
A
192.168.0.17

IN
MX 10
mail
.srv.world.


ns
IN
A
192.168.0.17


www
IN
CNAME
ns.srv.world.

ftp
IN
CNAME
ns.srv.world.

mail
IN
CNAME
ns.srv.world.


[root@ns root]#
vi /var/named/srv.world.wan


$TTL 86400
@
IN
SOA
ns.srv.world. root.srv.world. (

200707260
5
;Serial

3600
;Refresh

1800
;Retry

604800
;Expire

86400
;Minimum TTL

)
IN
NS
ns.srv.world.

IN
A
172.16.0.82

IN
MX 10
mail
.srv.world.


ns
IN
A
172.16.0.82


www
IN
CNAME
ns.srv.world.

ftp
IN
CNAME
ns.srv.world.

mail
IN
CNAME
ns.srv.world.


[root@ns root]#
rndc reload

server reload successful
関連コンテンツ