나는 Roundcube v를 사용하고 있습니다1.6.0, 그리고 나는비밀번호 플러그인제대로 작동하려면.
그러나 브라우저에서 다음과 같은 오류 메시지가 나타납니다.
Could not save new password.
Encryption function missing.
Roundcube가 내 개인 키에 액세스하려는 이유는 무엇입니까?
Postfixadmin을 사용하여 가상 사용자용으로 구성된 Postfix/Dovecot을 사용하고 있습니다.
구성
/srv/live/php/roundcubemail-1.6.0/logs/errors.log
[13-Dec-2022 11:16:31 -0500]: PHP Error: Password plugin: Failed to execute command: /usr/bin/doveadm pw -s 'CRAM-MD5'.
Error: doveconf: Fatal: Error in configuration file /etc/dovecot/dovecot.conf line 12: ssl_cert: Can't open file /etc/ssl/private/fullchain.pem: Permission denied in /srv/live/php/roundcubemail-1.6.0/plugins/password/password.php on line 747 (POST /?_task=settings&_action=plugin.password-save)
편집하다:저는 실수로 아래 항목을 Roundcube 기본 구성 파일로 나열했습니다. 이것은 비밀번호 플러그인 구성입니다
/srv/live/php/roundcubemail-1.6.0/plugins/password
$config['password_driver'] = 'sql';
$config['password_strength_driver'] = 'zxcvbn';
$config['password_zxcvbn_min_score'] = 5;
$config['password_confirm_current'] = true;
$config['password_minimum_length'] = 8;
$config['password_minimum_score'] = 0;
$config['password_algorithm'] = 'dovecot';
$config['password_algorithm_options'] = [];
$config['password_algorithm_prefix'] = '';
$config['password_dovecotpw'] = '/usr/bin/doveadm pw';
$config['password_dovecotpw_method'] = 'CRAM-MD5';
$config['password_dovecotpw_with_method'] = true;
/etc/dovecot/dovecot-sql.conf
driver = mysql
connect = host=localhost dbname=postfix_db user=postfix password=<redacted>
default_pass_scheme = MD5-CRYPT
user_query = SELECT '/var/www/mail/vmail/%d/%n' as home, 'maildir:/var/www/mail/vmail/%d/%n' as mail, 2000 AS uid, 2000 AS gid, concat('dirsize:storage=', quota) AS quota FROM mailbox WHERE username = '%u' AND active = '1'
# Get the password
password_query = SELECT username as user, password, '/var/www/mail/vmail/%d/%n' as userdb_home, 'maildir:/var/www/mail/vmail/%d/%n' as userdb_mail, 2000 as userdb_uid, 2000 as userdb_gid FROM mailbox WHERE username = '%u' AND active = '1'
# If using client certificates for authentication, comment the above and uncomment the following
#password_query = SELECT null AS password, ‘%u’ AS user
도움을 주셔서 미리 감사드립니다!
참고: 내 정확한 문제를 자세히 설명하는 게시물을 찾을 수 없습니다.
Dovecot의 비밀번호 스키마를 다음에서 변경하여 해결된 다소 유사한 설정/오류가 있는 두 개의 포스터를 찾았습니다.MD5에게비크립트. 그것이 왜 도움이 될지 모르겠습니다. 하지만 어쨌든 이렇게 할 계획이었으므로 이것이 어떻게든 해결책이 되는지 알려 주시기 바랍니다.
답변1
긴 여정이었지만 고쳤습니다. 결국은 으로 향했다Postfixadmin 자식그리고 발견이 문제~와 함께이 게시물. 후속 오류는 다음 Error: net_connect_unix(/run/dovecot/stats-writer) failed: Permission denied
덕분에 해결되었습니다.이 게시물
요약:
1. 새로운 비둘기장 구성 파일 만들기
/etc/dovecot/
먼저 (또는 비둘기장 구성 파일이 있는 곳) 새 파일을 만듭니다 .
나는 내 전화를 겁니다 ssl-keys.conf
. 이 파일에 대한 권한은 0600
(소유자는 root:root
) 입니다.
여기에는 기본 비둘기장 구성 파일(아마도 dovecot.conf
)에서 이동된 두 줄만 포함됩니다.
ssl-keys.conf
ssl_cert = </etc/ssl/private/fullchain.pem
ssl_key = </etc/ssl/private/privkey.pem
2. 기본 비둘기장 구성 파일 수정
에서 dovecot.conf
다음 줄을 추가합니다.
!include_try ssl-keys.conf
service stats {
unix_listener stats-reader {
group = vmail
mode = 0666
}
unix_listener stats-writer {
group = vmail
mode = 0666
}
}
postfixadmin이 dovecot/vmail 그룹(여기서 vmail은 메일 또는 가상 사용자 그룹임)의 일부인지 확인하세요.
아직 수행하지 않은 경우 dovecot.conf
새 파일에 추가한 행을 제거하십시오 ssl-keys.conf
. 다른 모든 것을 그대로 두십시오.
3. dovecot 데이터베이스 구성 파일 수정
Dovecot 데이터베이스 구성 파일( dovecot-sql.conf
나의 경우)에서 다음을 수정합니다.
default_pass_scheme = BLF-CRYPT
Roundcube 비밀번호 플러그인 구성 파일에서 다음을 수정합니다(나머지는 내 OP와 동일).
$config['password_dovecotpw_method'] = 'BLF-CRYPT';
$config['password_dovecotpw'] = '/usr/bin/doveadm pw -r 12';