Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Dec 2002 03:38:28 +0300
From:      "Vadim A. Shklyaev" <lexxmail@front.ru>
To:        freebsd-net@freebsd.org
Cc:        Archie Cobbs <archie@dellroad.org>
Subject:   mpd-3.10 and MySQL
Message-ID:  <1031006789359.20021224033828@front.ru>

next in thread | raw e-mail | index | archive | help
------------110F01B32D5F92E
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit

Hi,

  Some time back we have faced necessity of mass
  authorization of our VPN-clients which were connected to our server
  using mpd, through a MySQL-database. Thus I have made patch for
  mpd-3.10 for the built-in support mysql authorizations.

  May be code is not very clean and well styled, but it works! It
  works on our servers for about 3 or 4 weeks without problems, so I
  decided to send it here, to hear what guru thinks about that, and
  also someone else can will find this thing useful to itself.

  Patch adds 5 new configuration directives:

  mysql_hostname defines a host, where mysqld is running

set bundle mysql_hostname localhost

  mysql_database defines a database to use

set bundle mysql_database users

  mysql_username and mysql_password defines a mysql user and
  password with enough privileges to make sql request, specified in mysql_sql

set bundle mysql_username someuser
set bundle mysql_password somepassword

  and mysql_sql defines an sql expression, which will be passed to
  mysql server to get credential for login, which is substituted
  instead of "%s". Expression should return one row with three fields:
  login, password and optionaly ip address (or NULL or empty string),
  just like a format for mpd.secret

set bundle mysql_sql "SELECT login, password, INET_NTOA(ip) FROM users WHERE login='%s' AND active=1 LIMIT 1"

  MySQL authentification is used when all these directives
  are defines, if one of them is missing - usual mpd.secret is used.

  That's all. I wait with impatience for comments.
  
-- 
Best regards,
 Vadim A. Shklyaev
 mailto:lexxmail@front.ru
------------110F01B32D5F92E
Content-Type: application/x-compressed; name="mysql_auth-mpd-3.10.tgz"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="mysql_auth-mpd-3.10.tgz"

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
UAAA

------------110F01B32D5F92E--


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1031006789359.20021224033828>