[courier-imap]Geen auth - no login

Pagina: 1
Acties:

  • Scharnout
  • Registratie: November 2000
  • Laatst online: 24-07 12:41
Ik ben nu al een redelijk tijdje bezig met een e-mailserver en ik loop nog vast op een paar dingen.

1. Mijn Courier-imap wil kosten wat het kost niet inloggen.

2. Mijn postfix wil niet via virtual domains in een mysql table werken.

Deze problemen hebben misschien wel te maken met elkaar omdat ze beide gebruik maken van dezelfde maildirs en dezelfde database.

Wat gaat er fout?

Wat belangrijke passages uit wat configfiles:

authdaemonrc:
code:
1
2
authmodulelist="authmysql"
version="authdaemond.mysql"

authmysqlrc:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
MYSQL_SERVER localhost
MYSQL_USERNAME mailserver
MYSQL_PASSWORD password
MYSQL_SOCKET /var/run/mysqld/mysqld.sock #ja hij staat hier echt!
MYSQL_DATABASE maildb
MYSQL_USER_TABLE users
#MYSQL_CRYPT_PWFIELD crypt
MYSQL_CLEAR_PWFIELD clear
MYSQL_UID_FIELD uid
MYSQL_GID_FIELD gid
MYSQL_LOGIN_FIELD id
MYSQL_HOME_FIELD home
MYSQL_NAME_FIELD name
MYSQL_MAILDIR_FIELD maildir
MYSQL_WHERE_CLAUSE 'imapok=1 AND bool1=1 AND bool2=1'

main.cf
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
append_dot_mydomain = no
myhostname = newton
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = schoutrop.nl, newton, localhost.localdomain, localhost, $transport_maps
relayhost =
mynetworks = 127.0.0.0/8
mailbox_command =
mailbox_size_limit = 0
recipient_delimiter = +

#added for MySQL
transport_maps=mysql:/etc/postfix/transport.cf
virtual_mailbox_maps=mysql:/etc/postfix/mysql_virt.cf
virtual_uid_maps=mysql:/etc/postfix/uids.cf
virtual_gid_maps=mysql:/etc/postfix/gids.cf
virtual_mailbox_base=/
virtual_maps =mysql:/etc/postfix/virtual.cf

De users tabel-output:
code:
1
2
3
4
5
6
mysql> select * from users where id='arno@schoutrop.nl';
+-------------------+-------------------+------------------+---------+------+------+------+------+--------------+-------------+--------+-------+-------+
| id            | address        | crypt        | clear   | name | uid  | gid  | home | domain   | maildir     | imapok | bool1 | bool2 |
+-------------------+-------------------+------------------+---------+------+------+------+------+--------------+-------------+--------+-------+-------+
| arno@schoutrop.nl | arno@schoutrop.nl | 173e11eb39bac80f | Password | Arno | 1001 | 5001 | /    | schoutrop.nl | /home/mail/ |    1 |     1 |     1 |
+-------------------+-------------------+------------------+---------+------+------+------+------+--------------+-------------+--------+-------+-------+

En enkele logs ter verduidelijking

Mijn mysql.log:
code:
1
2
3
8 Connect     mailserver@localhost on
8 Init DB     maildb
8 Query  SELECT id, "", clear, uid, gid, home, maildir, "", name FROM users WHERE id = "arno@schoutrop.nl" AND ('imapok=1 AND bool1=1 AND bool2=1')

In mijn mail.log staat als ik een mail naar dat adres verstuur hetvolgende als ik het domein op virutal instel:
code:
1
2
Jul 19 09:29:56 newton postfix/qmgr[344]: A1CBDFE47: from=<Order@voorverkoop.net>, size=1946, nrcpt=1 (queue active)
Jul 19 09:29:56 newton postfix/virtual[790]: A1CBDFE47: to=<arno@schoutrop.nl>, relay=virtual, delay=31774, status=deferred (maildir delivery failed: create ///home/mail/tmp/1027063779.790_1.newton: Permission denied)

Als ik hem op local instel doet hij het wel.

And Bob's your uncle ...


  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
Ik had ook een dergelijk probleem...

Kijk eens of het werkt vanneer je de UID een waarde van 2000 geeft. Het lijkt wel op dat, als ik hem laag zet, hij het niet doet...
FF eten... komzo terug

  • Scharnout
  • Registratie: November 2000
  • Laatst online: 24-07 12:41
Helaas, werkt ook niet.

Even voor de goede orde. Het inloggen doe ik als volgt:
code:
1
2
3
4
5
6
7
newton:~# telnet localhost 143
Trying 127.0.0.1...
Connected to newton.
Escape character is '^]'.
* OK Courier-IMAP ready. Copyright 1998-2002 Double Precision, Inc.  
. login arno@schoutrop.nl password
. NO Login failed.

Dat is toch wel goed? (vanaf mijn outlook werkt het ook niet)

1e post de mail.log nog ff geedit

And Bob's your uncle ...


  • Scharnout
  • Registratie: November 2000
  • Laatst online: 24-07 12:41
schopje

And Bob's your uncle ...


  • Scharnout
  • Registratie: November 2000
  • Laatst online: 24-07 12:41
hej. Ik blijf gewoon schoppen hoor!

And Bob's your uncle ...


  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
ik heb op deze manier mijn database gemaakt (veel minder onnodige velden dan jij)
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#First Create the Database
CREATE DATABASE SERVER_mailconfig;
use SERVER_mailconfig;
#
# Table structure for table 'users'
#
CREATE TABLE users (
  idnr int NOT NULL auto_increment,
  id varchar(128) NOT NULL default '',
  password varchar(128) NOT NULL default '',
  realname varchar(128) NOT NULL default '',
  uid smallint(5) unsigned NOT NULL default '65534',
  gid smallint(5) unsigned NOT NULL default '208',
  home varchar(128) NOT NULL default '/',
  maildir varchar(255) NOT NULL default '',
  imapon tinyint(3) unsigned NOT NULL default '1',
  PRIMARY KEY  (id),
  UNIQUE KEY id (id),
  KEY id_2 (id),
  KEY idnr(idnr)
) TYPE=MyISAM;

CREATE TABLE aliases (
  idnr int NOT NULL auto_increment,
  mailalias varchar(128) NOT NULL default '',
  mailto BLOB NOT NULL default '',
  PRIMARY KEY  (mailalias),
  UNIQUE KEY mailalias (mailalias),
  KEY alias_2 (mailalias),
  KEY idnr(idnr)
) TYPE=MyISAM;

in mijn database staat iets als:
code:
1
2
3
4
5
6
7
8
+------+--------------------------+------------+----------------+------+-----+------+------------------------------------------+--------+
| idnr | id              | password   | realname     | uid  | gid | home | maildir                      | imapon |
+------+--------------------------+------------+----------------+------+-----+------+------------------------------------------+--------+
|    1 | bart@beumer.xs4all.nl    | ***   | Bart Beumer    | 2000 | 207 | /    | /*************/bart@beumer.xs4all.nl/    | 1 |
|    2 | *******@beumer.xs4all.nl | ***   | ******* Beumer | 2000 | 207 | /    | /*************/*******@beumer.xs4all.nl/ | 1 |
|    3 | *****@beumer.xs4all.nl   | ***   | ***** Beumer   | 2000 | 207 | /    | /*************/*****@beumer.xs4all.nl/   | 1 |
|    4 | ****@beumer.xs4all.nl    | ***   | **** Beumer    | 2000 | 207 | /    | /*************/****@beumer.xs4all.nl/    | 1 |
+------+--------------------------+------------+----------------+------+-----+------+------------------------------------------+--------+

ff wat sensuur, maar je snap dat wel :P

aantal dingen: mijn userID is gelijk aan een BESTAANDE user, die ook in die directory mag schrijven. Verder is het belangrijk dat je bij de maildir eindigd met een "/", doe je dat niet, dan maakt postfix er een file van en dan kan courier er niks mee.

mijn main.cf voor courier:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
# LOCAL PATHNAME INFORMATION
queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/lib/postfix

# QUEUE AND PROCESS OWNERSHIP
mail_owner = postfix
#default_privs = nobody

# INTERNET HOST AND DOMAIN NAMES
myhostname = beumer.xs4all.nl
mydomain = beumer.xs4all.nl
append_dot_mydomain = no
# SENDING MAIL
myorigin = $mydomain

# RECEIVING MAIL
inet_interfaces = all
mydestination = $mydomain

# TRUST AND RELAY CONTROL
mynetworks = 192.168.1.0/24

# DELIVERY TO MAILBOX
home_mailbox = /var/mailboxes/
#mail_spool_directory = /var/mail/
mail_spool_directory = /var/spool/mail/

# SHOW SOFTWARE VERSION OR NOT
smtpd_banner = $mydomain ESMTP $mail_name

# PARALLEL DELIVERY TO THE SAME DESTINATION
local_destination_concurrency_limit = 2
default_destination_concurrency_limit = 5

# DEBUGGING CONTROL
debug_peer_level = 2

debugger_command =
       PATH=/usr/bin:/usr/X11R6/bin
       xxgdb $daemon_directory/$process_name $process_id & sleep 5

# BART VIRTUALS
local_transport = virtual
virtual_mailbox_base = /
virtual_uid_maps = mysql:/etc/postfix/uids.cf
virtual_gid_maps = mysql:/etc/postfix/gids.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql_virt.cf
virtual_maps = mysql:/etc/postfix/virtual.cf

mijn uids.cf file:
code:
1
2
3
4
5
6
7
user = postfix
password = ******************
dbname = SERVER_mailconfig
table = users
select_field = uid
where_field = id
hosts = localhost

nou, mijn courier config (ofwel authmysqlrc file)
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
MYSQL_SERVER        localhost
MYSQL_USERNAME      postfix
MYSQL_PASSWORD      ****************************

MYSQL_SOCKET        /var/run/mysqld/mysqld.sock

#MYSQL_PORT      0

MYSQL_OPT          0

MYSQL_DATABASE      SERVER_mailconfig

MYSQL_USER_TABLE      users
#MYSQL_CRYPT_PWFIELD    crypt
MYSQL_CLEAR_PWFIELD     password
DEFAULT_DOMAIN      beumer.xs4all.nl
MYSQL_UID_FIELD    uid
MYSQL_GID_FIELD    gid
MYSQL_LOGIN_FIELD    id
MYSQL_HOME_FIELD      home
MYSQL_NAME_FIELD      realname
MYSQL_MAILDIR_FIELD     maildir
# MYSQL_QUOTA_FIELD     quota
#MYSQL_WHERE_CLAUSE     imapon='1'

Let ook op dat de PID-file die je in deze config aangeeft ook echt bestaat! (mijn fout in het begin |:( )

kijk ook ff in je authdaemonrc file, daar moet staan iets van:
code:
1
2
3
...
authmodulelist=" **andere opties** authmysql "
...

er moet dus authmysql bijstaan

Verder kan ik je niet echt helpen, ik heb het echt net aan de praat, met een redelijke dosis geluk. Ik hoop dat jou het ook lukt.

  • Scharnout
  • Registratie: November 2000
  • Laatst online: 24-07 12:41
al die tijd voor moedern**kend niets zeg.

|:(|:(|:(|:(|:(|:(|:(|:(|:(

weet je wat het nou was. Die WHERE-clause ... djjjeeeeezus. Nou goed. Het werkt! Kan ik eindelijk eens echt verder gaan linuxxen!

And Bob's your uncle ...


  • Bart B
  • Registratie: Juli 2000
  • Laatst online: 06-04 17:55
hehe... ik had ook zoiets :)

Verwijderd

:) zo ik heb ook ff hulp nodig met precies de zelfde errors...

Maar wat moet er anderes aan de where-clause dan. Misschien ligt het bij mij daar ook aan.

  • Scharnout
  • Registratie: November 2000
  • Laatst online: 24-07 12:41
Ik heb gewoon die hele where-clause eruit gelaten. Werkt namelijk ook prima :)

Als je nog problemen hebt, mail me maar op scharnout@hotmail.com

And Bob's your uncle ...

Pagina: 1