Portál AbcLinuxu, 10. května 2025 09:37
Už několik dní se marně snažím rozběhat autentizaci SASL pomocí sasldb
s cyrus-imapd. Stále mi není jasné několik zásadních věcí.
V dokumentaci jsou uvedeny AUTHENTICATION MECHANISMS - shadow, pam, kerberos ... a mezi nimi je i sasldb
.
pokud si vypisi AUTHENTICATION MECHANISMS:
saslauthd -v
sasldb mezi nimy neni.
Je tedy nutné saslauthd překompilovat?
ALE
v /etc/sasldb
se mi db vytvorila a prikazem:
saslpasswd -c testuser
do ní mohu vkládat uživatele. Vlozene uzivatele si mohu prohlednout:
strings /etc/sasldb
To všechno mě velmi mate.
imapd.conf
sasl_pwcheck_method: auxprop #zde mam podle doc: auxprop sasl_auxprop_plugin: sasldb sasl_mech_list: PLAIN
v souboru saslauthd
MECH=shadow #volbu sasldb mi to nevezme
Používám:
CentOS 4 cyrus-sasl-2.1.19-5.EL4 cyrus-imapd-2.2.12-3.RHEL4.1
Dekuji za pomoc
sasl_mech_list: CRAM-MD5 DIGEST-MD5a v /etc/sysconfig/saslauthd dát:
MECH=pamprotože
MECH=shadow
bere hesla z /etc/shadow a nikoli ze sasldb.
Démon saslauthd
nemusí být vůbec spuštěn ! Tudíž odpadá nastavování saslauthd
. Tedy v případě použití sasldb
.
V souboru imapd.conf nastavíme např:
sasl_mech_list: DIGEST-MD5 LOGIN PLAIN
Záleží na tom jaký mechanismus chceme požívat na přihlašovacím klientovi a jak máme uložená heslav souboru sasldb
Starší verze cyrus-imapd
používaly direktivu:
sasl_pwcheck_method: sasldb
Verze od cyrus-imapd-2.*
používají:
sasl_pwcheck_method: auxprop
Nové heslo pro uživatele do sasldb přidáme např:
saslpasswd -c user -f /etc/sasldb
některé novější verze myslím používají sasldb2
Uživatele si prohlédneme:
sasldblistusers
nebo sasldblistusers2
Otestuje přihlášení:
imtest -m login -a testuser localhost
místo -m login
můžeme zkusit -m PLAIN
, -m DIGEST-MD5
v logu si pak můžete přečíst proč se nám nepodařilo přihlásit: :)
deda imap[10539]: badlogin: localhost [127.0.0.1] PLAIN [SASL(-16): encryption needed to use mechanism: security flags do not match required] deda imap[10545]: accepted connection deda imap[10545]: badlogin: localhost [127.0.0.1] DIGEST-MD5 [SASL(-13): user not found: no secret in database] deda imap[10604]: accepted connection deda imap[10604]: badlogin: localhost [127.0.0.1] plaintext testuser SASL(-13): user not found: checkpass failed
Budu vděčný za jakoukoliv konstruktivní pomoc.
Jo, ještě abych se vrátil k původnímu problému: ke kompilaci. Databáze sasdb
by měla být standartním a výchozím doplňkem pro ověřování externímí programy. Tedy dá se předpokládat, že při používání balíčků rpm
bude sasldb v arzenálu. Jinak je to jedna z voleb v souboru ./configure
Od SASL version 2.1.1 používá sasl soubor s hesly /etc/sasldb2
. Navíc musí mít k tomuto souboru přístup user cyrus
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.