Path: blob/main/xml/en/docs/mail/ngx_mail_proxy_module.xml
1 views
<?xml version="1.0"?>12<!--3Copyright (C) 2006, 2007 Anton Yuzhaninov4Copyright (C) Nginx, Inc.5-->67<!DOCTYPE module SYSTEM "../../../../dtd/module.dtd">89<module name="Module ngx_mail_proxy_module"10link="/en/docs/mail/ngx_mail_proxy_module.html"11lang="en"12rev="6">1314<section id="directives" name="Directives">1516<!--17<directive name="proxy">18<syntax><literal>on</literal> | <literal>off</literal></syntax>19<default>off</default>20<context>mail</context>21<context>server</context>2223<para>24Not tested anywhere in the current version.25</para>2627</directive>28-->293031<directive name="proxy_buffer">32<syntax><value>size</value></syntax>33<default>4k|8k</default>34<context>mail</context>35<context>server</context>3637<para>38Sets the size of the buffer used for proxying.39By default, the buffer size is equal to one memory page.40Depending on a platform, it is either 4K or 8K.41</para>4243</directive>444546<directive name="proxy_pass_error_message">47<syntax><literal>on</literal> | <literal>off</literal></syntax>48<default>off</default>49<context>mail</context>50<context>server</context>5152<para>53Indicates whether to pass the error message obtained during54the authentication on the backend to the client.55</para>5657<para>58Usually, if the authentication in nginx is a success,59the backend cannot return an error.60If it nevertheless returns an error,61it means some internal error has occurred.62In such case the backend message can contain information63that should not be shown to the client.64However, responding with an error for the correct password65is a normal behavior for some POP3 servers.66For example, CommuniGatePro informs a user about67<link url="http://www.stalker.com/CommuniGatePro/Alerts.html#Quota">mailbox68overflow</link> or other events by periodically outputting the69<link url="http://www.stalker.com/CommuniGatePro/POP.html#Alerts">authentication70error</link>.71The directive should be enabled in this case.72</para>7374</directive>757677<directive name="proxy_protocol">78<syntax><literal>on</literal> | <literal>off</literal></syntax>79<default>off</default>80<context>mail</context>81<context>server</context>82<appeared-in>1.19.8</appeared-in>8384<para>85Enables the86<link url="http://www.haproxy.org/download/1.8/doc/proxy-protocol.txt">PROXY87protocol</link> for connections to a backend.88</para>8990</directive>919293<directive name="proxy_smtp_auth">94<syntax><literal>on</literal> | <literal>off</literal></syntax>95<default>off</default>96<context>mail</context>97<context>server</context>98<appeared-in>1.19.4</appeared-in>99100<para>101Enables or disables user authentication on the SMTP backend102using the <literal>AUTH</literal> command.103</para>104105<para>106If <link id="xclient">XCLIENT</link> is also enabled,107then the <literal>XCLIENT</literal> command will not send108the <literal>LOGIN</literal> parameter.109</para>110111</directive>112113114<directive name="proxy_timeout">115<syntax><value>timeout</value></syntax>116<default>24h</default>117<context>mail</context>118<context>server</context>119120<para>121Sets the <value>timeout</value> between two successive122read or write operations on client or proxied server connections.123If no data is transmitted within this time, the connection is closed.124</para>125126</directive>127128129<directive name="xclient">130<syntax><literal>on</literal> | <literal>off</literal></syntax>131<default>on</default>132<context>mail</context>133<context>server</context>134135<para>136Enables or disables the passing of the137<link url="http://www.postfix.org/XCLIENT_README.html">XCLIENT</link>138command with client parameters when connecting to the SMTP backend.139</para>140141<para>142With <literal>XCLIENT</literal>, the MTA is able to write client information143to the log and apply various limitations based on this data.144</para>145146<para>147If <literal>XCLIENT</literal> is enabled148then nginx passes the following commands when connecting to the backend:149<list type="bullet">150<listitem>151<literal>EHLO</literal> with the152<link doc="ngx_mail_core_module.xml" id="server_name">server name</link>153</listitem>154155<listitem>156<literal>157XCLIENT158</literal>159</listitem>160161<listitem>162<literal>EHLO</literal> or <literal>HELO</literal>,163as passed by the client164</listitem>165</list>166</para>167168<para>169If the name170<link doc="ngx_mail_core_module.xml" id="resolver">found</link>171by the client IP address points to the same address,172it is passed in the <literal>NAME</literal> parameter173of the <literal>XCLIENT</literal> command.174If the name could not be found, points to a different address,175or <link doc="ngx_mail_core_module.xml" id="resolver"/> is not specified,176the <literal>[UNAVAILABLE]</literal> is passed177in the <literal>NAME</literal> parameter.178If an error has occurred in the process of resolving,179the <literal>[TEMPUNAVAIL]</literal> value is used.180</para>181182<para>183If <literal>XCLIENT</literal> is disabled184then nginx passes the <literal>EHLO</literal> command with the185<link doc="ngx_mail_core_module.xml" id="server_name">server name</link>186when connecting to the backend if the client has passed187<literal>EHLO</literal>,188or <literal>HELO</literal> with the server name, otherwise.189</para>190191</directive>192193</section>194195</module>196197198