PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem:Postfix/Courier-Imap/Mysql Mailabruf



joe1681978
22.12.06, 12:20
Hallo,

im habe Suse 9.1pro mit Mysql 5.0.27 am laufen.
Darauf wollt ich einen Mailserver setzen.
mit der Anleitung http://www.linuxforen.de/forums/showpost.php?p=1372925&postcount=4
bin ich sehr weit gekommen, so klappt es von den Windows-Clients aus Emails zu verschicken.
Emails kommen hier auch an und werden von Postfix direkt ins richtige Maildir Verzeichnis weitergeleitet, wo ich mir die Mails auch vom Linux Rechner aus anschauen kann.
Wenn ich aber versuche vom Windows-Client mit Mozilla Thunderbird auf das Imap-Verzeichnis zukommen, dann bekomm ich folgende Fehlermeldungen:

/var/log/mail:
Dec 22 12:49:44 Server imapd: LOGIN FAILED, user=joachim, ip=[::ffff:192.168.7.101]
Dec 22 12:49:44 Server imapd: authentication error: Input/output error

/var/log/mysql/mysql.log:
061222 12:49:44 49 Connect daten@localhost on
49 Quit

Wenn Mails ankommen steht in der /var/log/mysql/mysql.log:
061222 12:50:51 50 Connect daten@localhost on mailbase
50 Query SELECT maildir FROM mailuser WHERE account='joachim'

Somit fehlt bei dem Mailabruf ja die Übergabe der Database ("mailbase") und somit dann auch der Fehler.

Hat einer eine Idee was noch fehlt?

Vielen Dank schonmal.
Grüße
Joachim


authmysqlrc:

MYSQL_SERVER localhost
MYSQL_USERNAME daten
MYSQL_PASSWORD xxx
MYSQL_SOCKET /var/lib/mysql/mysql.sock
MYSQL_PORT 3306
MYSQL_OPT 0
MYSQL_DATABASE mailbase
MYSQL_USER_TABLE mailuser
MYSQL_CLEAR_PWFIELD password
DEFAULT_DOMAIN xxx.de
MYSQL_UID_FIELD uid
MYSQL_GID_FIELD gid
MYSQL_LOGIN_FIELD account
MYSQL_HOME_FIELD home
MYSQL_NAME_FIELD account
MYSQL_MAILDIR_FIELD maildir
------------------------------------

authdaemonrc:

authmodulelist="authmysql"
authmodulelistorig="authmysql"
daemons=10
authdaemonvar=/var/run/authdaemon.courier-imap
DEBUG_LOGIN=1
DEFAULTOPTIONS=""
LOGGEROPTS=""
----------------------

mailbox.mysql:

user=daten
password=xxx
host=localhost
dbname=mailbase
table=mailuser
select_field=maildir
where_field=account
----------------------

ids.mysql:

user=daten
password=xxx
host=localhost
dbname=mailbase
table=mailuser
select_field=uid
where_field=account
----------------------

main.cf

command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix

unknown_local_recipient_reject_code = 550
debug_peer_level = 2
debugger_command =
PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
xxgdb $daemon_directory/$process_name $process_id & sleep 5
sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
setgid_group = maildrop
html_directory = /usr/share/doc/packages/postfix/html
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/packages/postfix/samples
readme_directory = /usr/share/doc/packages/postfix/README_FILES
biff = no
mail_spool_directory = /var/mail
canonical_maps = hash:/etc/postfix/canonical
virtual_maps = hash:/etc/postfix/virtual
relocated_maps = hash:/etc/postfix/relocated
transport_maps = hash:/etc/postfix/transport
sender_canonical_maps = hash:/etc/postfix/sender_canonical

masquerade_classes = envelope_sender, header_sender, header_recipient

#so heiß mein Rechner wie bei der Konfiguration der Netzwerkkarte vergeben
myhostname = Server.xxx.de
mydomain = xxx.de

mydestination = $myhostname,$mydomain, localhost, localhost.$mydomain

#Dieser Eintrag deckt den Bereich von 192.168.0.0 - 192.168.0.255,
#also kön jetzt alle Rechner in diesem Bereich Mails ünseren Server per SMTP senden.
#Sonst bitte an euer Netzwerk anpassen! z.B. 192.168.1.0/24

mynetworks = 192.168.7.0/24, 127.0.0.0/8

smtpd_banner = $myhostname ESMTP

#IP vom Router
proxy_interfaces = 192.168.7.1

program_directory = /usr/lib/postfix
inet_interfaces = all
masquerade_domains = $mydomain
masquerade_exceptions = root

defer_transports =
disable_dns_lookups = no

#mein smtp Ausgang smtp Server vom Internetdienstanbieter
#relayhost = [smtp.netcologne.de]

mailbox_command =
mailbox_transport =
strict_rfc821_envelopes = no
smtp_use_tls = no
smtp_sasl_auth_enable = no
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd

smtpd_sasl_auth_enable = yes
smtpd_tls_auth_only = no
#smtpd_sender_restrictions = hash:/etc/postfix/access
smtpd_client_restrictions =
smtpd_helo_required = no
smtpd_helo_restrictions =
#Wer darf senden?
smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject _unauth_destination
smtpd_use_tls = no
broken_sasl_auth_clients = yes
#SMTPD Sicherheit
smtpd_junk_command_limit = 100
smtpd_sasl_security_options =
smtpd_sasl_local_domain =
smtpd_recipient_limit = 50
smtpd_timeout = 300s
alias_maps = hash:/etc/aliases

bounce_size_limit = 100000
# max. Groesse einer Mail 10MB
message_size_limit = 10000000
# max. Groesse einer Mailqueue 200MB
mailbox_size_limit = 200000000
# 100MB - mindestens freier Plattenplatz
queue_minfree = 100000000

append_dot_mydomain = no
queue_directory = /var/spool/postfix
mail_owner = postfix

# hans ist hier nur ein Beispiel!
double_bounce_sender = joachim@localhost
empty_address_recipient = joachim@localhost
#relay_domains = $mydestination
#relay_domains_reject_code = 554
#Virtuelle Mailbox
virtual_mailbox_base =/var/spool/maildirs
virtual_mailbox_maps = mysql:/etc/postfix/mailbox.mysql
virtual_maps = hash:/etc/postfix/virtual
virtual_minimum_uid = 5000
virtual_uid_maps = mysql:/etc/postfix/ids.mysql
virtual_gid_maps = mysql:/etc/postfix/ids.mysql

joe1681978
22.12.06, 17:57
habs's geschafft, in der authmysqlrc war bei
"MYSQL_DATABASE mailbase " ein Leerzeichen hinter mailbase

Somit wurde versuchte auf die Datenbank "mailbase." zuzugreifen, die natürlich nicht existiert.