#1 Le 10/01/2014, à 13:26
- esaaix
[Résolu] Roundcube authentification failed avec postfix-dovecot
Bonjour,
je dispose d'un serveur avec Postfix et Dovecot, trois domaines avec MX sont configurés, tout fonctionne dans le meilleur des mondes avec Postfix.
Par contre avec roundcube, impossible de se loguer !
J'ai toujours ce log :
IMAP Error: Login failed for myusername@domain1.tld from 190.230.60.12. AUTHENTICATE PLAIN: Authentication failed. in /var/www/roundcubemail/program/lib/Roundcube/rcube_imap.php on line 184 (POST /?_task=login&_action=login)
et le log imap donne :
[10-Jan-2014 12:53:45 +0100]: [04B4] C: A0001 STARTTLS
[10-Jan-2014 12:53:45 +0100]: [04B4] S: A0001 OK Begin TLS negotiation now.
[10-Jan-2014 12:53:45 +0100]: [04B4] C: A0002 CAPABILITY
[10-Jan-2014 12:53:45 +0100]: [04B4] S: * CAPABILITY IMAP4rev1 LITERAL+ SASL-IR LOGIN-REFERRALS ID ENABLE SORT SORT=DISPLAY THREAD=REFERENCES THREAD=REFS MULTIAPPEND UNSELECT IDLE CHILDREN NAMESPACE UIDPLUS LIST-EXTENDED I18NLEVEL=1 CONDSTORE QRESYNC ESEARCH ESORT SEARCHRES WITHIN CONTEXT=SEARCH LIST-STATUS AUTH=PLAIN
[10-Jan-2014 12:53:45 +0100]: [04B4] S: A0002 OK Capability completed.
[10-Jan-2014 12:53:45 +0100]: [04B4] C: A0003 ID ("name" "Roundcube" "version" "0.9.5" "php" "xx.x+squeeze18" "os" "Linux" "command" "/")
[10-Jan-2014 12:53:45 +0100]: [04B4] S: * ID NIL
[10-Jan-2014 12:53:45 +0100]: [04B4] S: A0003 OK ID completed.
[10-Jan-2014 12:53:45 +0100]: [04B4] C: A0004 AUTHENTICATE PLAIN AHJlbmF1Z5jb3Vydm9pc2llcgBrNHFLSGpnaA==
[10-Jan-2014 12:53:47 +0100]: [04B4] S: A0004 NO [AUTHENTICATIONFAILED] Authentication failed.
De son côté le log de postfix ne renvoie aucun message par rapport à cette tentative.
L'utilisateur existe, le mot de passe est correct, avec un thunderbird ou autre le compte fonctionne, en telnet local sur le serveur aussi.
Si vous pouviez éclairer ma lanterne...
Merci d'avance !!
Voici ma config roundcube :
$rcmail_config = array();
$rcmail_config['debug_level'] = 1;
$rcmail_config['log_driver'] = 'file';
$rcmail_config['log_date_format'] = 'd-M-Y H:i:s O';
$rcmail_config['syslog_id'] = 'roundcube';
$rcmail_config['syslog_facility'] = LOG_USER;
$rcmail_config['smtp_log'] = true;
$rcmail_config['log_logins'] = false;
$rcmail_config['log_session'] = true;
$rcmail_config['sql_debug'] = false;
$rcmail_config['imap_debug'] = true;
$rcmail_config['ldap_debug'] = false;
$rcmail_config['smtp_debug'] = false;
$rcmail_config['default_host'] = 'tls://localhost';
$rcmail_config['default_port'] = 143;
$rcmail_config['imap_auth_type'] = null;
$rcmail_config['imap_delimiter'] = null;
$rcmail_config['imap_ns_personal'] = null;
$rcmail_config['imap_ns_other'] = null;
$rcmail_config['imap_ns_shared'] = null;
$rcmail_config['imap_force_caps'] = false;
$rcmail_config['imap_force_lsub'] = false;
$rcmail_config['imap_force_ns'] = false;
$rcmail_config['imap_timeout'] = 0;
$rcmail_config['imap_auth_cid'] = null;
$rcmail_config['imap_auth_pw'] = null;
$rcmail_config['imap_cache'] = null;
$rcmail_config['messages_cache'] = false;
$rcmail_config['smtp_server'] = 'localhost';
$rcmail_config['smtp_port'] = 25;
$rcmail_config['smtp_user'] = '%u';
$rcmail_config['smtp_pass'] = '%p';
$rcmail_config['smtp_auth_type'] = '';
$rcmail_config['smtp_auth_cid'] = null;
$rcmail_config['smtp_auth_pw'] = null;
$rcmail_config['smtp_helo_host'] = '';
$rcmail_config['smtp_timeout'] = 0;
$rcmail_config['enable_installer'] = false;
$rcmail_config['dont_override'] = array();
$rcmail_config['support_url'] = '';
$rcmail_config['skin_logo'] = null;
$rcmail_config['auto_create_user'] = false;
$rcmail_config['user_aliases'] = false;
$rcmail_config['log_dir'] = 'logs/';
$rcmail_config['temp_dir'] = 'temp/';
$rcmail_config['message_cache_lifetime'] = '10d';
$rcmail_config['force_https'] = false;
$rcmail_config['use_https'] = false;
$rcmail_config['login_autocomplete'] = 2;
$rcmail_config['login_lc'] = 2;
$rcmail_config['skin_include_php'] = false;
$rcmail_config['display_version'] = false;
$rcmail_config['session_lifetime'] = 10;
$rcmail_config['session_domain'] = '';
$rcmail_config['session_name'] = null;
$rcmail_config['session_auth_name'] = null;
$rcmail_config['session_path'] = null;
$rcmail_config['session_storage'] = 'db';
$rcmail_config['memcache_hosts'] = null; // e.g. array( 'localhost:11211', '192.168.1.12:11211', 'unix:///var/tmp/memcached.sock' );
$rcmail_config['ip_check'] = false;
$rcmail_config['referer_check'] = false;
$rcmail_config['x_frame_options'] = 'sameorigin';
$rcmail_config['des_key'] = 'qKfOBDEby3SMo4gtTdSnyPcP';
$rcmail_config['username_domain'] = array(
'domain1.tld'=>'domain1.tld',
'domain2.tld'=>'domain2.tld',
'domain3.tld'=>'domain3.tld'
);
$rcmail_config['mail_domain'] = '';
$rcmail_config['password_charset'] = 'ISO-8859-1';
$rcmail_config['sendmail_delay'] = 0;
$rcmail_config['max_recipients'] = 0;
$rcmail_config['max_group_members'] = 0;
$rcmail_config['useragent'] = 'Roundcube Webmail/'.RCMAIL_VERSION;
$rcmail_config['product_name'] = 'Roundcube Webmail';
$rcmail_config['include_host_config'] = false;
$rcmail_config['generic_message_footer'] = '';
$rcmail_config['generic_message_footer_html'] = '';
$rcmail_config['http_received_header'] = false;
$rcmail_config['http_received_header_encrypt'] = false;
$rcmail_config['mail_header_delimiter'] = NULL;
$rcmail_config['line_length'] = 72;
$rcmail_config['send_format_flowed'] = true;
$rcmail_config['mdn_use_from'] = false;
$rcmail_config['identities_level'] = 0;
$rcmail_config['client_mimetypes'] = null; # null == default
$rcmail_config['mime_magic'] = null;
$rcmail_config['mime_types'] = null;
$rcmail_config['im_identify_path'] = null;
$rcmail_config['im_convert_path'] = null;
$rcmail_config['image_thumbnail_size'] = 240;
$rcmail_config['contact_photo_size'] = 160;
$rcmail_config['email_dns_check'] = false;
$rcmail_config['no_save_sent_messages'] = false;
$rcmail_config['plugins'] = array();
$rcmail_config['message_sort_col'] = '';
$rcmail_config['message_sort_order'] = 'DESC';
$rcmail_config['list_cols'] = array('subject', 'status', 'fromto', 'date', 'size', 'flag', 'attachment');
$rcmail_config['language'] = 'fr_FR';
$rcmail_config['date_format'] = 'Y-m-d';
$rcmail_config['date_formats'] = array('Y-m-d', 'Y/m/d', 'Y.m.d', 'd-m-Y', 'd/m/Y', 'd.m.Y', 'j.n.Y');
$rcmail_config['time_format'] = 'H:i';
$rcmail_config['time_formats'] = array('G:i', 'H:i', 'g:i a', 'h:i A');
$rcmail_config['date_short'] = 'D H:i';
$rcmail_config['date_long'] = 'Y-m-d H:i';
$rcmail_config['drafts_mbox'] = 'Drafts';
$rcmail_config['junk_mbox'] = 'Junk';
$rcmail_config['sent_mbox'] = 'Sent';
$rcmail_config['trash_mbox'] = 'Trash';
$rcmail_config['default_folders'] = array('INBOX', 'Drafts', 'Sent', 'Junk', 'Trash');
$rcmail_config['create_default_folders'] = false;
$rcmail_config['protect_default_folders'] = true;
$rcmail_config['quota_zero_as_unlimited'] = false;
$rcmail_config['enable_spellcheck'] = true;
$rcmail_config['spellcheck_dictionary'] = false;
$rcmail_config['spellcheck_engine'] = 'pspell';
$rcmail_config['spellcheck_uri'] = '';
$rcmail_config['spellcheck_languages'] = NULL;
$rcmail_config['spellcheck_ignore_caps'] = false;
$rcmail_config['spellcheck_ignore_nums'] = false;
$rcmail_config['spellcheck_ignore_syms'] = false;
$rcmail_config['recipients_separator'] = ',';
$rcmail_config['max_pagesize'] = 200;
$rcmail_config['min_refresh_interval'] = 60;
$rcmail_config['upload_progress'] = false;
$rcmail_config['undo_timeout'] = 0;
$rcmail_config['address_book_type'] = 'sql';
$rcmail_config['ldap_public'] = array();
$rcmail_config['autocomplete_addressbooks'] = array('sql');
$rcmail_config['autocomplete_min_length'] = 1;
$rcmail_config['autocomplete_threads'] = 0;
$rcmail_config['autocomplete_max'] = 15;
$rcmail_config['address_template'] = '{street}<br/>{locality} {zipcode}<br/>{country} {region}';
$rcmail_config['addressbook_search_mode'] = 0;
$rcmail_config['default_charset'] = 'ISO-8859-1';
$rcmail_config['skin'] = 'larry';
$rcmail_config['mail_pagesize'] = 50;
$rcmail_config['addressbook_pagesize'] = 50;
$rcmail_config['addressbook_sort_col'] = 'surname';
$rcmail_config['addressbook_name_listing'] = 0;
$rcmail_config['timezone'] = 'auto';
$rcmail_config['prefer_html'] = true;
$rcmail_config['show_images'] = 0;
$rcmail_config['message_extwin'] = false;
$rcmail_config['compose_extwin'] = false;
$rcmail_config['htmleditor'] = 1;
$rcmail_config['prettydate'] = true;
$rcmail_config['draft_autosave'] = 300;
$rcmail_config['preview_pane'] = false;
$rcmail_config['preview_pane_mark_read'] = 0;
$rcmail_config['logout_purge'] = false;
$rcmail_config['logout_expunge'] = false;
$rcmail_config['inline_images'] = true;
$rcmail_config['mime_param_folding'] = 0;
$rcmail_config['skip_deleted'] = false;
$rcmail_config['read_when_deleted'] = true;
$rcmail_config['flag_for_deletion'] = false;
$rcmail_config['refresh_interval'] = 60;
$rcmail_config['check_all_folders'] = false;
$rcmail_config['display_next'] = true;
$rcmail_config['autoexpand_threads'] = 0;
$rcmail_config['reply_mode'] = 0;
$rcmail_config['strip_existing_sig'] = true;
$rcmail_config['show_sig'] = 1;
$rcmail_config['force_7bit'] = false;
$rcmail_config['search_mods'] = null;
$rcmail_config['addressbook_search_mods'] = null;
$rcmail_config['delete_always'] = false;
$rcmail_config['delete_junk'] = false;
$rcmail_config['mdn_requests'] = 0;
$rcmail_config['mdn_default'] = 0;
$rcmail_config['dsn_default'] = 0;
$rcmail_config['reply_same_folder'] = false;
$rcmail_config['forward_attachment'] = false;
$rcmail_config['default_addressbook'] = null;
$rcmail_config['spellcheck_before_send'] = false;
$rcmail_config['autocomplete_single'] = false;
$rcmail_config['default_font'] = 'Verdana';
Celle de Postfix :
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases,hash:/var/lib/mailman/data/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
content_filter = scan:127.0.0.1:10025
default_transport = smtp
delay_warning_time = 1h
inet_interfaces = all
inet_protocols = ipv4
mailbox_size_limit = 51200000
mydestination = localhost.hebergement.com, localhost
myhostname = myhostname.com
mynetworks = 127.0.0.0/8 188.165.239.0/24 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = /etc/mailname
readme_directory = no
receive_override_options = no_address_mappings
recipient_delimiter = +
relay_domains = mysql:/etc/postfix/mysql_relay_domains.cf
relay_transport = relay
relayhost =
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
smtpd_client_restrictions = permit_mynetworks
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_hostname, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unauth_destination, reject_unauth_pipelining, check_policy_service inet:127.0.0.1:10023, reject_invalid_hostname reject_unknown_sender_domain
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes
transport_maps = hash:/etc/postfix/transport,hash:/var/lib/mailman/data/transport-mailman
unknown_local_recipient_reject_code = 550
virtual_alias_maps = mysql:/etc/postfix/mysql_virtual_alias_maps.cf
virtual_gid_maps = static:3000
virtual_mailbox_base = /home/MAILDIR
virtual_mailbox_domains = mysql:/etc/postfix/mysql_virtual_mailbox_domains.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_transport = dovecot
virtual_uid_maps = static:3000
Et celle de dovecot :
log_path: /var/log/dovecot.log
log_timestamp: %Y-%m-%d %H:%M:%S
protocols: imap imaps pop3 pop3s
disable_plaintext_auth: no
login_dir: /var/run/dovecot/login
login_executable(default): /usr/lib/dovecot/imap-login
login_executable(imap): /usr/lib/dovecot/imap-login
login_executable(pop3): /usr/lib/dovecot/pop3-login
mail_privileged_group: mail
mail_location: maildir:/home/MAILDIR/%d/%n:INDEX=/home/MAILDIR/%d/%n/indexes
mbox_write_locks: fcntl dotlock
mail_executable(default): /usr/lib/dovecot/imap
mail_executable(imap): /usr/lib/dovecot/imap
mail_executable(pop3): /usr/lib/dovecot/pop3
mail_plugin_dir(default): /usr/lib/dovecot/modules/imap
mail_plugin_dir(imap): /usr/lib/dovecot/modules/imap
mail_plugin_dir(pop3): /usr/lib/dovecot/modules/pop3
lda:
postmaster_address: root@ns220190.ovh.net
mail_plugin_dir: /usr/lib/dovecot/modules/lda
auth_socket_path: /var/run/dovecot/auth-master
auth default:
passdb:
driver: sql
args: /etc/dovecot/dovecot-mysql.conf
userdb:
driver: sql
args: /etc/dovecot/dovecot-mysql.conf
socket:
type: listen
client:
path: /var/spool/postfix/private/auth
mode: 432
user: postfix
group: postfix
master:
path: /var/run/dovecot/auth-master
mode: 384
user: MAILDIR
Dernière modification par esaaix (Le 14/01/2014, à 12:14)
Hors ligne
#2 Le 10/01/2014, à 14:00
- tiramiseb
Re : [Résolu] Roundcube authentification failed avec postfix-dovecot
Salut,
De son côté le log de postfix ne renvoie aucun message par rapport à cette tentative.
C'est normal, vu que l'IMAP n'est pas du tout géré par Postfix.
-----
Tout me semble correct sur ton serveur.
La chaîne d'authentification, « AHJlbmF1Z5jb3Vydm9pc2llcgBrNHFLSGpnaA== », ne peut pas être décodée : l'as-tu volontairement rendue erronée (pour cacher un mot de passe) ?
Le début de cette chaîne, une fois décodé en base64, donne « \x00renau », donc « renau » précédé d'un zéro binaire. C'est bizarre, ce zéro binaire.
Es-tu vraiment bien sûr que l'authentification est bien faite ? Pas de faute de frappe ?
As-tu réessayé en retapant tout ?
Es-tu sûr qu'il faut s'authentifier avec l'adresse e-mail et pas simplement avec le username ?
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#3 Le 10/01/2014, à 14:57
- esaaix
Re : [Résolu] Roundcube authentification failed avec postfix-dovecot
La chaîne d'authentification, « AHJlbmF1Z5jb3Vydm9pc2llcgBrNHFLSGpnaA== », ne peut pas être décodée : l'as-tu volontairement rendue erronée (pour cacher un mot de passe) ?
Le début de cette chaîne, une fois décodé en base64, donne « \x00renau », donc « renau » précédé d'un zéro binaire. C'est bizarre, ce zéro binaire.
Es-tu vraiment bien sûr que l'authentification est bien faite ? Pas de faute de frappe ?
As-tu réessayé en retapant tout ?
Es-tu sûr qu'il faut s'authentifier avec l'adresse e-mail et pas simplement avec le username ?
Effectivement j'ai tronqué la chaîne.
La bonne, décodée en base64 (via un décodeur en ligne) donne : ?username?password (où les ? sont des caratères mal transcrits, je ne sais si cela a de l'importance...)
Et oui je demande l'adresse mail complète pour l'identification.
Edit : décodé avec bse64 cela me donne username@domain.tld.password
et que j'essaie avec le username simple ou le mail complet cela ne change rien...
Dernière modification par esaaix (Le 10/01/2014, à 15:04)
Hors ligne
#4 Le 10/01/2014, à 15:15
- tiramiseb
Re : [Résolu] Roundcube authentification failed avec postfix-dovecot
où les ? sont des caratères mal transcrits, je ne sais si cela a de l'importance...
Peut-être.
Là je n'ai pas le temps de m'y pencher. Je ne vois pas trop vers où tu pourrais te diriger pour trouver une solution.
En tout cas la conf côté serveur me semble très bien. Je n'ai pas lu en détails la conf de roundcube.
Sébastien Maccagnoni - https://www.maccagnoni.eu - https://www.domotego.com
Hors ligne
#5 Le 10/01/2014, à 15:22
- esaaix
Re : [Résolu] Roundcube authentification failed avec postfix-dovecot
où les ? sont des caratères mal transcrits, je ne sais si cela a de l'importance...
Peut-être.
Là je n'ai pas le temps de m'y pencher. Je ne vois pas trop vers où tu pourrais te diriger pour trouver une solution.
En tout cas la conf côté serveur me semble très bien. Je n'ai pas lu en détails la conf de roundcube.
Pas de problème si tu as besoin d'un peu de temps pour regarder le reste, je trouve déjà super que tu ais répondu aussi rapidement.
Les caractères non transcrits sont autour du username (ou du mail, selon), mais l'utilisation de base64 -d me retourne une transcription propre : usernamepassword ou username@domain.tldpassword
Donc je ne crois pas qu'il y ait un soucis côté login/pass, surtout pour ce test je fais du copier/coller pour être sûr d'éviter les fautes de frappe.
Hors ligne
#6 Le 12/01/2014, à 21:20
- Pseudo supprimé
Re : [Résolu] Roundcube authentification failed avec postfix-dovecot
en telnet local sur le serveur
Le telnet est un peu le test de vérité. Si ton authentification fonctionne en telnet, et à fortiori avec thunderbird, comme c'est la cas. Cela exclut un problème de conf lié au serveur mais un problème avec le client MUA, roundcube.
A première vue,
$rcmail_config['default_host'] = array(
....
'imap.free.fr:143' => 'FREE',
'ssl://imap.gmail.com:993' => 'GMAIL',
'imap.gmx.com:143' => 'GMX',
'ssl://imap.orange.fr:993' => 'ORANGE',
'imap.sfr.fr:143' => 'SFR',
'ssl://imap.domain.tld:993' => 'mondomaine',
'mail.domain2.tld:143' => 'monautredomaine',
'mail.domain3.tld:143 => 'mon3emedomaine',
'ssl://imap.mail.yahoo.com:993' => 'YAHOO');
ton autre array est à remettre à la valeur par défaut
trois domaines avec MX sont configurés
mydestination=
dans transport_maps avec
domain.tld :
domain2.tld agent_transport:
domain3.tld agent_transport:
sous.domain.tld agent_transport:
list.domain2.tld mailman:
...
_ A toi de tester, agent_transport avec les propostions suivantes [":", "local:", "virtual:", "mailman:", "autre:"]
_ les 5 domaines de messagerie ont un mx enregistré
host -t mx <domain.tld>
_ enfin, fixer les recipients avec relay_recipient_maps = query sql de tous les recipients valides.
_ voir également pflogsumm, pour les statistiques et les temps.
#7 Le 13/01/2014, à 11:28
- esaaix
Re : [Résolu] Roundcube authentification failed avec postfix-dovecot
en telnet local sur le serveur
Le telnet est un peu le test de vérité. Si ton authentification fonctionne en telnet, et à fortiori avec thunderbird, comme c'est la cas. Cela exclut un problème de conf lié au serveur mais un problème avec le client MUA, roundcube.
A première vue,
$rcmail_config['default_host'] = array( .... mydestination = localhost.hostname, localhost, list.mondomaine.tld 'imap.free.fr:143' => 'FREE', 'ssl://imap.gmail.com:993' => 'GMAIL', 'imap.gmx.com:143' => 'GMX', 'ssl://imap.orange.fr:993' => 'ORANGE', 'imap.sfr.fr:143' => 'SFR', 'ssl://imap.domain.tld:993' => 'mondomaine', 'mail.domain2.tld:143' => 'monautredomaine', 'mail.domain3.tld:143 => 'mon3emedomaine', 'ssl://imap.mail.yahoo.com:993' => 'YAHOO');
curieux, sur plusieurs tutos ils n'indiquaient que tls://localhost ou localhost, ce qui me paraissait logique vu que roundcube est sur le serveur il devrait donc se connecter en local, non ?
ton autre array est à remettre à la valeur par défaut
trois domaines avec MX sont configurés
mydestination=
dans transport_maps avec
domain.tld : domain2.tld agent_transport: domain3.tld agent_transport: sous.domain.tld agent_transport: list.domain2.tld mailman: ...
_ A toi de tester, agent_transport avec les propostions suivantes [":", "local:", "virtual:", "mailman:", "autre:"]
Donc je suis tout de même obligé de modifier la config de postfix.
Si je comprends bien à la place d'agent_transport j'essaie avec ":", "local", etc.
Est-ce qu'il faut mettre "virtual" littéralement (est-ce une instruction) ?
Ou cela correspond-il à un domaine virtuel en base de données ?
Ensuite comme postfix fonctionne bien sur mes trois domaines, pareil pour mailman et que seul roundcube déconne, est-ce que cela ne va pas invalider ma config postfix actuelle, puisque dans mydestination j'avais mydestination = localhost.hostname, localhost, list.mondomaine.tld et seul list.mondomaine.tld mailman: était inscrit dans le fichier transport.
Sinon tous mes domaines, les boites mails et les aliases de mail sont virtualisés en base de données.
Comme mon serveur de mail et mailman sont en prod je préfère éviter les fausses manip.
_ les 5 domaines de messagerie ont un mx enregistré
host -t mx <domain.tld>
_ enfin, fixer les recipients avec relay_recipient_maps = query sql de tous les recipients valides.
_ voir également pflogsumm, pour les statistiques et les temps.
Tous mes domaines ont bien un MX sur smtp.mondomaine.tld
Par contre je ne m'étais pas servi du tout du relay_recipient_maps, j'ai vu qu'il sert à rejeter les utilisateurs non listés, et je ne vois pas trop à quoi il me servirait dans le cadre du roundcube. Pour moi seuls mes utilisateurs listés peuvent se connecter et mon postfix ne fait pas du tout de relais.
Merci pour les précisions.
R.C.
Hors ligne
#8 Le 13/01/2014, à 18:47
- Pseudo supprimé
Re : [Résolu] Roundcube authentification failed avec postfix-dovecot
tu regarderas la doc de roundcube, http://trac.roundcube.net/wiki/Howto_Co … ltidomains
Setting 'username_domain' will make Roundcube append the correct domain part if a user only logs in with its user name (e.g. 'user' instead of user@domain1.com).
1/Roundcube, attend lorsque il y a une méthode avec login=user ou assimilé (type auth_username_format = %Ln), un fichier de configuration par domaine de messagerie. Ton array de username_domain, à mon avis, est invalide et renvoie null. Cela expliquerait que la requête est incomplète (user=renau)
2/En revanche, pas de soucis avec une méthode login=user@domain.tld. 1 seul fichier de conf, pour tous les domaines de messagerie. (voir post précédent $rcmail_config['default_host'] ). L'authentification porte sur user@domain.tld
Donc je suis tout de même obligé de modifier la config de postfix.
non pas de tout. C'est tout fonctionne, il y a aucune raison de casser toute la barraque.
Il manque
smtpd_sasl_type = dovecot
#9 Le 14/01/2014, à 12:12
- esaaix
Re : [Résolu] Roundcube authentification failed avec postfix-dovecot
tu regarderas la doc de roundcube, http://trac.roundcube.net/wiki/Howto_Co … ltidomains
Setting 'username_domain' will make Roundcube append the correct domain part if a user only logs in with its user name (e.g. 'user' instead of user@domain1.com).
1/Roundcube, attend lorsque il y a une méthode avec login=user ou assimilé (type auth_username_format = %Ln), un fichier de configuration par domaine de messagerie. Ton array de username_domain, à mon avis, est invalide et renvoie null. Cela expliquerait que la requête est incomplète (user=renau)
2/En revanche, pas de soucis avec une méthode login=user@domain.tld. 1 seul fichier de conf, pour tous les domaines de messagerie. (voir post précédent $rcmail_config['default_host'] ). L'authentification porte sur user@domain.tld
Donc je suis tout de même obligé de modifier la config de postfix.
non pas de tout. C'est tout fonctionne, il y a aucune raison de casser toute la barraque.
Il manque
smtpd_sasl_type = dovecot
Ok c'est bon, tout fonctionne.
Je refais un point global, ça peut servir à d'autres.
Dans mon /etc/postfix/main.cf je n'ai pas la ligne smtpd_sasl_type = dovecot et cela fonctionne bien comme ça,
lorsque je l'ai insérée elle m'a généré une erreur au redémarrage de postfix.
Donc au final je n'ai rien touché du côté de Postfix, que ce soit dans le main.cf ou dans le fichier transport.
Mon serveur travaille avec des domaines et des utilisateurs virtuels, et tout fonctionne bien comme ça.
Pour ce qui est de RoundCube, j'ai refait un test d'installation, juste en mettant le flag enable_installer à true.
En retournant sur la page d'install, par défaut url_de_roundcube/installer/, j'ai retesté mon IMAP et mon SMTP
En multidomaine j'utilise $rcmail_config['default_host'] = 'ssl://localhost' pour le IMAP et $rcmail_config['smtp_server'] = 'localhost' pour le SMTP et cela fonctionne très bien.
Le test passé je suis maintenant sûr que mes config IMAP et SMTP sont les bonnes.
Au final même si mon RoundCube est multi-domaine je n'ai pas besoin de faire des tableaux car tous mes domaines sont hébergés sur le même serveur. Mes utilisateurs n'auront qu'à rentrer leur email complet pour leur login, et comme je fais une authentification avec l'email complet aussi bien pour l'IMAP que pour le SMTP, ça m'arrange.
Pour ce qui est de l'authentification, j'avais bêtement basculé le flag auto_create_user à false, croyant que cela permettait de créer des nouveaux comptes mails à la volée. Que nenni ! Et cela m'apprendra à bien lire les docs !!
Ce flag permet juste à RoundCube d'enregistrer dans sa base les utilisateurs qui n'avaient pas encore tenté de se loguer. Il faut donc bien le laisser à true.
C'était tout bête, mais voilà j'ai tourné autour du pot durant trois jours...
Y a des choses comme ça.
Hors ligne
#10 Le 15/01/2014, à 21:44
- Pseudo supprimé
Re : [Résolu] Roundcube authentification failed avec postfix-dovecot
Simple remarque hors configuration roundcube;
lorsque je l'ai insérée elle m'a généré une erreur au redémarrage de postfix.(smtpd_sasl_type = dovecot)
oui, parce que il manquait aussi
smtpd_sasl_path = private/auth
C'est quand même bizarre ton authentification smtp. Je ne sais pas comment tu fais tes tests, mais permit_mynetworks valide avant le sasl, en localhost. Côté Dovecot, OK, pas de problème d'après la conf, mais côté postfix, je ne vois pas comment il peut savoir comment traiter l'authentification, hors permit_mynetworks, puisque les valeurs par défaut sont
smtpd_sasl_path = smtpd
smtpd_sasl_type = cyrus
tu regarderas tes valeurs, par curiosité, de
sudo postconf -n smtpd_sasl_path
sudo postconf -n smtpd_sasl_type
sudo postconf -d smtpd_sasl_path
sudo postconf -d smtpd_sasl_type
alors que tu as
smtpd_sasl_auth_enable = yes
Je serai curieux de savoir si le smtp fonctionne avec la proposition suivante
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, .....
smtpd_client_restrictions = permit_mynetworks
smtpd_sender_restrictions = permit_mynetworks
#11 Le 16/01/2014, à 15:33
- esaaix
Re : [Résolu] Roundcube authentification failed avec postfix-dovecot
Simple remarque hors configuration roundcube;
lorsque je l'ai insérée elle m'a généré une erreur au redémarrage de postfix.(smtpd_sasl_type = dovecot)
oui, parce que il manquait aussi
smtpd_sasl_path = private/auth
C'est quand même bizarre ton authentification smtp. Je ne sais pas comment tu fais tes tests, mais permit_mynetworks valide avant le sasl, en localhost. Côté Dovecot, OK, pas de problème d'après la conf, mais côté postfix, je ne vois pas comment il peut savoir comment traiter l'authentification, hors permit_mynetworks, puisque les valeurs par défaut sont
smtpd_sasl_path = smtpd smtpd_sasl_type = cyrus
tu regarderas tes valeurs, par curiosité, de
sudo postconf -n smtpd_sasl_path sudo postconf -n smtpd_sasl_type sudo postconf -d smtpd_sasl_path sudo postconf -d smtpd_sasl_type
alors que tu as
smtpd_sasl_auth_enable = yes
Je serai curieux de savoir si le smtp fonctionne avec la proposition suivante
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, .....
smtpd_client_restrictions = permit_mynetworks
smtpd_sender_restrictions = permit_mynetworks
Pour les retours de postconf j'ai les valeurs par défaut : smtpd et cyrus
Ok je vais essayer de voir ce que les modifs des restrictions donnent, et je ferais un retour.
Mais à un moment de calme, trop de trafic durant la semaine
Hors ligne