lxd-email-serverとは

OpenSMTPD、Dovecot、およびRoundcubeを使用してSMTP、IMAP、およびWebMail用のLXDコンテナを作成し、DKIMProxyで送信メッセージに署名し、acme.shでWebメールサーバとSMTPサーバの両方にLetsEncrypt証明書を作成して維持します。

このスクリプトは、独自のメールサーバを管理したい技術者向けです。公開IPv4アドレスのVPSと、もちろん登録されたドメインが必要です。ドメインのDNSエントリにアクセスできる必要があり、VPSのIPアドレスにリバースDNSが設定されていることを強く推奨します。

build_server.shスクリプトは、DNSの設定を確認した後、コンテナを作成し、ポート25、587、80、443をコンテナにNATするようネットワークを設定する。

コンテナ自体には、OpenSMTPD、DKIMProxy、Dovecot、acme.sh、Apache、Roundcubeがインストールされており、これらは自動的にメールの送受信ができるように設定され、受信メールはRoundcubeを使ってHTTPSでアクセスできるようになります。

スクリプトは、SPFやDKIMレコードなどの必要なDNSエントリを生成しますが、通常はドメインレジストラアカウントで管理されているDNSゾーンファイルにこれらを手動で入力する必要があります。

必要条件

Debian StretchまたはBusterがインストールされた、パブリックIPアドレスを持つVPSが必要です。新しいVPSにLXDをインストールするには、rootで以下を実行します。

apt-get update
apt-get dist-upgrade
apt-get install sudo

次に、sudoグループに入っていることを確認し(例:root@vps:~# adduser kevin sudo)、通常のユーザーとして以下を実行します。-

sudo apt-get install snapd
sudo snap install lxd
sudo adduser <user> lxd
sudo lxd init

あなたのドメインにDNSのAレコードがあることを確認する必要があります。www、webmail、mailのホストはすべてあなたのIPアドレスを指しているはずです。逆引きDNSは、あなたのIPアドレスがあなたのメールホストに戻って解決するように構成されている必要があります(例:1.2.3.4はmail.example.comに解決する)。

インストール方法

このリポジトリをクローンし、lxd-email-serverをcdして、./build_server.shを実行します。このプロセスは10分ほどで完了するはずです。

インストール中、スクリプトはあなたのドメインのゾーンに追加する必要があるDNSレコードを出力します。これらは参照用にコンテナのファイルシステムにも書き込まれ、DNS_example.com.txt(あなたのドメインが何であれ)という名前になります。これらの値は、ドメインレジストラのWebインターフェイスからDNSを設定する際に参照用として使用できます。

コンテナ上でシェル(デフォルトの設定ファイルではmymailと呼ばれています)を取得する必要がある場合は、以下を使用します。- ß

lxc exec mymail bash

まだできていないこと

外部のIMAPポートが開いておらず、SMTPのユーザー名/パスワード認証を設定していないため、外部からのメール送受信(例:携帯電話からのアクセス)ができません。もしこれらが必要なら、今のところ自分で設定する必要があります。

一般的に便利な追加機能についてのプルリクエストは大歓迎です。

参考文献

以下のソースを参照およびテストに使用しました。

このスクリプトの背景と参考文献については、私のWordpressブログの記事を参照してください。

https://www.susa.net/wordpress/2019/08/lxd-email-smtp-imap-webmail-with-opensmtpd-dovecot-and-roundcube/

代替品

mail-in-a-boxプロジェクトはターンキーソリューションで、成熟しており、技術者でないユーザ向けによく文書化されているように見受けられます。一方、このlxd-email-serverプロジェクトは、自分で設定できるけれども、何らかの理由で設定しない人のための出発点として意図されています。

ソフトウェア情報

本家サイト https://github.com/Kevin-Sangeelee/lxd-email-server
バージョン 16 Dec 2019
ライセンス GPL-2.0 License
日本語対応 -
プラットフォーム サーバ:Linux
主要環境 -
カテゴリ システムツール/Linux
オススメ度 ★★★★☆
コメント なし
更新日 2022-04-29