Edit /etc/default/perdition
xen11:~# cat /etc/default/perdition | grep IMAP4_FLAGS
# by POP3_FLAGS, POP3S_FLAGS, IMAP4_FLAGS or IMAP4S_FLAGS
IMAP4_FLAGS="-m /etc/perdition_lookup.gdbm.db --query_key '\d' "
xen11:~# /etc/init.d/perdition restart
Stopped /usr/sbin/perdition.pop3 (pid 3458).
No /usr/sbin/perdition.pop3s found running; none killed.
No /usr/sbin/perdition.imap4 found running; none killed.
No /usr/sbin/perdition.imaps found running; none killed.
Starting /usr/sbin/perdition.pop3...
Starting /usr/sbin/perdition.pop3s...
Starting /usr/sbin/perdition.imap4...
Starting /usr/sbin/perdition.imaps...
xen11:~# echo "tag login satimis(a)satimis.com mypasswd" | nc
143
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE
THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA AUTH=CRAM-MD5
AUTH=CRAM-SHA1IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready.
Copyright 1998-2005 Double Precision, Inc. See COPYING for
distribution information.
tag NO Login failed.
hanging here.
xen11:~# tail /var/log/mail.log
Dec 3 15:58:01 xen11 imapd: LOGIN: ip=[::ffff:192.168.0.211],
username=satimis(a)satimis.com
Dec 3 15:58:01 xen11 imapd: LOGIN: ip=[::ffff:192.168.0.211],
password=mypasswd
Dec 3 15:58:01 xen11 authdaemond: received auth request, service=imap,
authtype=login
Dec 3 15:58:01 xen11 authdaemond: authmysql: trying this module
Dec 3 15:58:01 xen11 authdaemond: SQL query: SELECT id, "", clear,
uid, gid, home, concat(home,'/',maildir), "", name, "" FROM
usersWHERE
id = "satimis(a)satimis.com" AND (enabled=1)
Dec 3 15:58:01 xen11 authdaemond: supplied password does not match
clearpasswd
Dec 3 15:58:01 xen11 authdaemond: authmysql: REJECT - try next module
Dec 3 15:58:01 xen11 authdaemond: FAIL, all modules rejected
Dec 3 15:58:01 xen11 imapd: LOGIN FAILED, user=satimis(a)satimis.com,
ip=[::ffff:192.168.0.211]
Dec 3 15:58:21 xen11 imapd: Disconnected, ip=[::ffff:192.168.0.211],
time=20
Still fail
B.R.
Stephen L
# Run perdition
# Set to "yes" to run perdition
# Set to any other value to not run perdition
RUN_PERDITION=yes
# Command line parameters to pass to perdition when run in any
mode.
# This is in addition to any mode specific
flags.
# That is, it is in addtion to any command line options supplied
# by POP3_FLAGS, POP3S_FLAGS, IMAP4_FLAGS or IMAP4S_FLAGS
#FLAGS=
# Run an instance of perdition in POP3 mode
# Set to "yes" to run this instance of perdition
# Set to any other valye to not run this instance of perdition
POP3=yes
#Command line parameters to pass to perdition when run in POP3 mode
POP3_FLAGS=
# Run an instance of perdition in POP3S mode
# Set to "yes" to run this instance of perdition
# Set to any other valye to not run this instance of perdition
POP3S=yes
#Command line parameters to pass to perdition when run in POP3S
mode
POP3S_FLAGS=
# Run an instance of perdition in IMAP4 mode
# Set to "yes" to run this instance of perdition
# Set to any other valye to not run this instance of perdition
IMAP4=yes
#Command line parameters to pass to perdition when run in IMAP4
mode
IMAP4_FLAGS=
# Run an instance of perdition in IMAP4S mode
# Set to "yes" to run this instance of perdition
# Set to any other valye to not run this instance of perdition
IMAP4S=yes
#Command line parameters to pass to perdition when run in IMAP4S
mode
IMAP4S_FLAGS=
* end *
TIA
B.R.
Stephen L
> >> For some reason I was thinking about the hints I gave you and
> >> realized
> >> I made a mistake. I forgot to mention that your client needs to
> use
> >> the domain while authenticating. So the test would be:
> >>
> >> $ echo "tag login username@domain password" | nc perdition_host
> 143
> >>
> >> Without the domain (as I had written) perdition cannot resolve
> which
> >> server to connect.
> >
> >
> > Tried again.
> >
> >
> > xen11:~# /etc/init.d/perdition restart
> > Stopped /usr/sbin/perdition.pop3 (pid 2878).
> > No /usr/sbin/perdition.pop3s found running; none killed.
> > No /usr/sbin/perdition.imap4 found running; none killed.
> > No /usr/sbin/perdition.imaps found running; none killed.
> > /usr/sbin/perdition.pop3 already running.
> > Starting /usr/sbin/perdition.pop3s...
> > Starting /usr/sbin/perdition.imap4...
> > Starting /usr/sbin/perdition.imaps...
> >
> >
> > xen11:~# echo "tag login satimis(a)satimis.com x10satimis" | nc
> >
xen11.satimis.com 143
> > * OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE
> > THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA AUTH=CRAM-MD5
> > AUTH=CRAM-SHA1 IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready.
> > Copyright 1998-2005 Double Precision, Inc. See COPYING for
> > distribution information.
> > tag NO Login failed.
> >
> >
> > Hanging here. I have to exit it manually with [Ctrl]+c
> >
> >
> > xen11:~# tail /var/log/mail.log
> > Dec 3 14:37:01 xen11 imapd: LOGIN: ip=[::ffff:192.168.0.211],
> > username=satimis(a)satimis.com
> > Dec 3 14:37:01 xen11 imapd: LOGIN: ip=[::ffff:192.168.0.211],
> > password=mypasswd
> > Dec 3 14:37:01 xen11 authdaemond: received auth request,
> service=imap,
> > authtype=login
> > Dec 3 14:37:01 xen11 authdaemond: authmysql: trying this module
> > Dec 3 14:37:01 xen11 authdaemond: SQL query: SELECT id, "",
clear,
> > uid, gid, home,
concat(home,'/',maildir), "", name, "" FROM
users
> WHERE
> > id = "satimis(a)satimis.com" AND (enabled=1)
> > Dec 3 14:37:01 xen11 authdaemond: supplied password does not
match
> > clearpasswd
> > Dec 3 14:37:01 xen11 authdaemond: authmysql: REJECT - try next
> module
> > Dec 3 14:37:01 xen11 authdaemond: FAIL, all modules rejected
> > Dec 3 14:37:02 xen11 imapd: LOGIN FAILED,
> user=satimis(a)satimis.com,
> > ip=[::ffff:192.168.0.211]
> > Dec 3 14:37:20 xen11 imapd: Disconnected,
> ip=[::ffff:192.168.0.211],
> > time=19
> >
> >
> > Still fail.
> >
> >
> > B.R.
> > Stephen L
> >
> >
> >
> >
> >> On Wed, Dec 3, 2008 at 15:49, Gustavo Luiz Duarte
> >> <gustavold(a)gmail.com> wrote:
> >> > On Wed, Dec 3, 2008 at 15:27, Stephen Liu <satimis(a)yahoo.com>
> >> wrote:
> >> >>
> >> >> --- Gustavo Luiz Duarte <gustavold(a)gmail.com> wrote:
> >> >>
> >> >>> On Wed, Dec 3, 2008 at 12:05, Stephen Liu
<satimis(a)yahoo.com>
> >> wrote:
> >> >>> > Hi Gustavo,
> >> >>> >
> >> >>> >
> >> >>> > I'll make 2 tests;
> >> >>> >
> >> >>> >
> >> >>> > 1)
> >> >>> > test1 - USING TEXT FILE
> >> >>> >
> >> >>> >
> >> >>> > 2)
> >> >>> > test2 - USING MYSQL
> >> >>> >
> >> >>> >
> >> >>> > I have cloned an image of the routing mail server for
test2.
> >> Now
> >> >>> > proceed test1 first.
> >> >>> >
> >> >>> >
> >> >>> > --- Gustavo Luiz Duarte <gustavold(a)gmail.com>
wrote:
> >> >>> >
> >> >>> >> Hi Stephen,
> >> >>> >>
> >> >>> >> You could use the transport table if the string
"smtp:"
> wasn't
> >> >>> there.
> >> >>> >> Do you really want to use mysql for the lookup? If you
have
> >> only 3
> >> >>> >> domain you could use a text file.
> >> >>> >>
> >> >>> >> USING TEXT FILE:
> >> >>> >> $ cat << END > /etc/perdition_lookup.txt
> >> >>> >> satimis.dnsalias.com:192.168.0.209
> >> >>> >> satimis.changeip.net:192.168.0.208
> >> >>> >> satimis.com:192.168.0.210
> >> >>> >> END
> >> >>> >>
> >> >>> >> $ makegdbm /etc/perdition_lookup.gdbm.db <
> >> >>> /etc/perdition_lookup.txt
> >> >>> >>
> >> >>> >> $ perdition -m /etc/perdition_lookup.gdbm.db
--query_key
> "\d"
> >> >>> >
> >> >>> >
> >> >>> > Package installed - perdition-mysql
> >> >>> >
> >> >>> >
> >> >>> > # apt-cache policy perdition-mysql
> >> >>> > perdition-mysql:
> >> >>> > Installed: 1.17-7etch1
> >> >>> > Candidate: 1.17-7etch1
> >> >>> > Version table:
> >> >>> > *** 1.17-7etch1 0
> >> >>> > 500
http://ftp.au.debian.org etch/main Packages
> >> >>> > 500
http://security.debian.org stable/updates/main
> >> Packages
> >> >>> > 100 /var/lib/dpkg/status
> >> >>> >
> >> >>> >
> >> >>> > # cat << END > /etc/perdition_lookup.txt
> >> >>> >> satimis.dnsalias.com:192.168.0.209
> >> >>> >> satimis.changeip.net:192.168.0.208
> >> >>> >> satimis.com:192.168.0.210
> >> >>> >> END
> >> >>> >
> >> >>> >
> >> >>> > # which makegdbm
> >> >>> > /usr/bin/makegdbm
> >> >>> >
> >> >>> >
> >> >>> > # which perdition
> >> >>> > /usr/sbin/perdition
> >> >>> >
> >> >>> >
> >> >>> > # makegdbm /etc/perdition_lookup.gdbm.db <
> >> >>> /etc/perdition_lookup.txt
> >> >>> >
> >> >>> > # perdition -m /etc/perdition_lookup.gdbm.db --query_key
> "\d"
> >> >>> > both without complaint
> >> >>> >
> >> >>> >
> >> >>> > Now I haven't figured out how to test perdition.
There
are
> 2
> >> >>> databases
> >> >>> > running on this routing mail server, MySQL maildb and
> >> >>> > perdition_lookup.gdbm.db. Do I need to stop MySQL maildb
to
> >> test
> >> >>> > perdition? How can the remote mail clients connect their
> mail
> >> >>> servers?
> >> >>> > What server settings shall I use? Please shed me some
> light.
> >> TIA
> >> >>>
> >> >>> No need for stopping you MySQL.
> >> >>>
> >> >>> If everything is wright (I haven't tested, I can have
skipped
> >> >>> something), you can
point your mail clients to the hostname
> where
> >> >>> perdition is installed and use it normally.
> >> >>
> >> >>
> >> >> Sorry I can't resolve how can the mail client (Evolution)
find
> its
> >> >> server over Internet with following settings;
> >> >
> >> > The mail client doesn't know wich server to use. It always
use
> the
> >> > routing server. The routing server redirects it to the
correct
> imap
> >> > server. Make sure your are using the right protocol imap4 or
> >> imap4s.
> >> >
> >> >>
> >> >> Server Type: IMAP
> >> >>
> >> >> Server :
xen11.satimis.com (hostname of the routing mail
server
> >> where
> >> >> perdition is running
> >> >>
> >> >> User: satimis
> >> >>
> >> >>
> >> >> satimis is user of
satimis.com,
satimis.changeip.net and
> >> >>
satimis.dnsalias.com as well as user of the routing mail
> server,
> >> >>
xen11.satimis.com
> >> >>
> >> >>
> >> >> I tried it without success.
> >> >>
> >> >>
> >> >>> Note that perdition's default protocol is pop3. To use
imap
> suply
> >> the
> >> >>> option -P IMAP4
> >> >>
> >> >>
> >> >> xen11:~# /etc/init.d/perdition start
> >> >> /usr/sbin/perdition.pop3 already running.
> >> >> Starting /usr/sbin/perdition.pop3s...
> >> >> Starting /usr/sbin/perdition.imap4...
> >> >> Starting /usr/sbin/perdition.imaps...
> >> >
> >> > How are you configuring perdition? Have you modified your
> >> > /etc/init.d/perdition script to contain the correct
parameters?
> >> >
> >> >>
> >> >>
> >> >> xen11:~# hostname
> >> >>
xen11.satimis.com
> >> >>
> >> >>
> >> >> pop3 is already running. I have to manually run
> >> /etc/init.d/perdition
> >> >> to start pop3s, imap4 and imaps
> >> >>
> >> >>
> >> >>> You can use nc to test it:
> >> >>> $ echo "tag login username password" | nc
perdition_host
143
> >> >>> In username and
password you use valid username and
password
> for
> >> your
> >> >>> real imap server.
> >> >>
> >> >>
> >> >> I suppose running above command on the routing mail server
> where
> >> >> perdition is installed.
> >> >>
> >> >>
> >> >> # echo "tag login satimis mypassword" | nc
xen11.satimis.com
> 143
> >> >> * OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE
> >> >> THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA
> AUTH=CRAM-MD5
> >> >> AUTH=CRAM-SHA1 IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP
> ready.
> >> >> Copyright 1998-2005 Double Precision, Inc. See COPYING
> >> fordistribution
> >> >> information.
> >> >> tag NO Login failed.
> >> >>
> >> >>
> >> >>> For pop3:
> >> >>> $ echo -e "user username\npass password | nc
perdition_host
> 110
> >> >>
> >> >> xen11:~# echo -e "user satimis\npass x11satimis | nc
> >>
xen11.satimis.com
> >> >> 110
> >> >>>
> >> >> waiting for input
> >> >
> >> > You can look at perdition logs to find information about what
is
> >> going on.
> >> >
> >> >>
> >> >>
> >> >>> No special configuration is need for your pop/imap servers.
> Just
> >> >>> assure that they are listening on standard ports.
> >> >>
> >> >>
> >> >> I have only ONE external IP. All ports are forwarded to the
> >> routing
> >> >> mail server except port 53.
> >> >>
> >> >>
> >> >> B.R.
> >> >> Stephen L
> >> >>
> >> >>
> >> >>
> >> >>> []'s
> >> >>> Gustavo Duarte
> >> >>>
> >> >>> >
> >> >>> >
> >> >>> > B.R.
> >> >>> > Stephen
> >> >>> >
> >> >>> >
> >> >>> >
> >> >>> >
> >> >>> >
> >> >>> >
> >> >>> >
> >> >>> >>
> >> >>> >> USING MYSQL:
> >> >>> >> You have some alternatives:
> >> >>> >> 1. Continue with your tblPerdition and populate it, so
that
> >> user
> >> >>> >> column has the domain, hostname column has the localIP
and
> >> port
> >> >>> >> column
> >> >>> >> you leave empty (supposing your real pop/imap servers
> listen
> >> to
> >> >>> >> standard ports).
> >> >>> >>
> >> >>> >> Then you would do (supposing you have mysql perdition
> library
> >> in
> >> >>> >> /usr/lib):
> >> >>> >>
> >> >>> >> perdition -M /usr/lib/libperditiondb_mysql.so.0
--query_key
> >> "\d"
> >> >>> -m
> >> >>> >>
> >>
"<dbhost>:<dbport>:dbPerdition:tblPerdition:perdition:perdition"
> >> >>> >>
> >> >>> >> (substituting <dbhost> and <dbport> by you
db hostname
and
> >> port)
> >> >>> >>
> >> >>> >>
> >> >>> >> 2. Modify your transport table so that the string smtp
and
> >> localIP
> >> >>> >> are
> >> >>> >> in diferent columns. Then you create a view
concatenating
> them
> >> for
> >> >>> >> the
> >> >>> >> postfix query. A bit more complicated but easier to
> maintain
> >> when
> >> >>> you
> >> >>> >> have lots of domains and servers.
> >> >>> >>
> >> >>> >> []'s
> >> >>> >> Gustavo Duarte
> >> >>> >>
> >> >>> >> On Wed, Dec 3, 2008 at 02:28, Stephen Liu
> <satimis(a)yahoo.com>
> >> >>> wrote:
> >> >>> >> > Hi Gustavo,
> >> >>> >> >
> >> >>> >> >
> >> >>> >> >> The URL I sent you has information about
using mysql
as
> >> lookup
> >> >>> >> >> library:
> >> >>> >> >>
>
http://www.vergenet.net/linux/perdition/perditiondb.5.shtml
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > I suppose you're referring to following
section;
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > MYSQL
> >> >>> >> > This map library can be used by specifying the
full
path
> to
> >> the
> >> >>> >> library
> >> >>> >> > using the -M|--map_library command line option
or
> >> configuration
> >> >>> >> file
> >> >>> >> > option.
> >> >>> >> >
> >> >>> >> > E.g.
> >> >>> >> > perdition -M /usr/lib/libperditiondb_mysql.so.0
> >> >>> >> > ......
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > I'll start from there.
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > I suppose the name of this database is
"dbPerdition"
to
> be
> >> >>> created
> >> >>> >> on
> >> >>> >> > MySQL
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > mysql> create database dbPerdition;
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > mysql> GRANT
SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
> >> >>> >> > -> ON dbPerdition.* TO 'perdition'
IDENTIFIED by
> >> 'perdition';
> >> >>> >> >
> >> >>> >> > the 1st "perdition" on above second
line is "database
> user".
> >> >>> The
> >> >>> >> 2nd
> >> >>> >> > "perdition" is "database
password".
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > mysql> CREATE TABLE `tblPerdition` (
> >> >>> >> > -> `user` varchar(128), null ''
default '',
> >> >>> >> > -> `servername` varchar(255) null
'' default '',
> >> >>> >> > -> `port` varchar(8) YES NULL,
> >> >>> >> > -> PRIMARY KEY (`user`),
> >> >>> >> > -> ) ;
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > Afterwards I'll edit data on
'tblPerdition" table.
> >> >>> >> >
> >> >>> >> >
> >> >>> >> >> The table you've shown doesn't have
information about
> the
> >> >>> >> >> hostnames/localIPs. Where is it? In the
transport
table?
>>
>>> >> >
>> >>> >> >
>> >>> >> > Yes.
>> >>> >> >
>> >>> >> > mysql> SELECT * from transport;
>> >>> >> >
>> >>> >>
>> >>> >
>> >>>
>> >>
>>
>
>
>> >>> >> > 3 rows in set (0.00 sec)
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > # cat /etc/postfix/mysql_transport_maps.cf
> >> >>> >> > user=mail
> >> >>> >> > password=mypassword
> >> >>> >> > dbname=maildb
> >> >>> >> > table=transport
> >> >>> >> > select_field=hostname
> >> >>> >> > where_field=domain
> >> >>> >> > hosts=127.0.0.1
> >> >>> >> > additional_conditions = and enabled = 1
> >> >>> >> > * end *
> >> >>> >> >
> >> >>> >> >
> >> >>> >> >> I've never used mysql to do it, so I
don't know the
> >> details
> >> >>> and
> >> >>> >> how
> >> >>> >> >> flexible it is. Maybe you'll need to
create a view in
> your
> >> >>> >> database
> >> >>> >> >> for the perdition lookup with the domain as
key and
the
> >> localIP
> >> >>> as
> >> >>> >> >> value.
> >> >>> >> >>
> >> >>> >> >> Unfortunately I don't have any example.
But the two
URLs
> I
> >> sent
> >> >>> >> you
> >> >>> >> >> have all information you need. In particular,
look at
> >> >>> --query_key
> >> >>> >> >> option and mysql database access library.
> >> >>> >> >
> >> >>> >> >
> >> >>> >> > Whether you meant "--query_key
FORMAT[,FORMAT...]:"
on;
> >> >>> >> >
> >> >>> >> >
http://www.vergenet.net/linux/perdition/perdition.8.shtml
> >> >>> >> >
> >> >>> >> >
>> >> >>> >>
> Thanks
> >> >>> >> >
> >> >>> >> >
>> >> >>> >>
> B.R.
>> >> >>> >> > Stephen L
>> >> >>> >> >
>> >> >>> >> > Send instant messages to your online
friends
>> >> >>> >>
http://uk.messenger.yahoo.com
>> >> >>> >> >
______________________________________________
>> >> >>> >> > Perdition-users mailing list
>> >> >>> >> > Perdition-users(a)vergenet.net
>> >> >>> >> >
http://lists.vergenet.net/listinfo/perdition-users
>> >> >>> >> >
>> >> >>> >>
>> >> >>> >
>> >> >>> >
>> >> >>> > Send instant messages to your online friends
>> >> >>>
http://uk.messenger.yahoo.com
>> >> >>> > ______________________________________________
>> >> >>> > Perdition-users mailing list
>> >> >>> > Perdition-users(a)vergenet.net
>> >> >>> >
http://lists.vergenet.net/listinfo/perdition-users
>> >> >>> >
>> >> >>>
>> >> >>
>> >> >>
>> >> >> Send instant messages to your online friends
>> >>
http://uk.messenger.yahoo.com
>> >> >> ______________________________________________
>> >> >> Perdition-users mailing list
>> >> >> Perdition-users(a)vergenet.net
>> >> >>
http://lists.vergenet.net/listinfo/perdition-users
>> >> >>
>> >> >
>> >>
>> >
>> >
>> > Send instant messages to your online friends
>>
http://uk.messenger.yahoo.com
>> > ______________________________________________
>> > Perdition-users mailing list
>> > Perdition-users(a)vergenet.net
>> >
http://lists.vergenet.net/listinfo/perdition-users
>> >
>>
>
>
> Send instant messages to your online friends
http://uk.messenger.yahoo.com
______________________________________________
Perdition-users mailing list
Perdition-users(a)vergenet.net
http://lists.vergenet.net/listinfo/perdition-users
______________________________________________
Perdition-users mailing list
Perdition-users(a)vergenet.net