web-dev-qa-db-ja.com

Centos Postfix / Dovecot-移行アップグレード後の権限の問題

古いCentos5.5システムから新しいCentos6.4サーバーに移行しています。後置バージョンは同じように見えますが、Dovecotは1.xから2.xに上がりました。 MySQLを使用してメールアカウントの詳細を保存し、pfadminで管理します。

Rsyncを使用して、/var/vmailフォルダーを古いサーバーから新しいサーバーにコピーしました。 postfixとdovecotをインストールしましたが、mysqlと同様にpfadminが機能しています。しかし、/var/vmailフォルダーのアクセス許可に大きな問題があります。

var/フォルダーから:

drwxrwx---. 34 vmail vmail 4096 May 28 10:03 vmail

/etc/passwdから:

postfix:x:89:89::/var/spool/postfix:/sbin/nologin
dovecot:x:97:97:Dovecot IMAP server:/usr/libexec/dovecot:/sbin/nologin
dovenull:x:498:499:Dovecot's unauthorized user:/usr/libexec/dovecot:/sbin/nologin
mysql:x:27:27:MySQL Server:/var/lib/mysql:/bin/bash
vmail:x:125:12::/var/vmail:/usr/sbin/nologin

dovecot.confの関連行

first_valid_uid = 125
last_valid_uid = 150
mail_location = maildir:/var/vmail/%d/%u
mail_privileged_group = mail
mbox_write_locks = fcntl

ポート25および110にtelnetで接続する場合(PFおよびDovecotテスト用)。 SMTPセッションは正常になり、pop3セッションがクラッシュしました。

maillogには手がかりがあります-Postfixが生成しているものは次のとおりです。

warning: maildir access problem for UID/GID=150/12: create maildir
file /var/vmail/thedomain.com/[email protected]/tmp/1369997999.P1913.IS-20698: 
Permission denied

およびDovecotの場合:

dovecot: pop3([email protected]): Error: file_dotlock_create
(/var/vmail/thedomain.com/[email protected]/dovecot-uidlist) 
failed: Permission denied (euid=125(vmail) egid=125(vmail) missing +w 
perm: /var/vmail/thedomain.com/[email protected], euid is not dir owner)
  • したがって、基本的にどちらのプロセスもメールディレクトリに書き込むことはできません。

すべての権限をインラインで取得するにはどうすればよいですか?

2
jon

私はuidとgidsをジャグリングしましたが、実際の修正は/dovecot/conf.d/10-master.confにありました。

受信メールをusersフォルダーに配信するためのpostfix/SMTPを取得している:

ユーザーとグループをvmailに設定しましたが、接尾辞のユーザー/グループを使用するように設定する必要があります。結局のところ、postfixがファイル/ディレクトリに書き込むことができる場合、それはhas動作します。

service auth {
 unix_listener auth-userdb {
 mode = 0660
 user = postfix
group = postfix
}

これが変更されてサービスが再開されると、POP3、imap、postfixadmin、squirrelmailなどすべてが機能しました。

4
jon

/ etc/groupの「vmail」グループに「postfix」を追加する必要があるかもしれません。そして、dovecot/conf.d /10-mail.confファイルを見てください。 mail_uidとmail_gidが 'vmail'に設定されており、両方ともコメントが解除されていることを確認する必要があります。

conf.d/10-mail.conf:mail_uid = vmail
conf.d/10-mail.conf:mail_gid = vmail
0
tgharold

私のキャストでは、この問題はSELinuxが原因でした。 Sudo nano /etc/sysconfig/selinuxを設定してから、SELINUX=disabledを設定することで問題を解決しました。これは開発中に許容されます。より完全な解決策は、SELinuxルールを設定してpostfixdovecotSELinuxを有効にして機能するようにすることです。

0
CodeMed