Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#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 ?

Hors ligne

#3 Le 10/01/2014, à 14:57

esaaix

Re : [Résolu] Roundcube authentification failed avec postfix-dovecot

tiramiseb a écrit :

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.

Hors ligne

#5 Le 10/01/2014, à 15:22

esaaix

Re : [Résolu] Roundcube authentification failed avec postfix-dovecot

tiramiseb a écrit :

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

Titouan a écrit :

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 ?

Titouan a écrit :

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.

Titouan a écrit :

_ 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

Titouan a écrit :

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

Titouan a écrit :

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 smile

Hors ligne