Linuxで仮想ドメイン、Webメール、SpamAssassin、ClamAVを使用して「iRedMail」(フル機能のメールサーバー)をインストールします


HTTPおよびシャドウDNSサービスに続いて、メール(SMTP、POP、IMAP、および関連するすべての暗号化メールプロトコル)は、インターネットで最も使用されているサービスの1つであり、スパムおよびオープンリレーメールサーバーのために最も賢明なサービスの1つでもあります。

このチュートリアルでは、MTA、MDA、MUAソフトウェアを備えたフルメールサーバーをRHEL、CentOS、Scientific LinuxとDebian、Ubuntu、Postfixを備えたLinux Mint、仮想ドメインとMySQLを備えたユーザー、Dovecotに数分でインストールする方法を説明します。 POP3/POP3S、IMAP/IMAPS、Roundcube – Webmail、およびSpamAssassinとClamAVを使用したメールスパムとウイルススキャン。すべて「iRedMail」と呼ばれる単一のソフトウェアパッケージを使用してインストールされます。

iRedMailは、複雑な構成のシステム管理者に多くの時間を割くことができるオープンソースのフル機能のメールサーバーソリューションであり、すべての主要なLinuxディストリビューションをサポートし、次のLinuxパッケージに同梱されています。

  1. Postfix: SMTP service – default MTA.
  2. Dovecot: POP3/POP3S, IMAP/IMAPS, Managesieve service – default MDA.
  3. Apache: Web server.
  4. MySQL/PostgreSQL: Storing application data and/or mail accounts.
  5. OpenLDAP: Storing mail accounts.
  6. Policyd: Postfix policy server.
  7. Amavisd: An interface between Postfix and SpamAssassin, ClamAV. Used for spam and virus scanning.
  8. Roundcube: Webmail – default MUA.
  9. Awstats: Apache and Postfix log analyzer.
  10. Fail2ban: scans log files (e.g. /var/log/maillog) and bans IPs that show malicious system attempts.
  1. CentOS 6.5 minimal installation – CentOS 6.5 Installation Guide
  2. A valid DNS MX record that points to your mail server responsible for your domain name.

また、このチュートリアルはテストと学習の目的でのみ設計されており、有効なMXレコードや有効なDNSドメインのたてがみを使用していません。すべての構成は、MySQLの仮想受信者を使用してローカルで行われます(ローカルドメインユーザー間でのみメールを送受信できます) –ホストファイルから提供されるローカルドメイン名)ただし、システムはインターネットドメインからメールを受信できませんが、プライベートIPアドレススペースにいる場合でも、PostfixMTAを介してそれらのドメインメールサーバーにメールを実際に中継できることに注意してください。 、有効なMXレコードがなく、架空のドメインを使用しているため、実行していることに十分注意してください。

ステップ1:初期構成と静的IPアドレス

1.最初に再起動した後、 root アカウントでログインし、システムが最新であることを確認し、後で使用するために必要ないくつかの便利なパッケージをインストールします。

# yum update && yum upgrade
# yum install nano wget bzip2
# apt-get update && apt-get upgrade
# apt-get install nano wget bzip2

2.このボックスはメールサーバーのように機能するため、静的IPをネットワークインターフェースで構成する必要があります。静的IPを追加するには、/etc/sysconfig/network-scripts/パスにあるNIC構成ファイルを開いて編集し、次の値を追加します。

# nano /etc/sysconfig/network-scripts/ifcfg-eth0

このファイルをテンプレートとして使用し、カスタマイズ値に置き換えます。

DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:0C:29:01:99:E8"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="7345dd1d-f280-4b9b-a760-50208c3ef558"
NAME="eth0"
IPADDR=192.168.1.40
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=8.8.8.8

NICファイルの編集が終了したら、上記と同じ場所からネットワークファイルを開き、サーバーの非修飾ホスト名を HOSTNAME ディレクティブに追加します。

# nano /etc/sysconfig/network-scripts/network
# nano /etc/network/interfaces

次の値を設定に置き換えます。

auto eth0
iface eth0 inet static
  address 192.168.1.40
  netmask 255.255.255.0
  gateway 192.168.1.1
  dns-nameservers 192.168.1.1
  dns-search 8.8.8.8

ネットワークファイルの作成が完了したら、ホスト名を/ etc/hostnameファイルに追加します。

# nano /etc/hostnames

3.次に、 /etc/resolv.conf ファイルを開き、以下のスクリーンショットのようにDNSIPサーバーをシステム全体に追加します。

# nano /etc/resolv.conf

お気に入りのネームサーバーで次のコンテンツを追加します。

search mydomain.lan
nameserver 8.8.8.8
nameserver 8.8.8.8

4.上記のすべての構成が対応するファイルに書き込まれた後、ネットワークサービスを再起動して新しい構成を適用し、 ping およびifconfigコマンドを使用して確認します。

# service network restart	[On RedHat based systems]

# service networking restart	[On Debian based systems]
# ifconfig

5.静的ネットワークが完全に機能するようになったので、/etc/hosts ファイルを編集し、以下の例のように非修飾のFQDNホスト名を追加します。

# nano /etc/hosts
127.0.0.1   centos.mydomain.lan centos localhost localhost.localdomain
192.168.1.40 centos.mydomain.lan centos

ホスト名構成の問題を確認するには、hostnameおよびhostname –fコマンドを実行します。

# hostname
# hostname -f

6.もう1つの便利なパッケージは bash-completion ([ Tab ]キーを使用したコマンドシーケンスのオートコンプリート)です。これは、RedHatベースのシステムのEPELリポジトリによって提供され、ソースを更新します。 。

# rpm –Uvh http://fedora.mirrors.romtelecom.ro/pub/epel/6/i386/epel-release-6-8.noarch.rpm
# yum repolist && yum upgrade

ソースが更新されたら、 bash-completion ユーティリティをインストールします(すべての質問にはいと答えます)。

# yum install bash-completion

Debianベースのシステムのbash-completionパッケージは、次のコマンドを使用して簡単にインストールできます。

# apt-get install bash-completion

7.最後のステップは、root権限を持つシステムユーザーを追加することです。まず、ユーザーを追加し、そのパスワードを設定します。

# adduser your_user
# passwd your_user

ユーザーが追加されたら、/etc/sudoers ファイルを開き、%wheel グループのコメントを解除してから、新しく作成したユーザーをwheelグループに追加します。

# nano /etc/sudoers

ホイールグループラインを検索してコメントを外し、次のようにします。

%wheel                ALL=(ALL)            ALL

ファイルを閉じて、次のコマンドを発行するホイールグループにユーザーを追加します。

# usermod -aG wheel your_user

8. iRedMail ソフトウェアのダウンロードとインストールを開始する前に、システムを再起動してから、新しく作成したユーザーでログインし、すべてが完全に機能していることを確認します。

ステップ2:iRedMailをインストールする

9. iRedMailアーカイブパッケージをダウンロードするには、公式のダウンロードページセクションにアクセスするか、 wget コマンドを使用して最後のバージョン( 0.8.7 の時点)をダウンロードする必要があります。この記事を書く)。

# wget https://bitbucket.org/zhb/iredmail/downloads/iRedMail-0.8.7.tar.bz2

10. iRedMailアーカイブのダウンロードが終了したら、次のコマンドを使用して解凍します。

# tar xvjf iRedMail-0.8.7.tar.bz2

11.次に、新しく抽出したiRedMailディレクトリパスを入力し、 iRedMail.sh スクリプトに実行可能権限をマークして実行します。

# cd iRedMail-0.8.7
# chmod +x iRedMail.sh
# sudo ./iRedMail.sh

12.最初のシステムチェックの後、プログラムは必要なリポジトリの追加を開始し、最初のガイダンスプロンプトで、インストールを続行するか中止するかを尋ねられます。 はいを選択して続行します。

13. iRedMailは、 Maildir 形式を使用して、電子メールを/var/vmail システムパスに保存し、MTAサーバーに追加するドメインごとに個別のディレクトリを作成します。このパスに問題がない場合は、次へを押してサーバー構成を進めます。それ以外の場合は、目的の場所を指定してから次へを押します。

14.次のステップで、 Postfix に接続するメールドメイン名と受信者を保存するための優先データベースを選択します。このチュートリアルはMySQLデータベースに焦点を当てているため、[ Space ]バーを使用して MySQL を選択し、次へに進み、MySQLルートアカウントに強力なパスワードを入力します。

15.次のステップで、最初の仮想ドメイン名を追加します。ここに追加された登録済みドメイン名を所有している場合(システムFQDNではなくドメイン名のみを追加します)。

16.デフォルトでは、iRedAdminは、iRedAdminパネルまたはDovecotプロトコル(デフォルトのRoundcube Webメールインターフェイス、またはSquirrelMail、Rainloop、Microsoft Outlook、Mozilla Thunderbirdなどの他のIMAP/POP MUAソフトウェア)を介してアクセスできるサーバー上でフルパワーの管理ユーザーを作成します。 Evolution、Mutt、Elmなど)。

また、このポストマスター管理アカウントは、メール機能やその他のシステム障害に関連するインシデントや有用な情報を報告するためにシステムによって使用されます。logwatchは通常、ここに統計を送信します。強力なパスワードを選択して、次へに進みます。

17.次のステップで、PostfixのiRedAdmin公式管理パネル、DKIMドメインキーなどの他のメールサーバーコンポーネントを選択します–(最終配信またはさらなるリレーのためにメッセージの信頼性を評価するメッセージヘッダーに署名を追加します)、Roundcubeのデフォルトのウェブメールインターフェイス(計画している場合)他のメール配信エージェントを使用するには、Roundcubeをスキップします)、PhpMyadmin(MySQLコマンドラインに慣れている場合は、PhpMyAdminのインストールもスキップする必要があります)、Awstats(便利なログ統計とアナライザー)、Fail2ban(サーバーをブルートフォース攻撃から保護します)。

18.次の一連の質問では、インストールされているオプションのコンポーネントに応じて、はいで答える必要があります。 抽出ディレクトリにある iRedMail.tips ファイルには、サーバーアプリケーションのユーザー名とパスワード、サーバー構成ファイル、デフォルトURLなどの重要なメールサーバー情報が含まれているため、特に注意してください。情報。

19.インストールが完了したら、システムを再起動し、 iRedmail.tips ファイルを確認して、サーバーのデフォルト設定を確認します。このファイルを、600のアクセス許可を持つ安全なシステムパスに移動する必要があります。 。

20.次のURLでデフォルトのWebアプリケーションにアクセスします。

  1. Roundcube Webmail – https://domain_name or server_IP/mail/
  2. IRedAdmin panel – https://domain_name or server_IP/iredadmin/
  3. PhpMyadmin – https://domain_name or server_IP /phpmyadmin/
  4. Awstats – https://domain_name or server_IP/awstats/awstats.pl?config=web (or ?config=smtp)
  5. Policyd anti-spam plugin – https://domain_name or server_IP/cluebringer/

ステップ3:初期Webメール構成

21. iRedAdmin管理パネルは、PostfixがMySQLバックエンドを介して処理できるメールサーバーの仮想ドメインとアカウントを追加できる基本的なウェブメールインターフェースを提供します。 iRedAdminパネルにログインするには、ブラウザで https:// domain_name/iredadmin/または https:// server_IP/iredadmin/のURLを指定し、次のデフォルトの資格情報を使用します。

  1. Username: [email protected]_domain_name.tld
  2. Password: postmaster password set on #16 point

22.ユーザーを追加するには、追加-> ユーザーに移動し、目的のユーザー名のメールアドレスとパスワードを入力します。ユーザーのメールボックスがクォータで処理できるスペースの量を設定することもできます。また、ユーザーをグローバル管理者としてマークすることで、iRedAdminパネルを介して管理権限を持つユーザーを昇格させることもできます。

23.ユーザーの電子メールの読み取りは、RoundcubeWebインターフェイスによって提供されます。アクセスするには、 https:// domain_name/mail または https:// server_IP/mail/ URLに移動し、メールアカウントの資格情報を [の形式で入力します。メールで保護]

デフォルトの管理メールアカウントのポストマスターにアクセスすると、2つの最初の電子メールが見つかります。そのうちの1つには、サーバーの機密情報が含まれています。ここから、メールを読んだり、作成したり、他のドメインユーザーにメールを送信したりできます。

24.サーバーのポリシー付きスパム対策ポリシーにアクセスするには、 https:// domain_name/cluebringer または https:// server_IP/cluebringer/に移動して次の資格情報を提供します。

  1. User Name: [email protected]
  2. Password: postmaster password

25.メールサーバーの統計を表示するには、 https://mydomain.lan/awstats/awstats.pl/?config u003d smtp または https://mydomain.lan/awstats/awstatsに移動します.pl とし、次の認証情報を使用します。

  1. User Name: [email protected]
  2. Password: postmaster password

26.サーバーの開いている接続と、求心性ソケットを使用したリスニングデーモンの状態を確認する場合は、次のコマンドを発行します。

# netstat -tulpn   ## numerical view
# netstat -tulp    ## semantic view

27.メールトランザクションに関するその他の問題をデバッグしたり、サーバーが稼働していることを確認したりするには、次のコマンドを使用できます。

# tailf /var/log/maillog   ## visualize mail logs in real time
# mailq    		   ##  inspect mail queue
# telnet    		   ## test your server protocols and security form a different location
# nmap                     ## scan your server opened connections from different locations

28.これで、完全なメール環境が展開されました。少なくともこのトピックで欠落しているのは、ローカルSMTP以外の他のインターネットドメインからメールを受信するための MX DNS レコードを持つ有効なドメイン名だけです。サーバーは他のインターネット有効ドメインでメールを中継できますし、中継するので、ISPで違法な問題が発生する可能性があるため、誰にメールを送信するかについて特に注意してください。

下のスクリーンショットから、ローカルの無効なドメインからgoogle.comアカウントの1つにメールを送信し、そのメールがGoogleアカウントで正常に受信されたことがわかります。

インストールして長期間忘れてしまう他のネットワークサービスとは異なり、メールサーバーの管理は、スパム、オープンリレー、メッセージバウンスなどのメールサービス関連の問題のために継続的なハードワークです。

参照リンク

iRedMailホームページ

全著作権所有。 © Linux-Console.net • 2019-2022