質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Dovecot

Dovecotとは、POPやIMAPサーバーを提供するMDA(メール配送エージェント)の一つです。

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Postfix

Postfixは、電子メールサーバソフトウェアで、 メールを配送するシステムMTAの一種です。

Q&A

解決済

1回答

3448閲覧

CentOS7.9,postfix,dovecot,mysql(MariaDB)環境にてpostfixadminの「仮想ユーザーメールシステム」の事例が正しく動作しません。

Hal.

総合スコア4

Dovecot

Dovecotとは、POPやIMAPサーバーを提供するMDA(メール配送エージェント)の一つです。

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

MySQL

MySQL(マイエスキューエル)は、TCX DataKonsultAB社などが開発するRDBMS(リレーショナルデータベースの管理システム)です。世界で最も人気の高いシステムで、オープンソースで開発されています。MySQLデータベースサーバは、高速性と信頼性があり、Linux、UNIX、Windowsなどの複数のプラットフォームで動作することができます。

Postfix

Postfixは、電子メールサーバソフトウェアで、 メールを配送するシステムMTAの一種です。

0グッド

2クリップ

投稿2021/01/20 09:59

編集2021/01/28 08:51

初めて投稿させて戴くHal.と申します。

https://wiki.archlinux.jp/index.php/%E4%BB%AE%E6%83%B3%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%83%A1%E3%83%BC%E3%83%AB%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0

を参照し、CentOS7.9(x64)にて、postfix/docecot/mysql(MariaDB)の環境にpostfixadminを導入しようと2w程度四苦八苦しててるのですが出口が見えません。

現在、postfix,dovecotのみの環境において、ローカルユーザのe-mailの送受信等は問題無く実行出来ております。
また、postfixadmin(最新v3.3.3)単体での導入に関してもpostfixadminとmysql(MariaDB)間の動作挙動に関しては問題無く見受けられ、postfixadminでバーチャルドメイン環境に移行させようとすると、ローカルユーザ・バーチャルドメインユーザ共にメールの送受信が出来なくなるという状況が発生して困り果てております。
バーチャルドメインと言っても実際には国際ドメインを発行済みで、固定IP1の環境ですが、Web(httpd)に関してはこれらの発行済みドメインで別々のトップページが閲覧出来る状況にはなっています。

archlinux.jpの議論欄にて「テラテイル」と「スタックオーバーフロー」という場があることをご教示戴き、質問をさせて頂く次第です。どなたか知見のお有りになる方からのアドバイスをいただきたく、何卒ご教示の程よろしくお願いいたします。

以下、archwikiへの投稿文です。
-----

/* 「仮想ユーザーメールシステム」の事例が正しく動作しません。 */

== 「仮想ユーザーメールシステム」の事例が正しく動作しません。 ==

先日より「仮想ユーザーメールシステム」を参照させて戴いております。

CentOS7(x64)にてpostfix&dovecotの状況にてローカルサーバにおいてはインターネットとの送受信が正常に出来ており、
httpd(apache2)やdns(named-chroot)でヴァーチャルドメインの設定も完了しており、Webに関してはヴァーチャルドメインでのURLアクセスでも、正しくヴァーチャルドメイン側のコンテンツにたどり着ける状況です。

その環境下にて、postfixadminの導入に苦戦しております。
少なくとも、2021/01/18時点の現行版を参照しながら必要な部分をアレンジして自サーバに導入すると、ローカルアカウントもヴァーチャルアカウントも全て送受信共にエラーとなってしまいます。
既に数日格闘しているので、即時復旧用に/etc/dovecot/と/etc/postfix/の2つのディレクトリに関しては、/etc/original_backup/配下に完全コピーを逃がしてあり、設定変更後にNGな状況になってもスグに元の環境に戻せるようにして実験しています。

まず、想定されているvmail/配下の構造ですが、こちらでは/home/vmail/配下を配信用ワークディレクトリとして設定しています。
しかし、こちらの事例こ基づいて実行すると、仮想ドメイン「hoge.jp」「foo.com」に関して、postfixadminの「ようこそメール」を受信しようとすると下記のようなディレクトリ実構造が出来上がり、sqlでの問い合わせと違うとエラーとなってしまいます。尚、デバッグの為、各モジュール間の認証はPLAINにしているつもりです。

<変更後の実際の構造>
/home/vmail/maindomain.com/main_account1_no_domainname/{cur,new,tmp}
/home/vmail/hoge.jp/user_account1_no_domainname/{cur,new,tmp}
/home/vmail/foo.com/user_account2_no_domainname/{cur,new,tmp}

postfixadmin側の設定は合っているようで、設定切り替え後、#systemctl restart postfix(dovecot)を行うと、
ローカルからのsmtp-auth送信は出来ますが、受信側に関しては/home/main_account1_no_domainname/MailDir/配下な配信されていたメールが、
<変更後の実際の構造>である
/home/vmail/maindomain.com/main_account1_no_domainname/new/
配下に新着メールが溜まり続ける状況になります。
この動作挙動自体は問題無いと思うのですが、実際にメーラ(Seamonkey≒Thunderbird)で受信しようとすると、エラーとなりメールログが下記のようになります。

******************************

Jan 17 15:43:48 maindomain dovecot: auth: Debug: Module loaded: /usr/lib64/dovecot/auth/libdriver_mysql.so Jan 17 15:43:48 maindomain dovecot: auth: Debug: Module loaded: /usr/lib64/dovecot/auth/libdriver_sqlite.so Jan 17 15:43:48 maindomain dovecot: auth: Debug: Read auth token secret from /var/run/dovecot/auth-token-secret.dat Jan 17 15:43:48 maindomain dovecot: auth: Debug: auth client connected (pid=16268) Jan 17 15:43:48 maindomain dovecot: auth: Debug: client in: AUTH#0111#011PLAIN#011service=pop3#011session=iWiC7RK5ODbAqAAz#011lip=192.168.0.5#011rip=192.168.0.51#011lport=110#011rport=13880 Jan 17 15:43:48 maindomain dovecot: auth: Debug: client passdb out: CONT#0111 Jan 17 15:43:48 maindomain dovecot: auth: Debug: client in: CONT<hidden> Jan 17 15:43:48 maindomain dovecot: auth-worker(16270): Debug: Loading modules from directory: /usr/lib64/dovecot/auth Jan 17 15:43:48 maindomain dovecot: auth-worker(16270): Debug: Module loaded: /usr/lib64/dovecot/auth/lib20_auth_var_expand_crypt.so Jan 17 15:43:48 maindomain dovecot: auth-worker(16270): Debug: Module loaded: /usr/lib64/dovecot/auth/libdriver_mysql.so Jan 17 15:43:48 maindomain dovecot: auth-worker(16270): Debug: Module loaded: /usr/lib64/dovecot/auth/libdriver_sqlite.so Jan 17 15:43:48 maindomain dovecot: auth-worker(16270): Debug: sql(main_account1_no_domainname,192.168.0.51,<iWiC7RK5ODbAqAAz>): query: SELECT username as user, password, '/home/vmail//main_account1_no_domainname' as userdb_home, 'maildir:/home/vmail//main_account1_no_domainname' as userdb_mail, 5000 as userdb_uid, 5000 as userdb_gid FROM mailbox WHERE username = 'main_account1_no_domainname' AND active = '1' Jan 17 15:43:48 maindomain dovecot: auth-worker(16270): sql(main_account1_no_domainname,192.168.0.51,<iWiC7RK5ODbAqAAz>): unknown user Jan 17 15:43:50 maindomain dovecot: auth: Debug: client passdb out: FAIL#0111#011user=main_account1_no_domainname Jan 17 15:43:52 maindomain dovecot: pop3-login: Disconnected (auth failed, 1 attempts in 4 secs): user=<main_account1_no_domainname>, method=PLAIN, rip=192.168.0.51, lip=192.168.0.5, session=<iWiC7RK5ODbAqAAz>

******************************

特に気になる点が「'maildir:/home/vmail//main_account1_no_domainname'」の部分で「vmail」の後に「//」と二重スラッシュが登場している点、
及び、本来は「/home/vmail/maindomain.com/main_account1_no_domainname/」と「/maindomain.com/」の配下に「main_account1_no_domainname」が有るにもかかわらず、
ログでは「/home/vmail//」とドメインネームが記載されていない点です。

sql文の部分を、実験的に「%d:%n:%u:/123」といった形にして試してみたところ、%nと%uの値が同じ、かつ%dにはドメイン名が含まれていないため、<変更後の実際の構造>に合致したディレクトリ名へのクエリが生成されていないように見受けられます。

*****

Jan 18 15:23:00 maindomain dovecot: auth-worker(16429): Debug: sql(main_account1_no_domainname,192.168.0.51,&lt;b/zywCa57YrAqAAz>): query: SELECT username as user, password, '/home/vmail//main_account1_no_domainname:main_account1_no_domainname:/123' as userdb_home, 'maildir:/home/vmail//main_account1_no_domainname:main_account1_no_domainname:/123' as userdb_mail, 5000 as userdb_uid, 5000 as userdb_gid FROM mailbox WHERE username = 'main_account1_no_domainname' AND active = '1' Jan 18 15:23:00 maindomain dovecot: auth-worker(16429): sql(main_account1_no_domainname,192.168.0.51,&lt;b/zywCa57YrAqAAz>): unknown user

*****

私的に力量と知見が乏しく、どこに誤りがあってこのような事態に陥っているのかが解りません。
どなたか切り分けが出来る方に、ご教示願えればとお願いする次第です。

---
2021/01/28、追記。

そもそも論になってしまうかも知れませんが、SMTP-AUTHに関してport 25/587等、WinPCメールクライアント(Seamonkey)での確認以前に、ローカルコンソール上のtelnetでの確認が不十分であったと反省しております。

また、この点で切り分けていくと、postfixadminを導入する前段階として、sasl2に関する設定とpostfixのmail.cfの設定で最小限必要な要件も、正しく満たされていなかったらしく、telnetで接続確認をするとエラーとなる状況でした。

さらに、/etc/sasl2/smtpd.confの「pwcheck_method:」を、従来は「saslauthd」であった設定を「pwcheck_method: auxprop」に変更した場合(saslauthdのsmtpd.confを変更した場合)、これを確かめる際に必要なパッケージのリスタートは「saslauthd」のみで無く、「postfix」の2パッケージを共にリスタートさせることが必須だと学びましたた。

この前提において、postfixadminの前段階としてmysqlのデータベースパスワードでは無く、sasldb2をauth-dbとして利用して、telnet接続での確認をクリアする為に必要な部分として、現時点で自己理解している(正しいのかなぁ?)設定状況は下記の通りです。

/etc/postfix/mail.cf

smtpd_etrn_restrictions = permit_mynetworks, reject_invalid_hostname smtpd_sasl_auth_enable = yes smtpd_sasl_type = dovecot smtpd_sasl_path = private/auth smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = $myhostname smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination smtpd_recipient_restrictions = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination broken_sasl_auth_clients = yes

/etc/sasl2/smtpd.conf

#pwcheck_method: saslauthd pwcheck_method: auxprop mech_list: plain login #auxprop_plugin: sql auxprop_plugin: sasldb allowanonymouslogin: no allowplaintext: true mech_list: PLAIN LOGIN CRAM-MD5 DIGEST-MD5

この設定状況で、
#systemctl restart postfix
#systemctl status postfix
#systemctl restart saslauthd
#systemctl status saslauthd
にてリスタートと正常起動の確認、及びtelnetでの接続確認などを行い、WinPCクライアントからport25/587それぞれに対するSMTP-AUTH送信、及びpop受信が従来通りできるところまで確認いたしました。

この先にdovecot,postfixをmysql対応とし、postfixでのMTA受信がvmailアカウントへ転送され、postfixadminで作成したドメインやアカウント対して正しい挙動が得られるかを確認していきたいと思います。

ここ数日SMTP-AUTH回り及びpostfixadminに関してインターネットコンテンツを頼りに自己勉強をしておったのですが、その間において、
postfixadmin関連に不具合が残存している事も解り、片言の英語でレポートを挙げました。

https://github.com/postfixadmin/postfixadmin/issues/434

その結果からか、他の方々からの不具合レポートを含め、本日postfixadminが3.3.5へアップデートされておりました。
(example.com/postfixadmin/setup.php・・・初回実行時の「$CONF['encrypt'] 」の設定内容によって、初回セットアップ時のみ有効であるはずのセットアップパスワードハッシュ「$CONF['setup_password'] 」の内容が変化する事(妥当かどうか不明?)は変わってませんでした)

これに加えて、つい先日、WinPCでのメール送受信クライアントとしていたSeamonkeyも2.53.6へのバージョンアップがあり、
従来と確認環境も変更されたことから、本件は途中段階までの確認を進めることが出来た事で(質疑の書き方やログの添付方法などにも問題があったと認識・反省しております)、一旦Closeとし、この先の確認プロセスを含め、新たな質疑として解り易くまとめ直したいと存じます。
CHERRYさま、TaichiYanagiyaさま、68userさま各位からのコメント・ご教示誠にありがとうございました。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

CHERRY

2021/01/22 08:17

回答・コメントがつかないようなので... 参考にされた URL の内容を確認してみましたが、質問に記載されている症状が出るような設定箇所は無いと思います。 おそらく、各ツールの設定ファイルで設定している「ディレクトリ名」等の整合性が取れていない気がしますが、各種設定ファイルを公開することは可能でしょうか? また、ドメイン部分は、例示用のドメイン名( example.com / example.net / example.jp 等)を使用していただけないでしょうか。 ユーザー部分は、単純な user1 〜 user9 等のアカウント名にしてもらえると良いと思います。
Hal.

2021/01/22 10:27

CHERRYさま、コメントありがとうございます。 投稿者のHalです。 >質問に記載されている症状が出るような設定箇所は無い 謎です。。 本日(1/22)も、午前中より別の事例・・・ https://www.unix-power.net/networking/centos6-postfixadmin ・・・などを参照しながらトライ&エラーの無限ループに陥ってました。 postfixadmin関連の設定後、systemctl restart saslauthd・postfix・dovecotで各パッケージをリロードすると、systemctl status・・・ではpostfix,dovecot,saslauthdそれぞれが一応緑ランプにて問題無く走っている様に見えはするのですが、結果的にWindowsクライアントPCのメーラ(Seamonkey)では関連の設定を行うまで問題無く送受信できていた状況が、送受信共に出来なくなる始末です。 (ので、再度postfix,dovecotのバックアップ設定を戻して、リスタートをかけ、現在19:00頃に至り、精魂疲れ果てて本日の作業はここまでとしました) >各ツールの設定ファイルで設定している「ディレクトリ名」等の整合性が取れていない気がしますが、各種設定ファイルを公開することは可能 ドメイン名・postfixadminユーザ名・実unixユーザ名や各種パスワード等々を匿名的に置き換えた物であれば勿論可能です。 (どこまで必要でしょうか?、ログなども含め、全てとなると相当な量になりそうです、ファイル添付の様な形でのレスも可能なのでしょうか?どのような形でToDoすれば良いのかご指導頂きたくお願いいたします・・・初めてなもので恐縮です) >ドメイン部分は、例示用のドメイン名( example.com / example.net / example.jp 等)を使用していただけないでしょうか。 >ユーザー部分は、単純な user1 〜 user9 等のアカウント名にしてもらえると良い 了解いたしました。明日は最初に参照元としたarchwikiの資料ベースで再度トライしてみたいと思います。 ちなみにpostfixadmin本体自体のVerUp.がありました。現在3.3.4が最新で、入れ替えましたが、こちら単体に関して、WindowsクライアントからWebUIでのアクセスには、特権管理者のログインやドメイン追加・削除、メールアドレス追加・削除等は特に問題無く出来ています(postfixadminとmysql(MariaDB)間は問題無さそう?) ちなみにストレージ的には余裕なのでpostfixに対するVDAパッチでのQuota利用はしておりません。 以上、まずはコメントへのお礼とご返信まで。 今後のご教示、何卒よろしくお願いいたします。
Hal.

2021/01/24 08:13 編集

CHERRYさま、 投稿者のHalです。 本日(1/22)、記録をとりながら追試をいたしましたので、ご確認戴きたくお願いいたします。 ・・・・と思ったら、半日かけて書いた「無題.txt」を誤って保存せず閉じてしまったようです(呆) 明日再度一からやり直します(号泣) ---- 1/24の追試結果を下記に記載しました。 長文の為、分割投稿となりましたがご容赦いただきたくお願いいたします。 Hal.拝
Hal.

2021/01/24 08:06

*******************以下1/24,AM10:00頃~追試及び記録開始。 0.現在の状態。 0-1.LinuxサーバはCentOS7.9(x64)をサーバーインストールとして クリーンインストールし、 yum updateで全アップデート済み。 起動やシャットダウンに関しては特に問題無し。 このサーバは以前にVineLinux6(x86)で動作していた環境のうち、 /home/のユーザデータや、 /etc/の一部設定をマイグレーション移設した。 尚、サーバのインターネット向けIPは「固定IP1」で、NTTの光ルータ「PR-S300H」を経由してインターネットとフレッツ光隼1Gbps(ベストエフォート)にて接続されている。  このLinux上で現時点で主に稼動しているパッケージは下記の通り。 ・sshd(Local有線接続Only) ・dns(bind-chroot) ・postfix(v2.10.1) ・dovecot(v2.2.36) ・mailman ・MariaDB(mysql) ・httpd(apache v2.4.6) ※ドキュメントルートは「/home/httpd/html/」へ変更済み ・fail2ban(v0.11.1) ・swatch ・ntpd(chrony) ・ClamAV ・Amavisd ・samba ・webmin 0-2.LocalPC環境はWindows10(x64Pro/20H1)がメインPCとなっており、 デフォルトブラウザ&メーラはSeamonkey(≒Firefox + Thunderbird統合アプリ)で メールの送受信を行っている。 メール送受信は外部からも可能。 サーバとのメール接続時、ローカルはポート25、 外部とはサブミッション587ポートで実施している。 pop3認証はLinuxユーザアカウントとパスワード(pam認証)で、平文・暗号化無し。 SMTPは全Linuxユーザ共通同一のユーザ名とパスワードでSMTP-AUTH認証を行っている。 サーバの/etc/配下の設定変更などは短い場合は「vi」にて、長い場合はsamba&TeraTerm経由(ssh)で、WinPCの「MIFES for Windows」アプリを利用し、実行している。尚、参考WebコンテンツをMIFESへコピペした場合、改行コードが0x0D+0x0A(CR+LF)となる為、一旦バイナリエディットモードに切り替え、0x0D(CR)コードを削除してから編集作業を行っている。 現状稼動しているメインドメインは「example.com」、DNS登録済みのサブドメインの一つが「exsample.jp」であり、これらのドメインはWebアクセス時に 「http://www.example.com/」「http://www.example.jp/」で別サイトとしてアクセス出来るようバーチャルホスト設定済み。 1.目的(やりたいこと) 管理者がメインドメイン及びバーチャルドメインで新規ユーザを作成し、e-mailの送受信をそれぞれのドメインで内部・外部から行えるようにしたい。 都度postfixのaliasで書く手法もあるのだろうけど、手間がかかる&管理が面倒なので、postfixadminの環境へ移行したい。 現在対象としているpostfixadminのバージョンは2011/01/24時点で最新の3.3.4。 (3.3.2にはログイン系に致命的なバグがあった模様で1w程度悩まされました) https://www.example.com/postfixadmin/setup.php https://www.example.com/postfixadmin/login.php でアクセスが出来るようにし、postfixadminでドメイン・アドレスを追加後、「ようこそメール」を送信した後からはWindowsPCメーラなどで正常に送受信できるようにしたい。 2.今回参照先とするコンテンツ。 ArchWikiの「仮想ユーザーメールシステム」 https://wiki.archlinux.jp/index.php/%E4%BB%AE%E6%83%B3%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%83%A1%E3%83%BC%E3%83%AB%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0 3.現在ローカル稼動環境でのpostfixとdovecotの設定に関して コメント行をほぼ除く。一部実験中で残ってたゴミ行があり二重定義となっている部分があるが、実稼動と「#systemctl status・・・」には問題が無い為、放置している。 ---以下/etc/postfix/main.cf--- queue_directory = /var/spool/postfix command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix data_directory = /var/lib/postfix mail_owner = postfix myhostname = mail.example.com mydomain = example.com myorigin = $mydomain inet_interfaces = all mydestination = $myhostname, localhost.$mydomain, mail.$mydomain, $mydomain virtual_alias_maps = hash:/etc/postfix/virtual mynetworks_style = subnet mynetworks =127.0.0.1/32, 192.168.0.0/24 relay_domains = $mydestination alias_maps = hash:/etc/aliases, hash:/etc/mailman/aliases recipient_delimiter = + owner_request_special = no unknown_local_recipient_reject_code = 550 home_mailbox = Maildir/ debug_peer_level = 2 debugger_command = PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin ddd $daemon_directory/$process_name $process_id & sleep 5 allow_percent_hack = yes swap_bangpath = yes smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination smtpd_etrn_restrictions = permit_mynetworks, reject_invalid_hostname message_size_limit = 40960000 smtpd_sasl_auth_enable = yes smtpd_sasl_security_options = noanonymous smtpd_sasl_local_domain = $myhostname allow_mail_to_commands = alias,forward,include content_filter=smtp-amavis:[127.0.0.1]:10024 ---以上/etc/postfix/main.cf--- ---以下/etc/postfix/master.f--- smtp inet n - n - - smtpd submission inet n - n - - smtpd -o smtpd_sasl_auth_enable=yes -o smtpd_client_restrictions=permit_sasl_authenticated,reject -o smtpd_reject_unlisted_sender=yes -o broken_sasl_auth_clients=yes pickup fifo n - n 60 1 pickup cleanup unix n - n - 0 cleanup qmgr fifo n - n 300 1 qmgr tlsmgr unix - - n 1000? 1 tlsmgr rewrite unix - - n - - trivial-rewrite bounce unix - - n - 0 bounce defer unix - - n - 0 bounce trace unix - - n - 0 bounce verify unix - - n - 1 verify flush unix n - n 1000? 0 flush proxymap unix - - n - - proxymap proxywrite unix - - n - 1 proxymap smtp unix - - n - - smtp relay unix - - n - - smtp -o smtp_fallback_relay= showq unix n - n - - showq error unix - - n - - error retry unix - - n - - error discard unix - - n - - discard local unix - n n - - local virtual unix - n n - - virtual lmtp unix - - n - - lmtp anvil unix - - n - 1 anvil scache unix - - n - 1 scache smtp-amavis unix - - n - 2 smtp -o smtp_data_done_timeout=1200 -o smtp_send_xforward_command=yes -o disable_dns_lookups=yes 127.0.0.1:10025 inet n - n - - smtpd -o content_filter= -o local_recipient_maps= -o relay_recipient_maps= -o smtpd_restriction_classes= -o smtpd_client_restrictions= -o smtpd_helo_restrictions= -o smtpd_sender_restrictions= -o smtpd_recipient_restrictions=permit_mynetworks,reject -o mynetworks=127.0.0.0/8 -o strict_rfc821_envelopes=yes -o smtpd_error_sleep_time=0 -o smtpd_soft_error_limit=1001 -o smtpd_hard_error_limit=1000 ---以上/etc/postfix/master.cf--- ---以下/etc/dovecot/dovecot.conf--- protocols = imap pop3 listen = *, :: !include conf.d/*.conf ---以上/etc/dovecot/dovecot.conf--- ---以下/etc/dovecot/conf.d/10-master.conf--- service imap-login { process_min_avail = 1 } service pop3-login { inet_listener pop3 { #port = 110 } } service lmtp { unix_listener lmtp { #mode = 0666 } } service auth { ## Postfix smtp-auth unix_listener /var/spool/postfix/private/auth { mode = 0666 user = postfix group = postfix } unix_listener /var/spool/postfix/private/auth { mode = 0666 user = postfix group = postfix } } ---以上/etc/dovecot/conf.d/10-master.conf--- ---以下/etc/dovecot/conf.d/10-mail.conf--- mail_location = maildir:~/Maildir mail_location = maildir:/home/vmailbox/%d/%n first_valid_uid = 600 first_valid_gid = 600 mail_location = maildir:~/Maildir namespace inbox { inbox = yes } first_valid_uid = 500 first_valid_gid = 0 #valid_chroot_dirs = /home ← 追加※OpenSSH+Chrootを導入している場合のみ valid_chroot_dirs = /home #この行は生きてますがbind-chrootでは不要? ---以上/etc/dovecot/conf.d/10-mail.conf--- ---以下/etc/dovecot/conf.d/10-auth.conf--- #disable_plaintext_auth = no ← 追加(プレインテキスト認証を許可) disable_plaintext_auth = no auth_mechanisms = plain login !include auth-system.conf.ext ---以上/etc/dovecot/conf.d/10-auth.conf--- 4.ArchWiki参照コンテンツの導入開始。 (事前にmysqlのゴミDBやUSER、バーチャルドメイン用ユーザは抹消済) 4-1.インストール(略) 4-2.Linuxユーザ・グループとして「vmail」をuid,gid=5000で作成する。 # groupadd -g 5000 vmail # useradd -u 5000 -g vmail -s /usr/bin/nologin -d /home/vmail -m vmail 正常終了した。 <-以下参考情報-> ここで作成されたvmailはホームディレクトリとして/home/vmail/を所有する 同ディレクトリのデフォルトの権利関係はvmail.vmailである。 尚、etc/skel/の関係で「.hoge」や「public_html」が作成されてしまったが、本件には無関係なので消去しておく。 # ls -la /home/vmail 合計 16 drwx------ 5 vmail vmail 112 1月 24 11:46 . drwxr-xr-x. 47 root root 4096 1月 24 11:46 .. -rw-r--r-- 1 vmail vmail 24 6月 5 2011 .bash_logout -rw-r--r-- 1 vmail vmail 238 6月 5 2011 .bash_profile -rw-r--r-- 1 vmail vmail 389 6月 5 2011 .bashrc drwxr-xr-x 4 vmail vmail 51 12月 21 00:55 .mozilla drwx------ 6 vmail vmail 72 12月 30 18:49 Maildir drwx-----x 5 vmail vmail 182 1月 17 11:36 public_html # rm -rf .ba* # rm -rf .mo* # rm -rf public_html/ # ls -la 合計 4 drwx------ 3 vmail vmail 21 1月 24 11:51 . drwxr-xr-x. 47 root root 4096 1月 24 11:46 .. drwx------ 6 vmail vmail 72 12月 30 18:49 Maildir # <-以上参考情報-> 4-3.mysql(MariaDB)データベース整備関連 #mysql -u root -p >CREATE DATABASE postfix_db; >GRANT ALL ON postfix_db.* TO 'postfix_user'@'localhost' IDENTIFIED BY 'hunter22'; >FLUSH PRIVILEGES; >quit ※事例のパスワード「hunter2」では、この後のpostfixadminで短いと叱られるので「hunter22」へ変更。その他のパラメータは全てタイプミスを防ぐ為、今回は事例通りとする。 4-4.postfixadminの整備は後に行う。 4-5.SSL 証明書の取得 # cd /etc/ssl/private/ # openssl req -new -x509 -nodes -newkey rsa:4096 -keyout vmail.key -out vmail.crt -days 1460 #days are optional # chmod 400 vmail.key # chmod 444 vmail.crt 証明書作成に必要なプライベート情報はTeraTermコンソールでそれなりに手入力し、 正常終了した。代替え手段として説明されている「Let's Encrypt」での作成はスキップした。 # ls -la /etc/ssl/private 合計 8 drwxr-xr-x 2 root wheel 40 1月 18 10:39 . drwxr-xr-x. 3 root root 34 1月 18 10:39 .. -r--r--r-- 1 root wheel 2163 1月 24 11:58 vmail.crt -r-------- 1 root wheel 3272 1月 24 11:58 vmail.key #
Hal.

2021/01/24 08:07

5.postfix設定関連 「/etc/postfix/main.cf に以下を追加: 」を事例通り実施、保存。 <?以下疑問点?> 「ノート: ウェブインターフェイス (Roundcube) を使用するため、他の方法でアクセスできないようにし、ログイン権限を与えずにアカウントを作成します。」 の部分に関しては知見・スキル不足で理解出来ていない。 そもそもWebmailクライアントのRoundcubeは使わない為、取りあえず無視した。 <?以上疑問点?> 「設定ファイルの作成」はパスワードを「hunter22」に変更した以外は、 下記3ファイルを事例通り作成。 /etc/postfix/virtual_alias_maps.cf /etc/postfix/virtual_mailbox_domains.cf /etc/postfix/virtual_mailbox_maps.cf <?以下疑問点?> 「For alias domains functionality adjust the following files: 」 の部分に関しては知見・スキル不足で必要性が理解出来ていない。 取りあえず無視した。 <?以上疑問点?> 「ノート: PostfixAdmin を使わずにセットアップする場合、以下のファイルを作成してください。」の部分に関してはpostfixadminを使う為、無視した。 「transport で postmap を実行してデータベースを生成:」 # postmap /etc/postfix/transport 正常終了。但し「/etc/postfix/transport」の内容は「#」コメント行のみでアクティブな内容は無かった。 6.dovecot設定関連 「Dovecot のサンプル設定ファイルは使わずに、/etc/dovecot/dovecot.conf を作成します。ユーザーとグループは postfix ではなく vmail になるので注意してください。」に基づいて、既存の/etc/dovecot.confファイルの中身を全て消去後、事例の内容に置き換えて保存した。 <?以下疑問点?> 「ユーザーとグループは postfix ではなく vmail になる」の意味が曖昧で理解不能。 一応下記処理を行っておいた。 #chown -R vmail.vmail /etc/dovecot # ls -la 合計 24 drwxr-xr-x 3 vmail vmail 40 1月 24 12:20 . drwxr-xr-x. 210 root root 12288 1月 24 11:46 .. drwxr-xr-x 2 vmail vmail 4096 1月 22 15:18 conf.d -rw-r--r-- 1 vmail vmail 459 1月 24 12:18 dovecot.conf <?以上疑問点?> 「次に上の設定で参照した /etc/dovecot/dovecot-sql.conf を作成・・・」を事例通り実施(パスワードのみ「hunter22」に変更)。 「PostfixAdmin を使用する場合、以下を追加:」側を作成。 #chown -R vmail.vmail /etc/dovecot も実施。 <?以下疑問点?> 「/etc/dovecot/dovecot-sql.conf」ファイル内に default_pass_scheme = SHA512-CRYPT が存在するが、これはこのままで良いのだろうか? postfix,SMTP-AUTH,postfixadmin,WinPCメーラとの整合性が一致するのか疑問。 <?以上疑問点?> 「DH parameters」の部分は「With v2.3 you are required to ・・・」がdovecotのバージョンによっては・・・と理解。当方の環境は2.2.36なので、無関係として無視。 7.postfixadmin設定関連 事例では「config.inc.php には以下の設定が必要です」とあるが、 postfixadminでは設定変更する場合「config.local.php」に書くことが推奨されているはず。しかし、今回は事例通り「config.inc.php」を変更しようと確認したが、デフォルトで指示通りの内容になっていた。 「PostfixAdmin」 「Postfix#PostfixAdmin を見てください。」リンク先を確認。 https://wiki.archlinux.jp/index.php/Postfix#PostfixAdmin こちら側でもconfig.inc.phpへの変更が記載されているが、こちらに関してはconfig.local.php側への記載変更とした。 「IMAP を機能させるには、php-imap をインストールして /etc/php/php.ini の imap.so をアンコメントしてください。 」 とあるが、php.ini内に「imap.so」に関する記載が無い為、無視した。 「/etc/webapps/postfixadmin/config.inc.php」に書けとある部分は「config.inc.php」に書いた。(パスワードのみ「hunter22」へ変更) 「Dovecot をインストールするときにパスワードの認証方式を変更した場合 (例: SHA512-CRYPT)、Postfix の設定もそれにあわせてください: 」 とあるので、「$CONF['encrypt'] = 'dovecot:SHA512-CRYPT';」を追加。 「Dovecot 2 現在、dovecotpw は非推奨となっています。新しいバイナリ名にあわせて設定を変更すると良いでしょう: 」 $CONF['dovecotpw'] = "/usr/sbin/doveadm pw"; は、よく解らぬままに追加。 <?以下疑問点?> 事例側ではpostfixadminの操作系に関して記載されていない為、操作系はWebコンテンツを参照している(既に過去何回も同じ作業テストを行っているので理解しているつもり) 「config.inc.php」では無く「config.local.php」の場合は 先頭と最後にphpスクリプトの開始終了宣言が必要なので追記した。 またdefault_languageに関しても記載されていないので $CONF['default_language'] = 'ja'; も追記 postfixadmin/フォルダ直下にワークフォルダ「templates_c」を作成しなければならないことが書かれていない為、これを作成し、権利関係は #chown -R apache.apahce /home/httpd/html/postfixadmin/ で設定しておいた。 <?以上疑問点?> ---以下「/home/httpd/html/postfixadmin/config.local.php」内容--- <?php // /home/httpd/html/postfixadmin/config.local.php $CONF['default_language'] = 'ja'; $CONF['configured'] = true; // correspond to dovecot maildir path /home/vmail/%d/%u $CONF['domain_path'] = 'YES'; $CONF['domain_in_mailbox'] = 'NO'; $CONF['database_type'] = 'mysqli'; $CONF['database_host'] = 'localhost'; $CONF['database_user'] = 'postfix_user'; $CONF['database_password'] = 'hunter22'; $CONF['database_name'] = 'postfix_db'; $CONF['encrypt'] = 'dovecot:SHA512-CRYPT'; $CONF['dovecotpw'] = "/usr/sbin/doveadm pw"; // globally change all instances of ''change-this-to-your.domain.tld'' // to an appropriate value ?> ---以上「/home/httpd/html/postfixadmin/config.local.php」内容--- 「Apache の設定ファイルを作成: 」に関してはpostfixadmin3系ではArchWikiり内容では動作しないので、以前から確認できている下記にて運用中。 ---以下「/etc/httpd/conf.d/postfixadmin.conf」内容--- #Alias /postfixadmin "/home/httpd/html/postfixadmin/public" #potfixadmin 3.x系 Script Alias禁止! ロゴ崩れる #ScriptAlias /postfixadmin/ "/home/httpd/html/postfixadmin/" #potfixadmin 2.x系 Alias /postfixadmin "/home/httpd/html/postfixadmin/public" <Directory /home/httpd/html/postfixadmin/public> AddDefaultCharset UTF-8 # Options Indexes FollowSymLinks AllowOverride All # Order allow,deny Options All Require all granted # Order Deny,Allow Allow from 192.168.0.0/24 </Directory> ---以上「/etc/httpd/conf.d/postfixadmin.conf」内容--- 「/etc/httpd/conf/httpd.conf から httpd-postfixadmin.conf をインクルードしてください: # PostfixAdmin configuration Include conf/extra/httpd-postfixadmin.conf」 の部分は理解不能(そもそもpostfixadminは実行ファイルでも無いので実行も不能) の為、スキップした。 「Secure SMTP (送信) デフォルトでは Postfix/sendmail はメールを暗号化して他の SMTP サーバーに送信しません。TLS を使用するには、main.cf に以下の行を追加してください: 」 ・・・以下の行は、メインで事例参照している「仮想ユーザーメールシステム」 https://wiki.archlinux.jp/index.php/%E4%BB%AE%E6%83%B3%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%83%A1%E3%83%BC%E3%83%AB%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0 と異なっているので、ここで上記元の参照先へ戻る。 ここまでで、postfix,dovecotの設定変更は完了している。 postfixadminは現時点で未起動だが、postfixadmin(mysqlのdb)側のセッティングを先行させる。 #systemctl restart httpd #systemctl status httpd にて、httpd(apache2)のみ再起動し、下記にアクセス。 https://www.example.com/postfixadmin/setup.php Setup password「hunter22」を入力し、「Generate setup_password hash」を押下し、 $CONF['setup_password'] = '$2y$10$4aJli/p.ODBfO5OAyumCwOy2zyHWLLUjdZBEjelAxYWUcdXUwEeji'; を得る。 この内容を「/home/httpd/html/postfixadmin/config.local.php」に追記保存。 その後、再び https://www.example.com/postfixadmin/setup.php をアクセスすると恐らくはmysql(MariaDB)側にテーブル作成するなど、postfixadmin側の諸処設定を行ったり、各種モジュールとの整合性チェックの為、数分程度ブラウザ的には「応答を待っています」として待たされる。 しばらくすると 「Configure and Setup Postfixadmin」から始まる画面に遷移するので、Warningレベルのエラー(下記)・・・ ? Database - PostgreSQL (pdo_pgsql) extension not found ? Change the database_type to 'sqlite' in config.local.php if you want to use SQLite ・・・を除き、赤文字などのエラーが発生強いないことを確認。 最下行にスクロールすると特権管理者の登録が出来るエリアが現れている。 Setup Passwordは「hunter22」として、その他の項目は任意に「管理者追加」押下で特権管理者2名程度作成する。 この後、 https://www.example.com/postfixadmin/login.php をアクセスし、特権管理者でログインしようとすると、 「ユーザ名かパスワードが違います。」とはねられる。 昨日以前のテスト時は 「/home/httpd/html/postfixadmin/config.local.php」 に $CONF['encrypt'] = 'cleartext'; として行っていた為 $CONF['setup_password'] 行を抹消し $CONF['encrypt'] = 'cleartext';行を追加した後 再度、 https://www.example.com/postfixadmin/setup.php にアクセスを行い「hunter22」パスワードで 「Generate setup_password hash」を押下すると、この段階から結果が異なり始めた。 「$CONF['encrypt'] = 'dovecot:SHA512-CRYPT';」の場合の結果。 $CONF['setup_password'] = '$2y$10$4aJli/p.ODBfO5OAyumCwOy2zyHWLLUjdZBEjelAxYWUcdXUwEeji'; 「$CONF['encrypt'] = 'cleartext';」の場合の結果。 $CONF['setup_password'] = '$2y$10$diISloaO6XqmsSrOQ9JUKe9.Srl3IJZFe63G8d5FZJz3TAdSMCw2y'; 「/home/httpd/html/postfixadmin/config.local.php」の $CONF['encrypt'] = 'dovecot:SHA512-CRYPT'; 行は $CONF['encrypt'] = 'cleartext'; と変更、また 「$CONF['encrypt'] = 'cleartext';」の場合の結果としての 「$CONF['setup_password'] =」 を追記して、再度、 https://www.example.com/postfixadmin/setup.php にアクセスを行い「hunter22」パスワードで特権管理者を2名作成。 https://www.example.com/postfixadmin/login.php にアクセスし、特権管理者でログインを試みると、今回は成功。 このログイン可否はpostfixadmin側の不具合だろうか? 「cleartext(text plain login)」で全体を統一できれば動くようにも感じる。
Hal.

2021/01/24 08:08

8.postfixadminとpostfix,dovecotの連係実働確認。 まず、これまで保存した設定に基づき、 #systemctl restart postfix #systemctl status postfix #systemctl restart dovecot #systemctl status dovecot #systemctl restart httpd #systemctl status httpd が緑ランプで正常にリスタートできるか確認。 https://www.example.com/postfixadmin/login.php にアクセスし、特権管理者でログインし、ドメイン追加で メインドメイン「example.com」とサブドメイン「exsmple.jp」を追加 「example.com」側にメールアドレス「mainfoo」(@example.com)と 「example.jp」側にメールアドレス「subfoo」(@example.jp)を追加。 それぞれに対し「ようこそメール」を発信し、WinPCから様子を見る。 すると /home/vmail/example.com/mainfoo/{cur,new,tmp} /home/vmail/example.jp/subfoo/{cur,new,tmp} のフォルダが作成され、共にnewフォルダにメールが配信されていることが確認出来た。 ここでWinPCメーラから mainfoo@example.com subfoo@example.jp のメール送受信を確認する。 mainfoo@example.comの受信では「ユーザー名を送信出来ませんでした」とpop3受信不可。 subfoo@exsmple.jpの受信でも「ユーザー名を送信出来ませんでした」となるが、加えて「Plaintext authentification disallowed on non-secure(SSL/TLS) connection」と表示されていた。 その後、サブ側ドメインのメーラの受信設定を以下のように変更(総当たり)し確認。 接続の保護:STARTTLS、認証方式:通常のパスワード認証・・・返信が帰ってこない。 接続の保護:STARTTLS、認証方式:暗号化されたパスワード認証 「POP3サーバーが暗号化されたパスワードをサポートしていない」旨のエラーが返る。 接続の保護:STARTTLS、認証方式:Kerberos/GSSAPI 「サーバーが選択された認証方式をサポートしていません」旨のエラーが返る。 接続の保護:STARTTLS、認証方式:NTLM 「サーバーが選択された認証方式をサポートしていません」旨のエラーが返る。 接続の保護:SSL/TLS、認証方式:通常のパスワード認証・・・返信が帰ってこない。 接続の保護:SSL/TLS、認証方式:暗号化されたパスワード認証 「POP3サーバーが暗号化されたパスワードをサポートしていない」旨のエラーが返る。 接続の保護:SSL/TLS、認証方式:Kerberos/GSSAPI 「サーバーが選択された認証方式をサポートしていません」旨のエラーが返る。 接続の保護:SSL/TLS、認証方式:NTLM 「サーバーが選択された認証方式をサポートしていません」旨のエラーが返る。 といずれの設定でもPOP3の受信は不可。 メール送信(SMTP-AUTH)はポート25での外部プロバイダアドレスへの送信は出来たが、ポート587では「Client host rejected:Access denied」となった。 ちなみにメイン側ドメインのメールアドレス「mainfoo@example.com」のメーラの受信設定を変更しても同様の結果となった。 一旦ここまでで追試終了し、dovecotとpostfixを旧環境設定に戻しリスタートさせ、元通りにした。 尚、設定を戻すと、メイン側ドメインのメールアドレス「mainfoo@example.com」からはポート587の送信も出来るようになった。
Hal.

2021/01/24 08:09

9.エラーログの状況等。 新環境切り替え時刻範囲「15:35~16:05」で、この間のログを確認した。 /var/log/secure 当該期間に関連すると思われるログは記録されていなかった。 /var/log/messages 当該期間に関連すると思われるログは記録されていなかった。 /var/log/maillog 関連すると思われるログのうち、アタックと思われる物を抹消し下記に掲載。 ---以下、/var/log/maillogより抜粋--- Jan 24 15:32:31 example dovecot: master: Warning: Killed with signal 15 (by pid=30285 uid=0 code=kill) Jan 24 15:32:31 example dovecot: master: Dovecot v2.2.36 (1f10bfa63) starting up for imap, pop3 (core dumps disabled) Jan 24 15:33:22 example clamd[1808]: SelfCheck: Database status OK. Jan 24 15:36:03 example postfix/smtpd[30453]: connect from localhost.localdomain[127.0.0.1] Jan 24 15:36:03 example postfix/trivial-rewrite[30562]: warning: do not list domain example.com in BOTH mydestination and virtual_mailbox_domains Jan 24 15:36:03 example postfix/smtpd[30453]: 7F3257230: client=localhost.localdomain[127.0.0.1] Jan 24 15:36:03 example postfix/cleanup[30563]: 7F3257230: message-id=<20210124063603.7F3257230@mail.example.com> Jan 24 15:36:03 example postfix/qmgr[30263]: 7F3257230: from=<mainfoo@example.com>, size=521, nrcpt=1 (queue active) Jan 24 15:36:03 example postfix/smtpd[30453]: disconnect from localhost.localdomain[127.0.0.1] Jan 24 15:36:04 example postfix/smtpd[30571]: connect from localhost.localdomain[127.0.0.1] Jan 24 15:36:04 example postfix/trivial-rewrite[30562]: warning: do not list domain example.com in BOTH mydestination and virtual_mailbox_domains Jan 24 15:36:04 example postfix/smtpd[30571]: 91E2D6B4F: client=localhost.localdomain[127.0.0.1] Jan 24 15:36:04 example postfix/cleanup[30563]: 91E2D6B4F: message-id=<20210124063603.7F3257230@mail.example.com> Jan 24 15:36:04 example postfix/qmgr[30263]: 91E2D6B4F: from=<mainfoo@example.com>, size=970, nrcpt=1 (queue active) Jan 24 15:36:04 example postfix/smtpd[30571]: disconnect from localhost.localdomain[127.0.0.1] Jan 24 15:36:04 example postfix/trivial-rewrite[30562]: warning: do not list domain example.com in BOTH mydestination and virtual_mailbox_domains Jan 24 15:36:04 example amavis[8281]: (08281-07) Passed CLEAN {RelayedInternal}, MYNETS LOCAL [127.0.0.1]:35578 <mainfoo@example.com> -> <mainfoo@example.com>, Queue-ID: 7F3257230, Message-ID: <20210124063603.7F3257230@mail.example.com>, mail_id: FqISClV_OoW7, Hits: -2.9, size: 521, queued_as: 91E2D6B4F, 1175 ms Jan 24 15:36:04 example postfix/smtp[30568]: 7F3257230: to=<mainfoo@example.com>, relay=127.0.0.1[127.0.0.1]:10024, delay=1.2, delays=0.06/0.01/0/1.2, dsn=2.0.0, status=sent (250 2.0.0 from MTA(smtp:[127.0.0.1]:10025): 250 2.0.0 Ok: queued as 91E2D6B4F) Jan 24 15:36:04 example postfix/qmgr[30263]: 7F3257230: removed Jan 24 15:36:04 example postfix/virtual[30572]: 91E2D6B4F: to=<mainfoo@example.com>, relay=virtual, delay=0.26, delays=0.15/0.01/0/0.1, dsn=2.0.0, status=sent (delivered to maildir) Jan 24 15:36:04 example postfix/qmgr[30263]: 91E2D6B4F: removed Jan 24 15:36:29 example postfix/smtpd[30453]: connect from localhost.localdomain[127.0.0.1] Jan 24 15:36:29 example postfix/smtpd[30453]: 60B907230: client=localhost.localdomain[127.0.0.1] Jan 24 15:36:29 example postfix/cleanup[30563]: 60B907230: message-id=<20210124063629.60B907230@mail.example.com> Jan 24 15:36:29 example postfix/qmgr[30263]: 60B907230: from=<mainfoo@example.com>, size=513, nrcpt=1 (queue active) Jan 24 15:36:29 example postfix/smtpd[30453]: disconnect from localhost.localdomain[127.0.0.1] Jan 24 15:36:30 example postfix/smtpd[30571]: connect from localhost.localdomain[127.0.0.1] Jan 24 15:36:30 example postfix/smtpd[30571]: 506BE6B4F: client=localhost.localdomain[127.0.0.1] Jan 24 15:36:30 example postfix/cleanup[30563]: 506BE6B4F: message-id=<20210124063629.60B907230@mail.example.com> Jan 24 15:36:30 example postfix/qmgr[30263]: 506BE6B4F: from=<mainfoo@example.com>, size=954, nrcpt=1 (queue active) Jan 24 15:36:30 example postfix/smtpd[30571]: disconnect from localhost.localdomain[127.0.0.1] Jan 24 15:36:30 example amavis[7815]: (07815-08) Passed CLEAN {RelayedOutbound}, MYNETS LOCAL [127.0.0.1]:35586 <mainfoo@example.com> -> <subfoo@example.jp>, Queue-ID: 60B907230, Message-ID: <20210124063629.60B907230@mail.example.com>, mail_id: Qyw-MGI2u4-4, Hits: -2.9, size: 513, queued_as: 506BE6B4F, 1004 ms Jan 24 15:36:30 example postfix/smtp[30568]: 60B907230: to=<subfoo@example.jp>, relay=127.0.0.1[127.0.0.1]:10024, delay=1.3, delays=0.28/0/0/1, dsn=2.0.0, status=sent (250 2.0.0 from MTA(smtp:[127.0.0.1]:10025): 250 2.0.0 Ok: queued as 506BE6B4F) Jan 24 15:36:30 example postfix/qmgr[30263]: 60B907230: removed Jan 24 15:36:30 example postfix/virtual[30572]: 506BE6B4F: to=<subfoo@example.jp>, relay=virtual, delay=0.23, delays=0.12/0/0/0.11, dsn=2.0.0, status=sent (delivered to maildir) Jan 24 15:36:30 example postfix/qmgr[30263]: 506BE6B4F: removed Jan 24 15:37:05 example postfix/smtpd[30453]: connect from localhost.localdomain[127.0.0.1] Jan 24 15:37:05 example postfix/smtpd[30453]: 54B837230: client=localhost.localdomain[127.0.0.1] Jan 24 15:37:05 example postfix/cleanup[30563]: 54B837230: message-id=<20210124063705.54B837230@mail.example.com> Jan 24 15:37:05 example postfix/qmgr[30263]: 54B837230: from=<mainfoo@example.com>, size=563, nrcpt=1 (queue active) Jan 24 15:37:05 example postfix/smtpd[30453]: disconnect from localhost.localdomain[127.0.0.1] Jan 24 15:37:20 example postfix/smtpd[30453]: connect from localhost.localdomain[127.0.0.1] Jan 24 15:37:20 example postfix/smtpd[30453]: B6F736B78: client=localhost.localdomain[127.0.0.1] Jan 24 15:37:20 example postfix/cleanup[30563]: B6F736B78: message-id=<20210124063720.B6F736B78@mail.example.com> Jan 24 15:37:21 example postfix/qmgr[30263]: B6F736B78: from=<mainfoo@example.com>, size=556, nrcpt=1 (queue active) Jan 24 15:37:21 example postfix/smtpd[30453]: disconnect from localhost.localdomain[127.0.0.1] Jan 24 15:37:21 example postfix/smtpd[30571]: connect from localhost.localdomain[127.0.0.1] Jan 24 15:37:21 example postfix/smtpd[30571]: 380666B4F: client=localhost.localdomain[127.0.0.1] Jan 24 15:37:21 example postfix/cleanup[30563]: 380666B4F: message-id=<20210124063705.54B837230@mail.example.com> Jan 24 15:37:21 example postfix/qmgr[30263]: 380666B4F: from=<mainfoo@example.com>, size=1012, nrcpt=1 (queue active) Jan 24 15:37:21 example postfix/smtpd[30571]: disconnect from localhost.localdomain[127.0.0.1] Jan 24 15:37:21 example postfix/trivial-rewrite[30562]: warning: do not list domain example.com in BOTH mydestination and virtual_mailbox_domains Jan 24 15:37:21 example amavis[8281]: (08281-08) Passed CLEAN {RelayedInternal}, MYNETS LOCAL [127.0.0.1]:35594 <mainfoo@example.com> -> <mainfoo@example.com>, Queue-ID: 54B837230, Message-ID: <20210124063705.54B837230@mail.example.com>, mail_id: lt7T1KPwSjxv, Hits: -2.9, size: 563, queued_as: 380666B4F, 15869 ms Jan 24 15:37:21 example postfix/smtp[30568]: 54B837230: to=<mainfoo@example.com>, relay=127.0.0.1[127.0.0.1]:10024, delay=16, delays=0.07/0/0/16, dsn=2.0.0, status=sent (250 2.0.0 from MTA(smtp:[127.0.0.1]:10025): 250 2.0.0 Ok: queued as 380666B4F) Jan 24 15:37:21 example postfix/qmgr[30263]: 54B837230: removed Jan 24 15:37:21 example postfix/virtual[30572]: 380666B4F: to=<mainfoo@example.com>, relay=virtual, delay=0.12, delays=0.06/0/0/0.06, dsn=2.0.0, status=sent (delivered to maildir) Jan 24 15:37:21 example postfix/qmgr[30263]: 380666B4F: removed Jan 24 15:37:22 example postfix/smtpd[30571]: connect from localhost.localdomain[127.0.0.1] Jan 24 15:37:22 example postfix/smtpd[30571]: 107B07230: client=localhost.localdomain[127.0.0.1] Jan 24 15:37:22 example postfix/cleanup[30563]: 107B07230: message-id=<20210124063720.B6F736B78@mail.example.com> Jan 24 15:37:22 example postfix/qmgr[30263]: 107B07230: from=<mainfoo@example.com>, size=997, nrcpt=1 (queue active) Jan 24 15:37:22 example postfix/smtpd[30571]: disconnect from localhost.localdomain[127.0.0.1] Jan 24 15:37:22 example amavis[7815]: (07815-09) Passed CLEAN {RelayedOutbound}, MYNETS LOCAL [127.0.0.1]:35600 <mainfoo@example.com> -> <subfoo@example.jp>, Queue-ID: B6F736B78, Message-ID: <20210124063720.B6F736B78@mail.example.com>, mail_id: kaeJmauQT59f, Hits: -2.9, size: 556, queued_as: 107B07230, 1020 ms Jan 24 15:37:22 example postfix/smtp[30645]: B6F736B78: to=<subfoo@example.jp>, relay=127.0.0.1[127.0.0.1]:10024, delay=1.5, delays=0.41/0.01/0/1, dsn=2.0.0, status=sent (250 2.0.0 from MTA(smtp:[127.0.0.1]:10025): 250 2.0.0 Ok: queued as 107B07230) Jan 24 15:37:22 example postfix/qmgr[30263]: B6F736B78: removed Jan 24 15:37:22 example postfix/virtual[30572]: 107B07230: to=<subfoo@example.jp>, relay=virtual, delay=0.18, delays=0.12/0/0/0.06, dsn=2.0.0, status=sent (delivered to maildir) Jan 24 15:37:22 example postfix/qmgr[30263]: 107B07230: removed Jan 24 15:39:37 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<>, method=PLAIN, rip=192.168.0.51, lip=192.168.0.5, session=<gzRtr5+5BC3AqAAz> Jan 24 15:40:04 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<dbr-m3007>, rip=192.168.0.34, lip=192.168.0.5, session=<2i8LsZ+5sZ3AqAAi> Jan 24 15:40:37 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<>, method=PLAIN, rip=192.168.0.51, lip=192.168.0.5, session=<y6D7sp+5Gy3AqAAz> Jan 24 15:40:37 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<>, method=PLAIN, rip=192.168.0.51, lip=192.168.0.5, session=<3WT9sp+5HS3AqAAz> Jan 24 15:40:37 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<>, method=PLAIN, rip=192.168.0.51, lip=192.168.0.5, session=<Wb/+sp+5Hi3AqAAz> Jan 24 15:40:37 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<>, method=PLAIN, rip=192.168.0.51, lip=192.168.0.5, session=<NoL/sp+5Hy3AqAAz>
Hal.

2021/01/24 08:09

Jan 24 15:41:00 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<>, method=PLAIN, rip=192.168.0.51, lip=192.168.0.5, session=<w0hitJ+5EC3AqAAz> Jan 24 15:42:23 example postfix/anvil[30271]: statistics: max connection rate 3/60s for (smtp:203.114.35.194) at Jan 24 15:34:37 Jan 24 15:42:23 example postfix/anvil[30271]: statistics: max connection count 1 for (smtp:202.230.223.30) at Jan 24 15:32:23 Jan 24 15:42:23 example postfix/anvil[30271]: statistics: max cache size 2 at Jan 24 15:34:27 Jan 24 15:42:54 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<subfoo>, rip=192.168.0.51, lip=192.168.0.5, session=<2/smu5+5Ly3AqAAz> Jan 24 15:43:09 example dovecot: pop3-login: Disconnected (no auth attempts in 0 secs): user=<>, rip=192.168.0.51, lip=192.168.0.5, TLS: SSL_read() failed: error:14094412:SSL routines:ssl3_read_bytes:sslv3 alert bad certificate: SSL alert number 42, session=</+wUvJ+5XC3AqAAz> Jan 24 15:43:17 example dovecot: pop3-login: Disconnected (no auth attempts in 1 secs): user=<>, rip=192.168.0.51, lip=192.168.0.5, TLS: SSL_read() failed: error:14094412:SSL routines:ssl3_read_bytes:sslv3 alert bad certificate: SSL alert number 42, session=</F+AvJ+5XS3AqAAz> Jan 24 15:45:40 example dovecot: pop3-login: Disconnected (no auth attempts in 58 secs): user=<>, rip=192.168.0.51, lip=192.168.0.5, TLS, session=<+BcRxZ+5fi3AqAAz> Jan 24 15:47:05 example dovecot: pop3-login: Disconnected (no auth attempts in 33 secs): user=<>, rip=192.168.0.51, lip=192.168.0.5, TLS, session=<GaYXyp+5oi3AqAAz> Jan 24 15:47:19 example postfix/qmgr[30263]: 6740F6B42: from=<mainfoo@example.com>, size=967, nrcpt=1 (queue active) Jan 24 15:47:19 example postfix/virtual[31342]: 6740F6B42: to=<subfoo@example.jp>, relay=virtual, delay=79603, delays=79603/0.02/0/0.43, dsn=2.0.0, status=sent (delivered to maildir) Jan 24 15:47:19 example postfix/qmgr[30263]: 6740F6B42: removed Jan 24 15:47:21 example clamd[1808]: SelfCheck: Database status OK. Jan 24 15:47:54 example dovecot: pop3-login: Disconnected (no auth attempts in 24 secs): user=<>, rip=192.168.0.51, lip=192.168.0.5, TLS, session=<iRoFzZ+5uS3AqAAz> Jan 24 15:49:26 example dovecot: pop3-login: Disconnected (no auth attempts in 0 secs): user=<>, rip=221.242.76.82, lip=192.168.0.5, session=<Mp+M0p+5kvrd8kxS> Jan 24 15:49:37 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<>, method=PLAIN, rip=192.168.0.51, lip=192.168.0.5, session=<m6wv05+55i3AqAAz> Jan 24 15:50:21 example dovecot: pop3-login: Disconnected (no auth attempts in 1 secs): user=<>, rip=192.168.0.51, lip=192.168.0.5, TLS: SSL_read() failed: error:14094412:SSL routines:ssl3_read_bytes:sslv3 alert bad certificate: SSL alert number 42, session=<LMvF1Z+5/C3AqAAz> Jan 24 15:50:37 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<>, method=PLAIN, rip=192.168.0.51, lip=192.168.0.5, session=<ID2+1p+5Ay7AqAAz> Jan 24 15:50:37 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<>, method=PLAIN, rip=192.168.0.51, lip=192.168.0.5, session=<VSLA1p+5BS7AqAAz> Jan 24 15:50:37 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<>, method=PLAIN, rip=192.168.0.51, lip=192.168.0.5, session=<g1PB1p+5Bi7AqAAz> Jan 24 15:50:37 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<>, method=PLAIN, rip=192.168.0.51, lip=192.168.0.5, session=<H7bC1p+5By7AqAAz> Jan 24 15:51:23 example dovecot: pop3-login: Disconnected (no auth attempts in 30 secs): user=<>, rip=192.168.0.51, lip=192.168.0.5, TLS, session=<+K142Z+5EC7AqAAz> Jan 24 15:51:39 example dovecot: pop3-login: Disconnected (no auth attempts in 3 secs): user=<>, rip=192.168.0.51, lip=192.168.0.5, TLS, session=<x/Bs2p+5Hy7AqAAz> Jan 24 15:51:49 example postfix/smtpd[31631]: connect from mo-sw-fb1511.iijmio.jp[203.180.38.134] Jan 24 15:51:49 example postfix/smtpd[31631]: Anonymous TLS connection established from mo-sw-fb1511.iijmio.jp[203.180.38.134]: TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits) Jan 24 15:51:49 example postfix/trivial-rewrite[31634]: warning: do not list domain example.com in BOTH mydestination and virtual_mailbox_domains Jan 24 15:51:49 example postfix/smtpd[31631]: NOQUEUE: reject: RCPT from mo-sw-fb1511.iijmio.jp[203.180.38.134]: 550 5.1.1 <admin-ml@example.com>: Recipient address rejected: User unknown in local recipient table; from=<hogehoge@nn.iij4u.or.jp> to=<admin-ml@example.com> proto=ESMTP helo=<mo-sw-fb.iijmio.jp> Jan 24 15:51:50 example postfix/smtpd[31631]: disconnect from mo-sw-fb1511.iijmio.jp[203.180.38.134] Jan 24 15:52:11 example dovecot: pop3-login: Disconnected (no auth attempts in 2 secs): user=<>, rip=192.168.0.51, lip=192.168.0.5, TLS, session=<iipg3J+5LC7AqAAz> Jan 24 15:53:15 example postfix/smtpd[31631]: connect from Win10PC[192.168.0.51] Jan 24 15:53:15 example postfix/smtpd[31631]: DDBF57230: client=Win10PC[192.168.0.51] Jan 24 15:53:15 example postfix/cleanup[31728]: DDBF57230: message-id=<9cd01f44-880a-ffa1-909a-13ca165170bb@example.jp> Jan 24 15:53:16 example postfix/qmgr[30263]: DDBF57230: from=<subfoo@example.jp>, size=631, nrcpt=1 (queue active) Jan 24 15:53:16 example postfix/smtpd[31631]: disconnect from Win10PC[192.168.0.51] Jan 24 15:53:17 example postfix/smtpd[31732]: connect from localhost.localdomain[127.0.0.1] Jan 24 15:53:17 example postfix/smtpd[31732]: 413EB6B42: client=localhost.localdomain[127.0.0.1] Jan 24 15:53:17 example postfix/cleanup[31728]: 413EB6B42: message-id=<9cd01f44-880a-ffa1-909a-13ca165170bb@example.jp> Jan 24 15:53:17 example postfix/qmgr[30263]: 413EB6B42: from=<subfoo@example.jp>, size=1088, nrcpt=1 (queue active) Jan 24 15:53:17 example postfix/smtpd[31732]: disconnect from localhost.localdomain[127.0.0.1] Jan 24 15:53:17 example amavis[8281]: (08281-09) Passed CLEAN {RelayedOutbound}, MYNETS LOCAL [192.168.0.51]:11843 <subfoo@example.jp> -> <hogehoge@nn.iij4u.or.jp>, Queue-ID: DDBF57230, Message-ID: <9cd01f44-880a-ffa1-909a-13ca165170bb@example.jp>, mail_id: 9q9WmkgMMD0y, Hits: -2.9, size: 631, queued_as: 413EB6B42, 969 ms Jan 24 15:53:17 example postfix/smtp[31729]: DDBF57230: to=<hogehoge@nn.iij4u.or.jp>, relay=127.0.0.1[127.0.0.1]:10024, delay=1.4, delays=0.44/0.01/0/0.97, dsn=2.0.0, status=sent (250 2.0.0 from MTA(smtp:[127.0.0.1]:10025): 250 2.0.0 Ok: queued as 413EB6B42) Jan 24 15:53:17 example postfix/qmgr[30263]: DDBF57230: removed Jan 24 15:54:31 example postfix/smtpd[31812]: connect from Win10PC[192.168.0.51] Jan 24 15:54:31 example postfix/smtpd[31812]: NOQUEUE: reject: RCPT from Win10PC[192.168.0.51]: 554 5.7.1 <Win10PC[192.168.0.51]>: Client host rejected: Access denied; from=<subfoo@example.jp> to=<hogehoge@nn.iij4u.or.jp> proto=ESMTP helo=<[192.168.0.51]> Jan 24 15:54:39 example postfix/smtpd[31812]: lost connection after RCPT from Win10PC[192.168.0.51] Jan 24 15:54:39 example postfix/smtpd[31812]: disconnect from Win10PC[192.168.0.51]
Hal.

2021/01/24 08:10

Jan 24 15:56:07 example postfix/smtpd[31808]: connect from Win10PC[192.168.0.51] Jan 24 15:56:07 example postfix/trivial-rewrite[31634]: warning: do not list domain example.com in BOTH mydestination and virtual_mailbox_domains Jan 24 15:56:07 example postfix/smtpd[31808]: 3842C7230: client=Win10PC[192.168.0.51] Jan 24 15:56:07 example postfix/cleanup[31918]: 3842C7230: message-id=<90c8f177-9713-e583-0a0c-dbba51f69818@example.com> Jan 24 15:56:07 example postfix/qmgr[30263]: 3842C7230: from=<mainfoo@example.com>, size=658, nrcpt=1 (queue active) Jan 24 15:56:07 example postfix/smtpd[31808]: disconnect from Win10PC[192.168.0.51] Jan 24 15:56:12 example postfix/smtpd[31926]: connect from localhost.localdomain[127.0.0.1] Jan 24 15:56:12 example postfix/trivial-rewrite[31634]: warning: do not list domain example.com in BOTH mydestination and virtual_mailbox_domains Jan 24 15:56:12 example postfix/smtpd[31926]: ECB856B42: client=localhost.localdomain[127.0.0.1] Jan 24 15:56:12 example postfix/cleanup[31918]: ECB856B42: message-id=<90c8f177-9713-e583-0a0c-dbba51f69818@example.com> Jan 24 15:56:13 example postfix/qmgr[30263]: ECB856B42: from=<mainfoo@example.com>, size=1115, nrcpt=1 (queue active) Jan 24 15:56:13 example postfix/smtpd[31926]: disconnect from localhost.localdomain[127.0.0.1] Jan 24 15:56:13 example amavis[7815]: (07815-10) Passed CLEAN {RelayedOutbound}, MYNETS LOCAL [192.168.0.51]:11915 <mainfoo@example.com> -> <hogehoge@nn.iij4u.or.jp>, Queue-ID: 3842C7230, Message-ID: <90c8f177-9713-e583-0a0c-dbba51f69818@example.com>, mail_id: m1b0krLi-1JD, Hits: -2.9, size: 658, queued_as: ECB856B42, 5782 ms Jan 24 15:56:13 example postfix/smtp[31919]: 3842C7230: to=<hogehoge@nn.iij4u.or.jp>, relay=127.0.0.1[127.0.0.1]:10024, delay=5.9, delays=0.08/0.01/0/5.8, dsn=2.0.0, status=sent (250 2.0.0 from MTA(smtp:[127.0.0.1]:10025): 250 2.0.0 Ok: queued as ECB856B42) Jan 24 15:56:13 example postfix/qmgr[30263]: 3842C7230: removed Jan 24 15:56:13 example postfix/smtp[31927]: Untrusted TLS connection established to mx.iij4u.or.jp[203.180.38.122]:25: TLSv1.2 with cipher AES128-GCM-SHA256 (128/128 bits) Jan 24 15:56:14 example postfix/smtp[31927]: ECB856B42: to=<hogehoge@nn.iij4u.or.jp>, relay=mx.iij4u.or.jp[203.180.38.122]:25, delay=1.3, delays=0.12/0.01/0.75/0.4, dsn=2.0.0, status=sent (250 2.0.0 10O6uDCx029667 Message accepted for delivery) Jan 24 15:56:14 example postfix/qmgr[30263]: ECB856B42: removed Jan 24 15:56:43 example postfix/smtpd[31952]: connect from Win10PC[192.168.0.51] Jan 24 15:56:43 example postfix/trivial-rewrite[31634]: warning: do not list domain example.com in BOTH mydestination and virtual_mailbox_domains Jan 24 15:56:43 example postfix/smtpd[31952]: NOQUEUE: reject: RCPT from Win10PC[192.168.0.51]: 554 5.7.1 <Win10PC[192.168.0.51]>: Client host rejected: Access denied; from=<mainfoo@example.com> to=<hogehoge@nn.iij4u.or.jp> proto=ESMTP helo=<[192.168.0.51]> Jan 24 15:56:45 example postfix/smtpd[31952]: disconnect from Win10PC[192.168.0.51] Jan 24 15:57:05 example dovecot: pop3-login: Disconnected (tried to use disallowed plaintext auth): user=<>, method=PLAIN, rip=192.168.0.51, lip=192.168.0.5, session=<1+jd7Z+5ni7AqAAz> Jan 24 15:57:13 example postfix/smtpd[31926]: connect from localhost.localdomain[127.0.0.1] Jan 24 15:57:13 example postfix/smtpd[31926]: disconnect from localhost.localdomain[127.0.0.1] Jan 24 15:57:13 example postfix/trivial-rewrite[31634]: warning: do not list domain example.com in BOTH mydestination and virtual_mailbox_domains Jan 24 15:57:13 example amavis[8281]: (08281-10) Passed CLEAN {RelayedInbound}, [54.240.25.8]:38847 [54.240.25.8] <20210124041710cee76b1a9c8244919e8506276960p0fe@bounces.amazon.co.jp> -> <mainfoo@example.com>, Queue-ID: A5C147230, Message-ID: <01010177329c2a0c-d958bcb6-0302-44e2-a321-f079aa180dce-000000@us-west-2.amazonses.com>, mail_id: URy9DBv7HiTL, Hits: -2.165, size: 6330, queued_as: 81E086B42, dkim_sd=efcs4kiwgez5q6d7nhj6jx2dyn2hqgz4:amazon.co.jp, 12922 ms Jan 24 15:57:13 example postfix/smtp[31919]: A5C147230: to=<mainfoo@example.com>, relay=127.0.0.1[127.0.0.1]:10024, delay=14, delays=1.2/0/0/13, dsn=2.0.0, status=sent (250 2.0.0 from MTA(smtp:[127.0.0.1]:10025): 250 2.0.0 Ok: queued as 81E086B42) Jan 24 15:57:13 example postfix/qmgr[30263]: A5C147230: removed Jan 24 15:57:13 example postfix/virtual[31987]: 81E086B42: to=<mainfoo@example.com>, relay=virtual, delay=0.17, delays=0.1/0.01/0/0.06, dsn=2.0.0, status=sent (delivered to maildir) Jan 24 15:57:13 example postfix/qmgr[30263]: 81E086B42: removed ---以上、/var/log/maillogより抜粋--- 10.本日の振り返り(まとめ)と所感 ・事例環境に切り替えると送信メール環境のうち、SMTP-AUTH(Port:587)での送信が出来なくなる。SMTP-AUTH(Port:25)では正常送信可能(何故587側のみ不能に陥る?) ・postfixadminのconfig.local.php(config.inc.php)において、「$CONF['encrypt'] = 'cleartext';」以外の内容で設定を開始すると、メイン画面へログイン不能となる(何故?postfixadmin側の不具合?)。 ・postfixadminにログインした状態で、ドメインの作成・メールアドレスの追加・ようこそメールの送信等は特に問題無く行えた。(postfixadmin本体の基本動作は正しく動作している?) ・事例環境に切り替え後、ようこそメールの送信後に/home/vmail/を確認すると、7項の(※※※)でマークした部分のようなバーチャルメールフォルダが作成され、新規到着メールQはこちらのnewフォルダに転送されていた。 ・WindowsPCのメーラ(Seamonkey)ではメインドメイン・サブドメインいずれのメールアドレスも如何なる認証方法に変更しても受信することは出来なかった。 ・バックアップしていたpostfix,dovecotの/etc/配下のファイルを旧環境に戻し、リスタートさせるとWinPCからの送受信は全て正常に行えるようになった。 つまりpostfixadminがmysql(MariaDB)側に行っているテーブル設定やドメイン・メールアドレス設定データがpostfixやdovecotから正しく参照出来ていない状況? (暗号化などの通信方式の不整合か?もしそうだとすると、整合をとる為には「cleartext」で統一する必要がある?) *******************以上1/24,PM17:00頃~追試及び記録終了。 このような状況で既に1ヶ月近くハマっています(泣) どうか、アドバイス・ご教示等、お助け戴きたくお願いいたします。 Hal.拝
TaichiYanagiya

2021/01/25 00:11

これまでの経緯を書いていただいたのですが、回答者がこれを読んで、さらに参照 URL を読んで追検証し、現状を把握するのは多大な労力を要します。 整理してください。 ・質問事項 (箇条書きで) ・現在の設定 ・できていること、できていないこと (メール受信しスプールに保存できるが、POP アクセスできない、SMTP-Auth での送信ができない、など) ・できないときのログ (全文ではなく、Try したときに出力されたもの) ・その他、参考 URL、経緯などの補足情報
68user

2021/01/25 01:12

長すぎて理解が難しいです。 またファイルやログの内容は質問の編集にて「コードの挿入」を使っていただけるとありがたいです。新情報が出たら元質問を更新して、コメント追記はほどほどにしてはどうでしょうか (コメントではコードの挿入ができないため)。
Hal.

2021/01/25 01:15

68userさま、コメントありがとうございます。 >ファイルやログの内容は質問の編集にて「コードの挿入」を使って 勉強不足で申し訳ございません。ご教示ありがとうございました。 以後、そのようにしたいと思います。
Hal.

2021/01/25 01:17

TaichiYanagiya さま。 コメントありがとうございました。 >整理してください。 ご指摘の点、改めて整理いたしますので、今しばらくお待ち頂ければ幸いです
Hal.

2021/01/25 01:46

68userさま。 >コメントではコードの挿入ができないため これはどのように修正するのが理想型でしょうか? 長文コメント投稿部分は全て削除依頼し、メイン投稿最下段に追記で移動するという形でも良いでしょうか? 本件各位からご教示をいただいた内容で追試を行うと、その結果がどんどん増えていくのではないかと(設定ファイルやログは全てコード挿入をすれば良いのでしょうか?)思い、メインの質問に追記を繰り返す事に容量上など、限界が無ければ良いのですが。 それとも追試分からは新たなスレッドとして投稿するべきなのか、このあたりご教示願えれば幸いです。
Hal.

2021/01/25 01:49

TaichiYanagiyaさま。 整理の件、大元質疑に関しては68userさまにご教示戴いた<code>挿入にて編集してみました。 長文をコメント投稿した部分に関してはどのようにするのが妥当かアドバイス戴ければ幸いです。 (一つ前のコメントで68userさまにもお尋ねしています) 妥当な方向性がまとまりましたら、修正等行いたいと思います。
Hal.

2021/01/25 02:04

TaichiYanagiyaさま。 後先になるかも知れませんが、現時点(コメント側)で追記できることを簡略に追記いたします。 >・質問事項 (箇条書きで) CentOS7.9(x64)上でpostfixadminにてバーチャルドメイン環境を作成したいが正しく動作しない。 >・現在の設定 (すみません、長くなるのでコメント側では一旦略します) >・できていること、できていないこと (メール受信しスプールに保存できるが、POP アクセスできない、SMTP-Auth での送信ができない、など) postfix,dovecot,mysql(MariaDB)をスタンバイさせており、ArchWikiの参考事例でpostfixadmin用の設定変更に切り替える前はPOP3受信(各ユーザ個別のunixIDとPasswordにて認証=pam?),SMTP-AUTH(全利用ユーザ共通のIDとPasswordで運用)はPort25,587共に正常動作。 postfixadmin用の設定変更に切り替える後、pop3受信は全て不可、SMTP-AUTHはPort25は動作するが、Port587側での送信が出来なくなる。尚、postfixadminで「ようこそメール」送信後は/home/vmail/配下に既存ユーザのメールスプールはたまり続ける(切り替わった)状況が確認出来る。 >・できないときのログ (全文ではなく、Try したときに出力されたもの) こちらも、コメント側では一旦略します。尚、昨日長文コメントで記載した物は実験時刻帯のアタックログなどを排除した関連すると思われるログを抜粋した物です >・その他、参考 URL、経緯などの補足情報 参考にした事例はArchWikiの「仮想ユーザーメールシステム」・・・ https://wiki.archlinux.jp/index.php/%E4%BB%AE%E6%83%B3%E3%83%A6%E3%83%BC%E3%82%B6%E3%83%BC%E3%83%A1%E3%83%BC%E3%83%AB%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0 ・・・ですが、postfix,dovecot,postfixadmin間の暗号化設定が共通化されていないように見受けられ、かつ、現在のpostfixadmin3.3.4では「cleartext」以外でのセッティングでは/setup.php /login.phpで正常なログインが出来ない為、postfixadmin側は「cleartext」でのセッティングにするしかないように感じています(postfixadmin側の不具合?)。 以上、一旦まとめました。
Hal.

2021/01/28 08:53

CHERRYさま、TaichiYanagiyaさま、68userさま各位からのコメント・ご教示誠にありがとうございました。 質疑本文に現状報告の追記をさせて頂き、一旦Closeさせて頂きます。
guest

回答1

0

ベストアンサー

元のドメイン(maindomain.com)は postfixadmin に登録しておらず、OSユーザー=メールアカウントなのですよね?

おそらく、postfix 側では、maindomain.com は local 配送 (home_mailbox)、hoge.jp, foo.com は virtual 配送 (virtual_mailbox_maps → proxy:mysql) で受信・保存できるのですが、
dovecot の passdb, userdb が MySQL (driver = sql) しか参照しないため、maindomain.com のユーザーが unknown user となっているのだと思います。

passdb, userdb は複数設定できるので(おそらく最初に見つかったものが採用される)、元の OSユーザーで認証する設定を残し、postfixadmin 用の設定を追加するといいと思います。
CentOS 7 の標準構成であれば、/etc/dovecot/conf.d/10-auth.conf から include している auth-system.conf.ext の設定です。

あるいは、最初から maindomain.com も postfixadmin で管理した方が簡単かもしれません。


(2021/01/25 09:12) 追記

ようこそメールなどのメールは受信しスプールに保存できるが、POP アクセスできない、SMTP-Auth での送信ができない、ということですか?
まず、postfixadmin でマルチドメインにしたので、認証ユーザー名はドメイン付きにする必要があります。
mainfoo ではなく、mainfoo@example.com です。

認証については、メールクライアントに原因があるかもしれないので、先にサーバー上で telnet, openssl s_client などで確認するといいと思います。

// AUTH PLAIN 用の文字列生成 [centos7]$ echo -en '\0mainfoo@example.com\0password' | base64 AG1haW5mb29AZXhhbXBsZS5jb20AcGFzc3dvcmQ= // POP 認証確認 [centos7]$ telnet localhost 110 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. +OK Dovecot ready. auth plain AG1haW5mb29AZXhhbXBsZS5jb20AcGFzc3dvcmQ= +OK Logged in. quit +OK Logging out. Connection closed by foreign host. // POP 認証確認 (TLS) [centos7]$ openssl s_client -connect localhost:995 CONNECTED(00000003) (略) +OK Dovecot ready. auth plain AHVzZXIxMDAxQGV4YW1wbGUuY29tAHBhc3MxMDAx +OK Logged in. quit +OK Logging out. closed // SMTP-Auth 認証確認 (TLS) [centos7]$ openssl s_client -connect localhost:587 -starttls smtp CONNECTED(00000003) (略) 250 DSN auth plain AHVzZXIxMDAxQGV4YW1wbGUuY29tAHBhc3MxMDAx 235 2.7.0 Authentication successful quit 221 2.0.0 Bye closed

(2021/01/28 18:05) 追記
postfixadmin は DB でユーザー管理しますので、SMTP-Auth も DB を見に行く必要があるのですが、postfix も saslauthd も MySQL には接続できません。
なので、sasldb2 も saslauthd も使わずに、postfix main.cf で smtpd_sasl_type = dovecot として dovecot に認証を依頼します。
dovecot 側で service auth { ... } で postfix 用のソケットファイルを用意し、postfix 側の smtpd_sasl_path にこのソケットファイルのパスを設定します。

投稿2021/01/22 15:31

編集2021/01/28 09:05
TaichiYanagiya

総合スコア12146

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Hal.

2021/01/23 09:43

TaichiYanagiyaさま、コメントありがとうございます。 まず、「/etc/dovecot/conf.d/10-auth.conf」は、バーチャル環境変更前は下記の通りでした。 ---以下「/etc/dovecot/conf.d/10-auth.conf」--- ## Authentication processes #disable_plaintext_auth = no ← 追加(プレインテキスト認証を許可) disable_plaintext_auth = no auth_mechanisms = plain login !include auth-system.conf.ext ---以上「/etc/dovecot/conf.d/10-auth.conf」--- そして、includeされている「auth-system.conf.ext」は下記です。 ---以下「/etc/dovecot/conf.d/auth-system.conf.ext」--- # Authentication for system users. Included from 10-auth.conf. passdb { driver = pam # [session=yes] [setcred=yes] [failure_show_msg=yes] [max_requests=<n>] # [cache_key=<key>] [<service name>] #args = dovecot } userdb { # <doc/wiki/AuthDatabase.Passwd.txt> driver = passwd # [blocking=no] #args = # Override fields from passwd #override_fields = home=/home/virtual/%u } ---以上「/etc/dovecot/conf.d/auth-system.conf.ext」--- >あるいは、最初から maindomain.com も postfixadmin で管理した方が簡単かもしれません。 はい、そのように変更出来るようにしたい(目的)と考えているのですが、どこかで何かが足りない、あるいは整合していない状況に陥っていると思っておる次第です。 特にpostfix,dovecot,mysql,postfixadmin,WinPCメーラ(Seamonkey)間で、pop3認証時のパスワードと、SMTP-AUTH認証時のパスワードが、どのように連係されているのかという所がスキル・知見不足で解っていない為、落とし穴に落ち込んでいると想像しています。 本日(1/23)午後に、先のCHERRYさまのコメントに対して、再度追試し、詳細状況を記録した内容をテキスト化し、コメント返信させていただきましたので、よろしければこちらもご参照頂ければ幸いです。
Hal.

2021/01/23 09:59

>本日(1/23)午後に、先のCHERRYさまのコメントに対して、再度追試し、詳細状況を記録した内容をテキスト化し、コメント返信させていただきましたので、よろしければこちらもご参照頂ければ幸いです。 ・・・・と思ったら、半日かけて書いた「無題.txt」を誤って保存せず閉じてしまったようです(呆) 明日再度一からやり直します(号泣)
Hal.

2021/01/24 08:11

TaichiYanagiyaさま、本日1/24に先のCHERRYさまのコメントに対して、再度追試し、詳細状況を記録した内容をテキスト化し、コメント返信させていただきました(長文の為、分割投稿となりました)。 よろしければこちらもご参照頂ければ幸いです。
Hal.

2021/01/25 01:29

TaichiYanagiyaさま。 >ようこそメールなどのメールは受信しスプールに保存できるが、POP アクセスできない、SMTP-Auth での送信ができない、ということですか? はい、POP3での受信が全てNGです。postfixadminで「ようこそメール」送信後は、各ドメインユーザ、特にmainfoo@example.comは常時メール流量がそこそこあるので、「/home/vmail/example.com/mainfoo/new/」配下に新着メールが追加でチマチマ届いてくるのが視認できました。 が、WinPCのメーラ側で受信が出来ません。 SMTP-AUTHは同じくWinPCのメーラにてポート25の送信サーバを選択した場合は可能ですが、ポート587を送信サーバとした場合はNGとなります(旧設定では、どちらでも問題ありません) そもそもcleartextでpostfix,dovecot,postfixadmin,mysqlが連係出来ているのかも怪しいです。 事例では"SHA-512"となっていましたが、"SHA-512"の指定では、少なくともpostfixadminでは正常なsetupとloginが出来なくなります。その為、現時点ではpostfixadmin側は少なくともcleartextでセッティングするしかない状況です。 (この点、解決法があればご教示下さい) >まず、postfixadmin でマルチドメインにしたので、認証ユーザー名はドメイン付きにする必要があります。 >mainfoo ではなく、mainfoo@example.com です。 をぉ、ご教示ありがとうございます。この点は行っていませんでしたので、WinPCクライアントのメーラの認証名をご指摘頂いたように変更して追試したいと思います。
TaichiYanagiya

2021/01/25 03:27

> postfixadmin用の設定変更に切り替える前は......正常動作。 postfix も dovecot もユーザー管理方法、認証方式が変わるので、あまり参考になりません。 メールログで、「postfix/trivial-rewrite[31634]: warning: do not list domain example.com in BOTH mydestination and virtual_mailbox_domains」と出ていますが、メインドメインは postfixadmin に登録されていますか? また、他のバーチャルドメインのユーザーでは POP, SMTP-Auth で認証できますか? > SMTP-AUTHはPort25は動作するが、Port587側での送信が出来なくなる。 25番ポートは mynetworks で許可されていて、認証なしで送信しているのでは? > 尚、昨日長文コメントで記載した物は実験時刻帯のアタックログなどを排除した関連すると思われるログを抜粋した物です あまりに多すぎます。 "tail -f /var/log/maillog" でログを出力しておき、POP で接続したとき、SMTP-Auth で接続したとき、など、1つの操作で出力されたものをそれぞれ分けて提示ください。 > postfixadmin側は「cleartext」でのセッティングにするしかないように感じています(postfixadmin側の不具合?)。 仮説を立てて検証することは大事ですが、何か根拠となるログ(事実)はあるのでしょうか? $CONF['encrypt'] を変更したら、$CONF['setup_password'] や既に DB に入っている情報と合わなくなる可能性がありますので、DB と postfixadmin を初期状態にしてからやり直すといいと思います。
Hal.

2021/01/29 10:52

TaichiYanagiyaさま、Close済みのQAで質疑追加するのはアリでしょうか? (別質疑として立て直した方が良いでしょうか?) 取りあえず、昨日から追記いただいたコメントを参照し、実験を行った結果、そこそこ動作している?ような状況までは行ったのですが、私は根本的に勘違いしていたかも知れません。 従来は、複数のlocalユーザに対しPOP3は個別のunix-password(PAM?)でしたが、SMTP-AUTHに関しては便宜上1つの(sasl2dbの)ID/Passwordで対処してました。 postfixadmin環境下だと、SMTP-AUTHに関してもDBのID/Passで認証しなければならない事になるのでしょうか?
TaichiYanagiya

2021/02/01 08:48

> SMTP-AUTHに関しては便宜上1つの(sasl2dbの)ID/Passwordで対処してました。 > postfixadmin環境下だと、SMTP-AUTHに関してもDBのID/Passで認証しなければならない事になるのでしょうか? 技術的には SMTP-Auth 用に 1つのユーザー/パスワードを共用することは可能ですが、悪意あるユーザーに悪用されたとき、そのユーザーを特定する方法がありません。
Hal.

2021/02/03 08:08

TaichiYanagiyaさま、 >技術的には SMTP-Auth 用に 1つのユーザー/パスワードを共用することは可能ですが、悪意あるユーザーに悪用されたとき、そのユーザーを特定する方法がありません。 やはりそういう事なんですね。了解いたしました、コメントありがとうございました_(^_^)_
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問