Author Topic: Password Plugin error: Could not save new password. Encryption function missing.  (Read 2469 times)

Offline snealbli

  • Newbie
  • *
  • Posts: 1
I am using Roundcube v1.6.0.  I am trying to get the Password Plugin to work properly.

However, I am getting the following error message (in browser):
Quote
Could not save new password.
Encryption function missing.


I am using Postfix/Dovecot configured for virtual users.  MariaDB, nginx, php-fpm, Postfixadmin
Here are my config files:
/srv/live/php/roundcubemail-1.6.0/logs/errors.log
Code: [Select]
[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)
note: the logged entry above was on one line only; I added the carriage return to aid in readability.

/srv/live/php/roundcubemail-1.6.0/config/config.inc.php
Code: [Select]
$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
Code: [Select]
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


I should mention that I am (immediately after this) going to switch over to bcrypt.  So if this problem can be solved by just switching over now instead, then by all means let us do that instead.
But I figured that attempting both of these things simultaneously would be a very terrible idea  :)

Thank you so much for your help!
« Last Edit: December 13, 2022, 01:58:57 PM by snealbli »