私のVPSはUbuntuを実行しています。私のドメインへのメールを受信できるようにしたいと思います。
これを行うためにメールサーバーを簡単に設定するにはどうすればよいですか?
私のVPSはUbuntuを実行しています。私のドメインへのメールを受信できるようにしたいと思います。
これを行うためにメールサーバーを簡単に設定するにはどうすればよいですか?
回答:
これが私たちの生産マシンでメールをセットアップする方法です。必要な基準は次のとおりです。
最初に、最も簡単な解決策と思われるものに対処したいと思います。
sudo tasksel install mail-server
我々はこれをしようとしたときにこれにいくつかの問題が発生しました:まず、それはほとんどの罰金ですDovecotのを、インストールされますが、我々はのための2つの優れていることが宅配便とみなしてきた私たちのニーズ。第二に、素晴らしいPostfixを利用しますが、より強力なMTA / SMTPサーバーであるEximも必要です。3番目に、MySQLをインストールします-私が利用する構成では、構成が1つ少ないため、構成にフラットファイルを使用します。何らかの理由でMySQLがクラッシュした場合にどうなるかを考えてください。それ以外の場合、残りのパッケージは非常に単純で、小規模なメールサービス用に簡単に管理できます(合計で1〜2個の電子メールドメインを考えてください)。
通常の構成のパスから少し外れていますが、管理が容易になります。
当社のメールはすべてに格納されて/var/mail/virtual/<domain>/<user>/mail
、私は使うことになる将来の例については、そうemail@example.com
、fwd@example.com
、foo@example.com
電子メールアドレス、に行くフォワーダ表現するためにexample@gmail.com
、それぞれ、不良アドレスを。上記の例では、になります/var/mail/virtual/example.com/email/mail
。
サーバー上のすべてのドメインのリストも保持していますが/etc/valiases
、それについては後で詳しく説明します。
これは多かれ少なかれセットアップの簡単な部分です。postfix
パッケージをインストールするだけです。
Eximをインストールしapt-get install exim4 exim4-base exim4-config exim4-daemon-heavy
たら、Eximのデフォルト設定を編集して、次の値を置換または追加する必要があります。
domainlist local_domains = @:localhost:dsearch;/etc/valiases:dsearch;/var/mail/virtual
daemon_smtp_ports = smtp : 587 : 465
MAIN_TLS_ENABLE = yes
(これらの行はファイルの異なる部分に表示され、それぞれを適宜置き換えます)
それが完了したら、Exim構成を再構築します。update-exim4.conf
これでEximに必要な変更が完了します
宅配便をインストールしcourier-base
、このインストールする必要がありcourier-authdaemon
、courier-authlib*
、courier-imap*
、courier-pop*
、courieruserinfo
、courier-ssl
正直なところ、標準外の設定はあまりありません。ユーザーデータベースを作成するだけです。
EximとCourierは、ログインまたは受信メールが有効かどうかを確認するためにいくつかの場所をチェックします。Eximは、ドメインがローカルホスト名としてリストされているかどうか、ドメインが属しているかどうか、ドメインがにあるかどうかをチェック/var/mail/virtual
し/etc/valiases
ます。
私は最終的にこのプロセスを合理化するためにいくつかのツールを作成しましたが、新しいユーザーを追加すると次のようになります。
mkdir -p /var/mail/virtual/example.com/email
chown -R mail.mail /var/mail/virtual/example.com/
maildirmake /var/mail/virtual/example.com/email/mail
chown -R mail.mail /var/mail/virtual/example.com/
次に、クーリエuserdbにアドレスを追加します-彼らがログインできるように
userdb email@example.com set uid=8 gid=8 home=/var/mail/virtual/example.com/email mail=/var/mail/virtual/example.com/email/mail
必要に応じて値を置き換えてください。また、 - uid
とgid
必要なメールユーザーの数値ユーザー/グループIDであることを。
userdbpw -md5 | userdb email@example.com set systempw
パスワードの入力を求められますので、アカウントに使用したいパスワードを入力してください。
makeuserdb
最後に、userdbハッシュ/シャドウファイルを生成します。Courierを再起動し、変更が機能するかどうかをテストします。
authtest email@example.com
次のようなものを生成する必要があります
Authentication succeeded.
Authenticated: email@example.com (uid 8, gid 8)
Home Directory: /var/mail/virtual/example.com/email
Maildir: /var/mail/virtual/example.com/email/mail
Quota: (none)
Encrypted Password: $1$LOLCATS$THISWILLBEAHASH.
Cleartext Password: (none)
Options: (none)
「認証に失敗しました:操作は許可されていません」と表示される場合は、代わりに/ etc / courier / authdaemonrcを編集し、authuserdbをauthmodulelist行に追加します。
すべてのテストが確認されたらcourier-authdaemon
、関連するさまざまなサービスを再起動し(、exim4
)、ポート143、25、586、495、110を開き、お気に入りのメールクライアントでアカウントを設定します。
ドメインごとに/etc/valiases
、少なくとも次の行を使用してファイルを作成する必要があります(存在しない場合は作成します)。
*: :fail: No user at this address.
これが言うこと:受信メールがファイルにあるメールアカウントと一致しない場合-メールは失敗し、「このアドレスにユーザーはいません」というメッセージが返ってくるはずです。したがって、送信するすべてのメールはfoo@example.com
失敗として返送されます。
ただし、他の場所で管理したいメールアドレスがいくつかあります。たとえば、example @ gmail.comを作成するに/etc/valiases/example.com
は、ファイルの内容を次のように作成する必要があります。
fwd: example@gmail.com
*: :fail: No user at this address.
そうすれば、fwd @ example.comはサーバー上のどの電子メールアカウントとも一致しませんが、/etc/valiases
ファイル内で一致し、メールはexample@gmail.comに転送されます-ただし、foo @ example.comは引き続き失敗します「このアドレスにユーザーはいません」というメッセージ。
最も簡単な方法は、実行することsudo tasksel install mail-server
です。これにより、正常なデフォルトのメールサーバーが提供されます。あなたがしなければならないことは、いくつかの質問に答えることです。もちろん、必要な場合は後で手動で構成することもできますが、ほとんどの場合は手動で構成する必要はありません。画面上の指示に従うだけで大丈夫です。
ただし、電子メールサービスの管理について読むことをお勧めします。
公式リファレンス:
sudo tasksel --task-packages mail-server
「素晴らしい答え」はありませんが、これらのリンクは役立つことがありますhttps://help.ubuntu.com/community/PostfixBasicSetupHowto#Receiving Mailおよびhttps://help.ubuntu.com/community/Postfix
これを自分でやっただけで、実際には後置が必要になります。私の場合は、imapサーバーも必要で、別のマシンで素敵なguiクライアント(名前は言及しません)を使用できます。私はこれらの文書を使用しました:
Dovecot(imapおよびpop3)
実際には非常にシンプルで、数分で起動して実行され、電子メールを受信しています。これは、すべてが正常に設定されていることを確認するのにも役立ちます。
ああ、あなたはもちろん、(私のために働いた設定に基づいて)以下のようにDNSエントリを正しく設定する必要があります:
name type content
@ A ???.???.??.??
mail A ???.???.??.??
そして
MX Records
Name Priority
mail.mydomain.com. 1
mail2.mydomain.com. 2
メールサーバーの最後で完全に停止することに注意し、必要に応じてIPアドレスとドメイン名を挿入します。