[ https://issues.apache.org/jira/browse/JAMES-3788?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17575069#comment-17575069 ]
Benoit Tellier commented on JAMES-3788: --------------------------------------- > I started implementing proxy support on netty level by adding netty's > HAProxyMessageDecoder. Since HAProxyMessageDecoder requires netty 4.x it will > be only available for James 3.8.x. +1 > One issue I'm currently facing is HAProxyMessageDecoder throws an exception > if no PROXY command was issued. This would mean if you enable proxy support, > then it's currently not possible to talk directly to James. I will solve that. IMO the right thing to do is to add an option in protocol configuration to activate proxy protocol or not, ie in imapserver.xml smtpserver.xml, etc... > Support for HAProxy Proxy Protocol > ---------------------------------- > > Key: JAMES-3788 > URL: https://issues.apache.org/jira/browse/JAMES-3788 > Project: James Server > Issue Type: New Feature > Components: protocols > Reporter: ouvtam > Priority: Minor > > As proposed in the gitter channel I would like to add support for HAProxy's > PROXY protocol > ([https://www.haproxy.org/download/2.7/doc/proxy-protocol.txt|https://www.haproxy.org/download/2.7/doc/proxy-protocol.txt).]). > This allows to run James behind HAProxy (i.e. load balancing multiple James > instances). In order to properly support the proxy protocol James needs to > parse the provided PROXY arguments from HAProxy (remote ip address, remote > port etc.) and store it in the SMTPSession for further processing (e.g. > DNSRBL check, Authorized Networks etc.). Otherwise James uses HAProxy's > address (e.g. localhost) as remote address. > For instance, HAProxy sends following line after connecting: > {code:java} > "PROXY TCP4 255.255.255.255 255.255.255.255 65535 65535\r\n" {code} > Netty already provides a codec for HAProxy's protocol > (io.netty.handler.codec.haproxy), so this can be implemented in the transport > layer of James. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: server-dev-unsubscr...@james.apache.org For additional commands, e-mail: server-dev-h...@james.apache.org