Svn autorizando sobre o sasl + ldap falhando após a atualização do Ubuntu 10.04 - 12.04

4

Eu tenho a solução svnserve em funcionamento no Ubuntu 10.04 para autorizar usuários svn sobre SASL para o diretório Active (LDAP, não LDAPDB). Arquivos de configuração estão na parte inferior.

Após atualizar o servidor para o release 12.04, isso não funciona mais. Eu posso autorizar o usuário sobre o SASL para o LDAP com

 testsaslauthd -u ldap_username -p his_password
 => 0: OK "Success."

Mas quando eu tento "svn update" na pasta no mesmo servidor, ele me pergunta três vezes por credenciais e termina com

 svn: Authentication error from server: SASL(-4): no mechanism available:

Eu não sei como rastrear a comunicação entre o svn e o sasl.

Circunstâncias:

  • Ubuntu 10.04 + subversion 1.6.6 (com suporte a Cirrus SASL) = > trabalhando
  • Ubuntu 12.04 + subversion 1.6.17 (com suporte a Cirrus SASL) = > não está funcionando (com a mesma configuração)

arquivo /usr/lib/sasl2/svn.conf

 pwcheck_method: saslauthd
 auxprop_plugin: ldap
 mech_list: PLAIN

arquivo /usr/lib/sasl2/subversion.conf - > symlink para /usr/lib/sasl2/svn.conf

arquivo /opt/svn/repos/conf/svnserve.conf

 [general]
 anon-access = none
 auth-access = write
 #password-db = passwd
 authz-db = authz
 realm = smartsvn

 [sasl]
 use-sasl = true
 min-encryption = 0
 max-encryption = 256

Alguma ideia, como consertar ou rastrear o problema?

    
por Foton 08.10.2012 / 14:22

3 respostas

4

Tive os mesmos problemas como acima apenas no debian squeeze após um dist-upgrade. Após horas de configuração, reiniciei e reinstalei a loucura que dei após o "svn.conf":

pwcheck_method: saslauthd
#auxprop_plugin: ldap
mech_list: plain login cram-md5 digest-md5

IMO, "mech_list: plain" deve ser suficiente. os outros mechs são overlefts de testes anteriores.

Aqui está meu /etc/saslauthd.conf

ldap_servers: ldap://xxx.xxx.xxx.xxx
ldap_use_sasl:no
ldap_search_base: DC=domain,DC=tdl
ldap_bind_dn: [email protected]
ldap_bind_pw: magic_word:)
ldap_mech: PLAIN
ldap_auth_method: bind
ldap_filter: (sAMAccountName=%U)
log_level: 7

E aqui meu / etc / default / saslauthd

START=yes
DESC="SASL Authentication Daemon"
NAME="saslauthd"
MECHANISMS="ldap"
MECH_OPTIONS=""
THREADS=5

Atualize Dez 14:

Hoje tive o mesmo problema novamente após uma atualização do svnserve (r1615264):

Eu tive que adicionar o seguinte ao svn.conf:

ldapdb_uri: ldap://myldadphost.tld

Não me pergunte por que, eu apenas tentei, porque há três ou quatro anos o param já estava (com outros parâmetros do ldap) no svn.conf ...

    
por 10.07.2013 / 10:59
2

(1) Em /etc/sasl2/svn.conf você pode definir um nível de log para o saslauthd como:

log_level: 7

Em sasl.h eu encontrei:

#define SASL_LOG_NONE  0    /* don't log anything */
#define SASL_LOG_ERR   1    /* log unusual errors (default) */
#define SASL_LOG_FAIL  2    /* log all authentication failures */
#define SASL_LOG_WARN  3    /* log non-fatal warnings */
#define SASL_LOG_NOTE  4    /* more verbose than LOG_WARN */
#define SASL_LOG_DEBUG 5    /* more verbose than LOG_NOTE */
#define SASL_LOG_TRACE 6    /* traces of internal protocols */
#define SASL_LOG_PASS  7    /* traces of internal protocols, including passwords */

Parece que ele registra em /var/log/auth.log.

Eu tenho quase o mesmo problema (migrando do Ubuntu 11.04 para o 12.04) e entro no auth.log:

svnserve: could not find auxprop plugin, was searching for 'ldap'

Curiosamente, o log diz "svnserve" e não saslauthd. O que me leva a ...

(2) Você poderia tentar

ldd /usr/bin/svnserve

Para mim, o servidor de trabalho (Ubuntu 11.04) mostra:

libldap_r-2.4.so.2 => /usr/lib/libldap_r-2.4.so.2

mas o servidor com falha (12.04) não.

    
por 26.03.2013 / 12:17
0

Tente alterar a configuração para o seu arquivo de configuração /usr/lib/sasl2/svn.conf (configuração SVN sasl):

auxprop_plugin: ldapdb
mech_list: PLAIN
ldapdb_mech: PLAIN
saslauthd_path: /var/run/saslauthd/mux
ldapdb_uri: <address of your ldap server (ldap://hostname)>
    
por 28.01.2013 / 11:31