GNU/Linux >> Linux の 問題 >  >> Debian

Debian 6(Squeeze)でPostfix、Dovecot、Saslを使用してシンプルでありながら強力なメールサーバーをセットアップする方法

次の記事は、Postfix、Dovecot、SASLを使用してDebianVPSにシンプルなPOP3/ IMAP/SMTPメールサーバーをインストールして構成することを目的としています。

Postfixとは何ですか? これは、古くて成熟したSendmailの代わりになります。 Postfixはまた、非常に高速で、管理が簡単で、安全であることを目指しています。

Dovecotとは何ですか? これは、主にセキュリティを念頭に置いて作成された、*NIXのようなシステム用のオープンソースのIMAPおよびPOP3サーバーです。

SASLとは何ですか? Simple Authentication and Security LayerであるSASLは、プロトコルが認証を実行するための一般的なメカニズムです。

1。)前提条件

–ホスト名/ドメイン名が有効なFQDN(完全修飾ドメイン名)であり、有効なMXDNSレコードがあるかどうかを確認することをお勧めします。

# dig +short MX mydomain.com
10 mydomain.com.

ホスト名「mydomain.com」にはMXレコードがあり、次のようになります。

# dig +short A $(dig +short MX mydomain.com | head -1 | cut -d' ' -f2)
12.34.56.78

MXレコードセットはDebianサーバーのIP(12.34.56.78)に解決されます

2。)システムを更新し、必要なパッケージをインストールします

–先に進む前に、完全に最新のシステムがあることを確認する必要があります。

# apt-get update
# apt-get upgrade
# apt-get dist-upgrade

2.a)postfixをインストールする

# apt-get install postfix

(プロンプトが表示されたら、[インターネットサイト]を選択し、システムメール名として[mydomain.com]を設定します。)

2.b)dovecotをインストールする

# apt-get install dovecot-common dovecot-imapd dovecot-pop3d

2.c)ユーザーの認証用にsaslをインストールします

# apt-get install libsasl2-2 libsasl2-modules sasl2-bin

START =yesを設定してsaslデーモンを有効にします / etc / default / saslauthd内 。 THREADS =3 を設定して、スレッドの数を減らすこともできます。 例)
または勇気がある場合:

# sed -i -e 's/START=no/START=yes/' -e 's/THREADS=5/THREADS=3/' /etc/default/saslauthd

セットアップ/etc/postfix/sasl/smtpd.conf

# echo -e "pwcheck_method: saslauthd\nmech_list: plain login cram-md5 digest-md5" > /etc/postfix/sasl/smtpd.conf

SASLを再起動します

# /etc/init.d/saslauthd restart

3。)受信メールを処理するためのシステムユーザーを作成し、メールボックスにのみアクセスできます。

–仮想メールボックスに使用されるグループを作成する

# groupadd vmail -g 2222

–仮想メールボックスに使用するユーザーを作成する

# useradd vmail -r -g 2222 -u 2222 -d /var/vmail -m -c "mail user"

4.)SSLトランスポートを使用するためのSSL証明書を準備します

–sslを/etc / sample-ssl /

などのディレクトリにコピー/移動します
# mkdir /etc/sample-ssl
# rsync -Waq /path/to/certs/ /etc/sample-ssl/

5。)Postfix設定

–他の作業を行う前に、元の構成ファイルのバックアップがあることを確認してください

# cp /etc/postfix/main.cf{,.orig}

5.a)メインのpostfix設定ファイル(/etc/postfix/main.cf)をセットアップします

–「mydomain.com」をドメイン名に変更し、SSLパスを適切に設定してください

# vim /etc/postfix/main.cf
myhostname=mydomain.com
mydomain=mydomain.com
myorigin=$mydomain
mydestination = localhost
mynetworks = 127.0.0.0/8
inet_interfaces = all
mailbox_size_limit = 0
recipient_delimiter = +
debug_peer_level=2
smtpd_banner=$myhostname ESMTP $mail_name
biff=no
relayhost=
show_user_unknown_table_name=no
append_dot_mydomain = no
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
virtual_mailbox_base=/var/vmail
virtual_mailbox_domains=hash:/etc/postfix/vmail_domains
virtual_mailbox_maps=hash:/etc/postfix/vmail_mailbox
virtual_alias_maps=hash:/etc/postfix/vmail_aliases
virtual_minimum_uid=100
virtual_uid_maps=static:2222
virtual_gid_maps=static:2222
virtual_transport=dovecot
smtpd_tls_cert_file=/etc/sample-ssl/ssl.crt
smtpd_tls_key_file=/etc/sample-ssl/ssl.key
smtpd_tls_CAfile=/etc/ssl/certs/ca-certificates.crt
smtp_tls_CAfile=/etc/ssl/certs/ca-certificates.crt
smtp_use_tls=yes
smtpd_use_tls=yes
smtpd_tls_loglevel=1
smtpd_tls_received_header=yes
tls_random_source=dev:/dev/urandom
smtp_tls_note_starttls_offer=yes
smtpd_tls_session_cache_timeout=3600s
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
queue_directory=/var/spool/postfix
smtpd_sasl_type=dovecot
smtpd_sasl_path=private/auth
smtpd_sasl_auth_enable=yes
broken_sasl_auth_clients=yes
smtpd_sasl_security_options=noanonymous
smtpd_sasl_tls_security_options=$smtpd_sasl_security_options
smtpd_sasl_local_domain=$myhostname
smtpd_sasl_application_name=smtpd
smtpd_helo_required=yes
smtpd_helo_restrictions=reject_invalid_helo_hostname
smtpd_recipient_restrictions=reject_unknown_recipient_domain, reject_unauth_pipelining, permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination

5.b)postfixがメールを受け入れるドメインを含む/ etc / postfix/vmail_domainsを作成します

–形式は2列です。ドメインが左、ステータスが右。右側に何もない場合、ドメインは無効になっています。

# vim /etc/postfix/vmail_domains
mydomain.com      OK
my-otherdomain.com     OK

5.c)受け入れられたメールボックスを含む/ etc / postfix/vmail_mailboxを作成します

# vim /etc/postfix/vmail_mailbox
[email protected] mydomain.com/info
[email protected] mydomain.com/admin
[email protected] my-otherdomain.com/webmaster

5.d)仮想エイリアスを含む/ etc / postfix/vmail_aliasesを作成します

# vim /etc/postfix/vmail_aliases
[email protected]    [email protected]
[email protected]   [email protected]
[email protected] [email protected]

構成ファイルをハッシュする

# postmap /etc/postfix/vmail_domains
# postmap /etc/postfix/vmail_mailbox
# postmap /etc/postfix/vmail_aliases

6。)Dovecotの構成

–他の作業を行う前に、元の構成ファイルのバックアップがあることを確認してください

# cp /etc/dovecot/dovecot.conf{,.orig}

–メインのdovecot構成ファイルを作成します

# vim /etc/dovecot/dovecot.conf
protocols = imap imaps pop3 pop3s
log_timestamp = "%Y-%m-%d %H:%M:%S "
first_valid_uid=2222
last_valid_uid=2222
first_valid_gid=2222
last_valid_gid=2222
mail_privileged_group = vmail
disable_plaintext_auth=yes
auth_executable = /usr/lib/dovecot/dovecot-auth
auth_verbose = yes
mail_location = maildir:/var/vmail/%d/%n/Maildir
ssl_cert_file = /etc/sample-ssl/sample-chained.crt
ssl_key_file = /etc/sample-ssl/sample.key
protocol lda {
  auth_socket_path = /var/run/dovecot/auth-master
  postmaster_address = [email protected]
  mail_plugins = sieve
  log_path =
}
auth default {
    mechanisms = plain login
    passdb passwd-file {
        args = scheme=SHA1 /etc/dovecot/users.conf
    }
    userdb static {
        #args = /etc/dovecot/users.conf
        args = uid=2222 gid=2222 home=/var/vmail/%d/%n allow_all_users=yes
    }
    socket listen {
        master {
            path = /var/run/dovecot/auth-master
            mode = 0600
            user = vmail
            group = vmail
        }
        client {
            path = /var/spool/postfix/private/auth
            mode = 0660
            user = postfix
            group = postfix
        }
    }
}

パスとニーズに一致するように構成を設定してください

–ユーザーのファイルを作成します:

# touch /etc/dovecot/users.conf

–次に、特定のユーザーのパスワードハッシュを生成するには、次のコマンドを使用します。

# dovecotpw -s SHA1

(生成されたパスワードは{SHA1}部分なしでusers.confに追加されます。例:)

# cat /etc/dovecot/users.conf
[email protected]:7mh/MbZGZf7pc2pV6To7WuHJY8E=

7。)権限の設定とインストールの完了

# chgrp vmail /etc/dovecot/dovecot.conf
# chmod g+r /etc/dovecot/dovecot.conf
# chown root:root /etc/dovecot/users.conf
# chmod 600 /etc/dovecot/users.conf

–受信メールをdovecotに配信する

# vim /etc/postfix/master.cf

(以下を追加)

dovecot   unix  -       n       n       -       -       pipe
  flags=DRhu user=vmail:vmail argv=/usr/lib/dovecot/deliver -f ${sender} -d ${recipient}

–その間、次の行のコメントを解除して送信ポートを有効にすることもできます。

submission inet n       -       -       -       -       smtpd

–サービスをリロードする

# /etc/init.d/dovecot restart
# /etc/init.d/postfix restart

もちろん、Debian Optimized VPS Hostingサービスのいずれかを使用している場合は、これを行う必要はありません。その場合は、専門のLinux管理者にインストールを依頼するだけです。 24時間年中無休でご利用いただけます。リクエストはすぐに処理されます。

PS。 この投稿が気に入った場合は、左側のボタンを使用してソーシャルネットワーク上の友達と共有するか、下に返信を残してください。ありがとう。


Debian
  1. Debian11でRsyslogサーバーをセットアップする方法

  2. Debian 6にSpamAssassinをインストールしてセットアップする(Squeeze)

  3. Debian9にSimpleDNS(BIND)サーバーをインストールして設定する方法

  1. Debian 9StretchLinuxでNTPサーバーとクライアントをセットアップする方法

  2. Ubuntu/DebianサーバーにPostfixとDovecotを使用してSpamassassinをインストールする方法

  3. UbuntuまたはDebianにPostfixメールサーバーとDovecotをインストールします

  1. Debian9にVNCをインストールして設定する方法

  2. Debian9でVSFTPDを使用してFTPサーバーをセットアップする方法

  3. UbuntuまたはDebianのpostfixでメール転送を設定する