Changes

Jump to navigation Jump to search
Created page with "<span id="_top">Qpsmtpd#Plugins</span> = NAME = auth_vpopmail_sql - Authenticate to vpopmail via MySQL = DESCRIPTION = This plugin authenticates..."
<span id="_top">[[Qpsmtpd#Plugins]]</span>
= [[#___top|NAME]] =

auth_vpopmail_sql - Authenticate to vpopmail via MySQL

= [[#___top|DESCRIPTION]] =

This plugin authenticates vpopmail users directly against a standard vpopmail MySQL database. It makes the not-unreasonable assumption that both pw_name and pw_domain are lowercase only (qmail doesn't actually care). If you are using CRAM-MD5, it also requires that vpopmail be built with the recommended '--enable-clear-passwd=y' option, because there is no way to compare the crypted password.

= [[#___top|CONFIGURATION]] =

<pre> echo &quot;dbi:mysql:dbname=vpopmail;host=127.0.0.1&quot; &gt; config/vpopmail_mysql_dsn
echo &quot;vpopmailuser&quot; &gt; config/vpopmail_mysql_user
echo &quot;vpoppasswd&quot; &gt; config/vpopmail_mysql_pass</pre>
This can be a read-only database user since the plugin does not update the last accessed time (yet, see below).

This module supports PLAIN, LOGIN, and CRAM-MD5 authentication methods. You can disable undesired methods by editing this module and uncommenting the lines in the register() sub. See the POD for Qspmtpd::Auth for more details on the ramifications of supporting various authentication methods.

The remote user must login with a fully qualified e-mail address (i.e. both account name and domain), even if they don't normally need to. This is because the vpopmail table has a unique index on pw_name/pw_domain, and this module requires that only a single record be returned from the database.

= [[#___top|LIMITATIONS]] =

This authentication modules does not recognize domain aliases. So, if you have the domain example.com, with domain aliases for example.org and example.net, smtp-auth will only work for $user@example.com. If you have domain aliases, consider using another plugin (see SEE ALSO).

= [[#___top|FUTURE DIRECTION]] =

The default MySQL configuration for vpopmail includes a table to log access, lastauth, which could conceivably be updated upon sucessful authentication. The addition of this feature is left as an exercise for someone who cares. ;)

= [[#___top|SEE ALSO]] =

For an overview of the vpopmail authentication plugins and their merits, please read the VPOPMAIL section in docs/authentication.pod

= [[#___top|AUTHOR]] =

John Peacock &lt;jpeacock@cpan.org&gt;

= [[#___top|COPYRIGHT AND LICENSE]] =

Copyright (c) 2004 John Peacock

This plugin is licensed under the same terms as the qpsmtpd package itself. Please see the LICENSE file included with qpsmtpd for details.

<!-- Generated Mon Apr 8 09:31:43 EDT 2019 using
perldoc -T -ohtml $plugins/$1 \|pandoc -f html -t mediawiki \|sed '1 i\\n\n\n<span id="_top">[[Qpsmtpd#Plugins]]</span>' \|sed -e 's#</d.>##'
-->
----
[[Category:Qpsmtpd|auth/auth_vpopmail_sql]]

Navigation menu