web-dev-qa-db-ja.com

postfix、dovecotの新しいユーザードメインは私のドメインではなくローカルホストです

Ubuntu 16.04でpostfix、dovecot、roundcubeを使用しています。

新しいユーザー(unix)を作成してからroundcubeにログインすると、メールを送信すると、受信者は[email protected]ではなくuser @localhostからメールを受け取ります。

コマンドプロンプトからsendmail-tを使用すると、メールは正しく配信されます

[email protected]

最近、接尾辞を破ることに成功したので、ファイルに触れるのが怖いので尋ねます:))これは、roundcube、dovecot、または接尾辞の問題であり、どこから修正できますか。

前もって感謝します、

1
orfruit

@sebixは、誰かが必要とする場合に備えて、質問して解決してくれてありがとう。

これはroundcubeの問題であり、デフォルトでは、ログインの目的ですべてのユーザー@localhostが考慮されます(config.inc.php)

ログインのみに使用されるため、この行には触れないでください

$config['default_Host'] = 'localhost';

代わりに、欠落しているこの行を追加してください

$config['mail_domain'] = '%n';

ここで、%はいくつかのオプションになります

// %n - hostname ($_SERVER['SERVER_NAME'])
// %t - hostname without the first part
// %d - domain (http hostname $_SERVER['HTTP_Host'] without the first part)
// %s - domain name after the '@' from e-mail address provided at login screen
// For example %n = mail.domain.tld, %t = domain.tld

私の場合、myserver.com(mail.myserver.comではない)があるので%nは問題ありませんでした

紛らわしい問題は、ユーザーがRoundcubeにログインすると、IDが検出されたとおりにMySQLに保存されるため、手動で編集する必要があることです。新規ユーザーの場合(%n変更後)、すべて問題ありません。

それで全部です :)

1
orfruit