[Sysadmins] ldap+odbc+mysql

Vladimir Cherednichenko =?iso-8859-1?q?che_=CE=C1_red-team=2Eorg=2Eua?=
Вт Май 16 21:26:59 MSD 2006


Hi


Есть не стандартная задача, поднять ldap с бакендом в sql, делалось по 
примерам
http://www.openldap.org/faq/data/cache/978.html
http://www.flatmtn.com/computer/Linux-LDAP.html
google

Но ничего не завелось, в логах cldap-a такое:

  ==>backsql_get_db_conn()
May 16 19:23:55 radius slapd[28129]: ==>backsql_open_db_conn(4294967295)
May 16 19:23:55 radius slapd[28129]: backsql_open_db_conn(4294967295): 
SQLConnect() to database "ldap" failed.
May 16 19:23:55 radius slapd[28129]: Return code: -1
May 16 19:23:55 radius slapd[28129]:    Native error code: 0
May 16 19:23:55 radius slapd[28129]: backsql_get_db_conn(): could not 
get connection handle -- returning NULL
May 16 19:23:55 radius slapd[28129]: backsql_db_open(): connection 
failed, exiting
May 16 19:23:55 radius slapd[28129]: backend_startup_one: bi_db_open 
failed! (1)


#slaptest -v
WARNING: No dynamic config support for database sql.
config file testing succeeded

Вручную ODBC конектится

# isql ldap ldap der_paroll
+---------------------------------------+
| Connected!                            |
|                                       |
| sql-statement                         |
| help [tablename]                      |
| quit                                  |
|                                       |
+---------------------------------------+
SQL>

Когда используется бакенд hdb ldap работает.

Установлены пакеты:
- libunixODBC-2.2.11-alt2.2
- unixODBC-2.2.11-alt2.2
- mysql-connector-odbc-3.51-alt1
- libldap2.3-2.3.21-alt1
- libldap-2.2.27-alt1.1
- openldap-2.3.21-alt1
- openldap-doc-2.3.21-alt1
- openldap-servers-2.3.21-alt1
- MySQL-client-5.0.20-alt1
- libMySQL-5.0.20-alt1
- MySQL-server-5.0.20-alt1

Конифиги:

  /etc/odbc.ini

[ODBC Data Sources]
ldap = MySQL LDAP DSN

[ldap]
Driver          = MySQL
Database        = ldap
User            = ldap
PWD             = der_paroll
Server          = 1.2.3.4
Port            = 3306
ReadOnly        = no
Socket          = /var/lib/mysql/mysql.sock

[ODBC]
InstallDir=/usr/lib

/etc/odbcinst.ini

[ODBC Drivers]
MySQL = Installed

[MySQL]
Description    = ODBC for MySQL
Driver         = /usr/lib/libmyodbc.so
Setup          = /usr/lib/libodbcmyS.so

/etc/openldap/slapd.conf

include         /etc/openldap/schema/core.schema
include         /etc/openldap/schema/cosine.schema
include         /etc/openldap/schema/inetorgperson.schema
include         /etc/openldap/schema/dhcp.schema

# Define global ACLs to disable default read access.

# Do not enable referrals until AFTER you have a working directory
# service AND an understanding of referrals.
#referral       ldap://root.openldap.org

pidfile         /var/run/slapd.pid
argsfile        /var/run/slapd.args
loglevel        -1
modulepath      /usr/lib/openldap
moduleload      back_sql.la
moduleload      back_hdb.la

database        sql
suffix          "dc=sql,dc=RU"
rootdn          "cn=root,dc=sql,dc=RU"
rootpw          secret
dbname          ldap
dbuser          ldap
dbpasswd        der_paroll
subtree_cond    "ldap_entries.dn LIKE CONCAT('%',?)"
insentry_stmt   "INSERT INTO ldap_entries (dn,oc_map_id,parent,keyval) 
VALUES (?,?,?,?)"
has_ldapinfo_dn_ru      no


Есть подозрение что гдето нестыковка с chroot-ом ldap-a и ODBC... хотя 
ODBC-шные файлики  и либы я ему закинул.


Устал бороться, памажите кто-нибуть...., как его победить.
Может кто сталкивался.

-- 

WBR, Vladimir Cherednichenko
R.E.D Team | Admin
Ukraine | Kiev



Подробная информация о списке рассылки Sysadmins