[Dovecot] Director and backend on the same server
I have setup director and a backend dovecot service on the same machine using different ports. The backend service is listening on the default 24, 110 and 143 for lmtp, pop3 and imap respectively. Director is listening on 10024, 10110 and 10143 for the same respective services.
I can get this setup to work if I have one backend server on a different IP listening on 10024, it seems director tries to use the same port it is listening on when making backend connections.
If I point it to the local backend server, it tries to connect to itself which fails. Is there a way to specify the backend ports that director tries to connect to? I see there is a way to specify the port in director_servers but I'm not sure how I would specify the different ports for the different backend services, if this is even possible.
On Tue, 2012-05-08 at 12:55 -0600, James Devine wrote:
I have setup director and a backend dovecot service on the same machine using different ports. The backend service is listening on the default 24, 110 and 143 for lmtp, pop3 and imap respectively. Director is listening on 10024, 10110 and 10143 for the same respective services.
I'd make director listen on 24/110/143, so you don't accidentally connect there when you intended to connect to director, and end up accessing mails via wrong server.
I can get this setup to work if I have one backend server on a different IP listening on 10024, it seems director tries to use the same port it is listening on when making backend connections.
If I point it to the local backend server, it tries to connect to itself which fails. Is there a way to specify the backend ports that director tries to connect to? I see there is a way to specify the port in director_servers but I'm not sure how I would specify the different ports for the different backend services, if this is even possible.
The passdb lookup can return which port to connect to. Director only sets the destination IP, everything else happens the same as with non-director proxying: http://wiki2.dovecot.org/PasswordDatabase/ExtraFields/Proxy
On Tue, May 8, 2012 at 6:25 PM, Timo Sirainen tss@iki.fi wrote:
On Tue, 2012-05-08 at 12:55 -0600, James Devine wrote:
I have setup director and a backend dovecot service on the same machine using different ports. The backend service is listening on the default 24, 110 and 143 for lmtp, pop3 and imap respectively. Director is listening on 10024, 10110 and 10143 for the same respective services.
I'd make director listen on 24/110/143, so you don't accidentally connect there when you intended to connect to director, and end up accessing mails via wrong server.
I can get this setup to work if I have one backend server on a different IP listening on 10024, it seems director tries to use the same port it is listening on when making backend connections.
If I point it to the local backend server, it tries to connect to itself which fails. Is there a way to specify the backend ports that director tries to connect to? I see there is a way to specify the port in director_servers but I'm not sure how I would specify the different ports for the different backend services, if this is even possible.
The passdb lookup can return which port to connect to. Director only sets the destination IP, everything else happens the same as with non-director proxying: http://wiki2.dovecot.org/PasswordDatabase/ExtraFields/Proxy
I setup the static passdb like:
passdb { driver = static args = proxy=y port=10024 nopassword=y }
and this works fine for the lmtp service, would I have to run a director per protocol or can they be combined into one somehow?
On 29.5.2012, at 17.23, James Devine wrote:
I setup the static passdb like:
passdb { driver = static args = proxy=y port=10024 nopassword=y }
and this works fine for the lmtp service, would I have to run a director per protocol or can they be combined into one somehow?
I think you can do:
protocol lmtp { passdb { driver = static args = proxy=y port=10024 nopassword=y } }
And the same for other protocols.
participants (2)
-
James Devine
-
Timo Sirainen