iRedMail サービスを設定して Samba4 AD DC に統合する方法 - パート 11
このチュートリアルでは、メール サービスを提供する iRedMail のメイン デーモン、メール転送に使用される Postfix、アカウントのメールボックスにメールを配信する Dovecot の両方を Samba4 Active Directory ドメイン コントローラーに統合するために変更する方法を学びます。
iRedMail を Samba4 AD DC に統合すると、Samba AD DC を介したユーザー認証、管理、ステータス、AD グループと Roundcube のグローバル LDAP アドレス帳を利用したメール リストの作成といった機能の恩恵を受けることができます。
要件
- Samba4 AD 統合のために iRedMail を CentOS 7 にインストールする
ステップ 1: Sama4 AD 統合用に iRedMail システムを準備する
1. 最初のステップでは、DHCP サーバーによって提供される動的 IP アドレスを使用している場合に備えて、マシンに静的 IP アドレスを割り当てる必要があります。
ifconfig コマンドを実行してマシンのネットワーク インターフェイス名を一覧表示し、正しい NIC に対して nmtui-edit コマンドを発行して、カスタム IP 設定を使用して適切なネットワーク インターフェイスを編集します。
root 権限でnmtui-edit コマンドを実行します。
ifconfig
nmtui-edit eno16777736
2. 編集のためにネットワーク インターフェイスを開いたら、適切な静的 IP 設定を追加します。クエリを実行するために、Samba4 AD DC の DNS サーバー IP アドレスとドメイン名を必ず追加してください。マシンからレルムを削除します。以下のスクリーンショットをガイドとして使用してください。
3. ネットワーク インターフェイスの構成が完了したら、ネットワーク デーモンを再起動して変更を適用し、ドメイン名と samba4 ドメイン コントローラーの FQDN に対して一連の ping コマンドを発行します。
systemctl restart network.service
cat /etc/resolv.conf # verify DNS resolver configuration if the correct DNS servers IPs are queried for domain resolution
ping -c2 tecmint.lan # Ping domain name
ping -c2 adc1 # Ping first AD DC
ping -c2 adc2 # Ping second AD DC
4. 次に、ntpdate パッケージをインストールして samba ドメイン コントローラーと時刻を同期し、以下のコマンドを発行して Samba4 マシンの NTP サーバーにクエリを実行します。
yum install ntpdate
ntpdate -qu tecmint.lan # querry domain NTP servers
ntpdate tecmint.lan # Sync time with the domain
5. ローカル時刻を samba AD タイム サーバーと自動的に同期したい場合があります。この設定を実現するには、crontab -e コマンドを発行して、次の行を追加して、1 時間ごとに実行するスケジュールされたジョブを追加します。
0 */1 * * * /usr/sbin/ntpdate tecmint.lan > /var/log/ntpdate.lan 2>&1
ステップ 2: iRedMail 統合用に Samba4 AD DC を準備する
6. ここで、このチュートリアルで説明されているように、Samba4 Active Directory を管理するために RSAT ツールがインストールされた Windows マシンに移動します。
DNS マネージャーを開き、ドメインの前方参照ゾーンに移動して、新しいAレコード、MXレコード、およびiRedMail システムの IP アドレスを指す PTR レコード。以下のスクリーンショットをガイドとして使用してください。
A レコードを追加します (iRedMail マシンの名前と IP アドレスを適宜置き換えます)。
MX レコードを追加します (子ドメインは空白のままにし、このメール サーバーの優先順位 10 を追加します)。
逆引き参照ゾーンまで展開してPTRレコードを追加します(iRedMailサーバーのIPアドレスを適宜置き換えてください)。これまでドメイン コントローラーの逆引きゾーンを構成していない場合は、次のチュートリアルをお読みください。
- Windows から Samba4 DNS グループ ポリシーを管理する
7. メール サーバーが適切に機能するようにする基本的な DNS レコードを追加したら、iRedMail マシンに移動し、bind-utils パッケージをインストールして、新しく追加されたレコードをクエリします。以下の抜粋に示されているように、メールレコードを送信します。
Samba4 AD DC DNS サーバーは、前の手順で追加された DNS レコードで応答する必要があります。
yum install bind-utils
host tecmint.lan
host mail.tecmint.lan
host 192.168.1.245
Windows マシンからコマンド プロンプトウィンドウを開き、上記のメール サーバー レコードに対して nslookup コマンドを発行します。
8. 最後の前提条件として、Samba4 AD DC に vmail という名前で最小限の権限を持つ新しいユーザー アカウントを作成し、このユーザーに強力なパスワードを選択し、次のことを確認します。このユーザーのパスワードは無期限です。
vmail ユーザー アカウントは、iRedMail サービスによって Samba4 AD DC LDAP データベースにクエリを実行し、電子メール アカウントを取得するために使用されます。
vmail アカウントを作成するには、以下のスクリーンショットに示すように、RSAT ツールがインストールされたレルムに参加している Windows マシンから ADUC グラフィカル ツールを使用するか、次のトピックで説明するようにドメイン コントローラーから samba-tool コマンド ラインを直接使用します。
- Linux コマンドラインから Samba4 Active Directory を管理する
このガイドでは、上記の最初の方法を使用します。
9. iRedMail システムから、以下のコマンドを発行して、vmail ユーザーが Samba4 AD DC LDAP データベースにクエリを実行できるかどうかをテストします。返される結果は、以下のスクリーンショットに示すように、ドメインのオブジェクト エントリの合計数になります。
ldapsearch -x -h tecmint.lan -D '[email ' -W -b 'cn=users,dc=tecmint,dc=lan'
注: Samba4 AD のドメイン名と LDAP ベース DN を置き換えてください ('cn=users,dc=tecmint,dc=lan') ) それに応じて。
ステップ 3: iRedMail サービスを Samba4 AD DC に統合する
10. ここで、Samba4 ドメイン コントローラーにメール アカウントをクエリするために、iRedMail サービス (Postfix、Dovecot、および Roundcube) を改ざんします。
変更される最初のサービスは、MTA エージェントである Postfix です。次のコマンドを発行して、一連の MTA 設定を無効にし、Postfix ローカル ドメインとメールボックス ドメインにドメイン名を追加し、Dovecot エージェントを使用して受信メールをユーザーのメールボックスにローカルに配信します。
postconf -e virtual_alias_maps=' '
postconf -e sender_bcc_maps=' '
postconf -e recipient_bcc_maps= ' '
postconf -e relay_domains=' '
postconf -e relay_recipient_maps=' '
postconf -e sender_dependent_relayhost_maps=' '
postconf -e smtpd_sasl_local_domain='tecmint.lan' #Replace with your own domain
postconf -e virtual_mailbox_domains='tecmint.lan' #Replace with your own domain
postconf -e transport_maps='hash:/etc/postfix/transport'
postconf -e smtpd_sender_login_maps='proxy:ldap:/etc/postfix/ad_sender_login_maps.cf' # Check SMTP senders
postconf -e virtual_mailbox_maps='proxy:ldap:/etc/postfix/ad_virtual_mailbox_maps.cf' # Check local mail accounts
postconf -e virtual_alias_maps='proxy:ldap:/etc/postfix/ad_virtual_group_maps.cf' # Check local mail lists
cp /etc/postfix/transport /etc/postfix/transport.backup # Backup transport conf file
echo "tecmint.lan dovecot" > /etc/postfix/transport # Add your domain with dovecot transport
cat /etc/postfix/transport # Verify transport file
postmap hash:/etc/postfix/transport
11. 次に、お気に入りのテキスト エディタで Postfix /etc/postfix/ad_sender_login_maps.cf
設定ファイルを作成し、以下の設定を追加します。
server_host = tecmint.lan
server_port = 389
version = 3
bind = yes
start_tls = no
bind_dn = [email
bind_pw = ad_vmail_account_password
search_base = dc=tecmint,dc=lan
scope = sub
query_filter = (&(userPrincipalName=%s)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
result_attribute= userPrincipalName
debuglevel = 0
12. 次の構成で /etc/postfix/ad_virtual_mailbox_maps.cf
を作成します。
server_host = tecmint.lan
server_port = 389
version = 3
bind = yes
start_tls = no
bind_dn = [email
bind_pw = ad_vmail_account_password
search_base = dc=tecmint,dc=lan
scope = sub
query_filter = (&(objectclass=person)(userPrincipalName=%s))
result_attribute= userPrincipalName
result_format = %d/%u/Maildir/
debuglevel = 0
13. 以下の構成で /etc/postfix/ad_virtual_group_maps.cf
を作成します。
server_host = tecmint.lan
server_port = 389
version = 3
bind = yes
start_tls = no
bind_dn = [email
bind_pw = ad_vmail_account_password
search_base = dc=tecmint,dc=lan
scope = sub
query_filter = (&(objectClass=group)(mail=%s))
special_result_attribute = member
leaf_result_attribute = mail
result_attribute= userPrincipalName
debuglevel = 0
3 つの構成ファイルすべてで、server_host、bind_dn、bind_pw、search_base の値を置き換えて、独自のドメインのカスタムを反映します。設定。
14. 次に、Postfix のメイン設定ファイルを開き、iRedAPD の check_policy_service と smtpd_end_of_data_restrictions を検索し、コメント #
を追加して無効にします。次の行の前。
nano /etc/postfix/main.cf
次の行をコメント化します。
#check_policy_service inet:127.0.0.1:7777
#smtpd_end_of_data_restrictions = check_policy_service inet:127.0.0.1:7777
15. ここで、次の例に示すように一連のクエリを発行して、既存のドメイン ユーザーとドメイン グループを使用して Postfix の Samba AD へのバインドを確認します。
結果は、次のスクリーンショットに示されているようになります。
postmap -q [email ldap:/etc/postfix/ad_virtual_mailbox_maps.cf
postmap -q [email ldap:/etc/postfix/ad_sender_login_maps.cf
postmap -q [email ldap:/etc/postfix/ad_virtual_group_maps.cf
AD ユーザーとグループのアカウントを適宜置き換えてください。また、使用している AD グループに一部の AD ユーザー メンバーが割り当てられていることを確認してください。
16. 次のステップでは、Samba4 AD DC をクエリするために Dovecot 設定ファイルを変更します。ファイル /etc/dovecot/dovecot-ldap.conf
を編集のために開き、次の行を追加します。
hosts = tecmint.lan:389
ldap_version = 3
auth_bind = yes
dn = [email
dnpass = ad_vmail_password
base = dc=tecmint,dc=lan
scope = subtree
deref = never
user_filter = (&(userPrincipalName=%u)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
pass_filter = (&(userPrincipalName=%u)(objectClass=person)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))
pass_attrs = userPassword=password
default_pass_scheme = CRYPT
user_attrs = =home=/var/vmail/vmail1/%Ld/%Ln/Maildir/,=mail=maildir:/var/vmail/vmail1/%Ld/%Ln/Maildir/
Samba4 AD アカウントのメールボックスは、Linux システムの /var/vmail/vmail1/your_domain.tld/your_domain_user/Maildir/ の場所に保存されます。
17. dovecot のメイン設定ファイルで、pop3 および imap プロトコルが有効になっていることを確認します。ファイル /etc/dovecot/dovecot.conf
を開いて、これらの値が存在するかどうかを確認して、クォータおよび ACL メール プラグインも有効になっているかどうかを確認します。
18. オプションで、各ドメイン ユーザーのストレージの最大 500 MB を超えないようにグローバル ハード クォータを設定する場合は、/etc/dovecot/dovecot に次の行を追加します。 confファイル。
quota_rule = *:storage=500M
19. 最後に、これまでに行ったすべての変更を適用するために、root 権限で以下のコマンドを発行して、Postfix および Dovecot デーモンを再起動してステータスを確認します。
systemctl restart postfix dovecot
systemctl status postfix dovecot
20. IMAP プロトコルを使用してコマンド ラインからメール サーバーの設定をテストするには、以下の例に示すように、telnet または netcat コマンドを使用します。
nc localhost 143
a1 LOGIN ad_user@your_domain.tld ad_user_password
a2 LIST “” “*”
a3 LOGOUT
Samba4 ユーザー アカウントを使用してコマンド ラインから IMAP ログインを実行できる場合、iRedMail サーバーは Active Directory アカウントのメールを送受信できるようになっています。
次のチュートリアルでは、Roundcube Web メールを Samba4 AD DC と統合し、グローバル LDAP アドレス帳を有効にし、Roudcube をカスタマイズし、ブラウザから Roundcube Web インターフェイスにアクセスし、いくつかの不要な iRedMail サービスを無効にする方法について説明します。