Hi!
Lészen Wheezy, rajta Openldap, PAM hozzá heggesztve. Roundcube 0.9 frissen feltéve, Dovecot-on keresztül látja is a maildirt és minden jónak tűnne, de az első bejelentkezéskor hibásan képezi a felhasználó e-mail címét, pl. kisbela@domain.hu. Ugyanis bejelentkezésnél a userid-t kérem tőle (pl. kisbela) és a jelszavát. A tényleges e-mail címe pedig az LDAP-ban van bela.kis@domain.hu.
Persze a beállításoknál át lehet ezt írni - a "Megjelenített név"-hez hasonlóan, ami szintén nem jó-, de a felhasználók számossága miatt ez nem kivitelezhető.
A kérdésem az, hogy hol kell(ene) beállítani, hogy ezeket az "alap" információkat az LDAP-ból vegye? Mely paraméterek körül nézelődjek.
Az tiszta, hogy a címjegyzéket tehetném LDAP-ba, de nekem az jó helyen van SQL-ben, de a usereknek maradniuk kell LDAP-ban.
Minden tippet, javaslatot előre is köszönk!
Hozzászólások
http://www.iredmail.org/
hasonló cipőben járok én is (roundcube 0.8.6, ldap auth, ldap címjegyzék (közös) és sql címjegyzék (saját))
én beélesítettem egy modult, ami első loginkor megkérdezi az usert, hogy írja be a nevét/mélcímét, ha nem stimmel a rendszer által felajánlott
ami persze lehet hibátlan is, mert van egy másik modul, ami egy fájlból kiolvassa a pontos infókat
a fájlt pedig óránként legenerálom, egy sima ldap lekérdezés, két oszlop, név és e-mail cím, soronként egy user
a pluginok nevei:
- virtuser_file
- new_user_dialog
Jól hangzik!
Holnap megnézem, köszönöm!
A new_user_dialog is jó tölet!!
Szerintem ezt a terméket keresitek:
https://github.com/korylprince/virtuser_ldap_roundcube
(igen, tényleg kb. 20 sor PHP kód...)
Arra vigyázzatok, hogy a PHP kisbetűsre konvertálja az attributumneveket, így pl. a "fullName" attributum helyett "fullname"-t adjatok meg a konfigban. (vagy, strtolower("fullName")-t, ahogy én szoktam)
Köszönöm!
Sajnos ez is csak holnapra marad már, de a végeredményről természetesen beszámolok.
Köszönöm a tippet bevált!
Azért ráment pár órám, hogy megfejtsem hogy mit és hogyan kellene, ezért ide leírom (aztán még lesz kérdésem):
/var/www/config/main.inc.php
$rcmail_config['plugins'] = array('virtuser_ldap');
Majd a fenti linkről letöltött anyagot bele kell másolni a plugins/virtuser_ldap mappába, a jogosultságokra odafigyelni.
config.inc.php
<?php
$rcmail_config['ldapauth']['url'] = 'ldap://127.0.0.1/';
$rcmail_config['ldapauth']['basedn'] = 'ou=Users,dc=cegnev,dc=hu';
$rcmail_config['ldapauth']['binddn'] = 'dc=cegnev,dc=hu';
$rcmail_config['ldapauth']['bindpw'] = 'ldap-password';
//$rcmail_config['ldapauth']['userattr'] = 'samAccountName';
$rcmail_config['ldapauth']['userattr'] = 'cn';
//$rcmail_config['ldapauth']['userfilter'] = '(&(objectClass=person)(mail=*)(!(UserAccountControl:1.2.840.113556.1.4.803:=2)))'; #last part is f$
// Attributes mapped to create user identity
$rcmail_config['ldapauth']['attr_name'] = 'displayname';
$rcmail_config['ldapauth']['attr_mail'] = 'mail';
$rcmail_config['ldapauth']['attr_user'] = 'cn';
?>
És itt lenne két kérdésem, amit nem értettem teljesen meg:
1. Mi az a "samAccountName"? Amíg át nem írtam 'cn'-re, nem is volt jó.
2. Az LDAP most kifejezetten samba-ra lett készítve és ebből kellett kiszedni az értékeket. A 'userfilter'-t sem igazán értettem - anyi van meg, hogy szűrne valamit - valaki esetleg felvilágosítana, hogy mit is akart ott a kedves szerző, mire gondolt?
Már csak azért is kérdezem, mert szeretném megérteni.
Előre is köszönöm!
Egerváry Gergely-nek pedig külön köszönet a linkért!