cancel
Showing results for 
Search instead for 
Did you mean: 

Error al intentar usar el passthru

manu2097
Champ in-the-making
Champ in-the-making
Hola, tengo un error con el passtrhu que me está matando  :twisted: .
Quiero activar el SSO así que en el

alfresco-global.properties :
authentication.chain=passthru1Smiley Tongueassthru,ldap-ad-AIC:ldap-ad

passthru-authentication-context.properties:
passthru.authentication.useLocalServer=false
passthru.authentication.domain=DOMINIO
passthru.authentication.servers=DOMINIO\\75.0.0.1,75.0.0.1
passthru.authentication.guestAccess=false
passthru.authentication.defaultAdministratorUserNames=admin
#Timeout value when opening a session to an authentication server, in milliseconds
passthru.authentication.connectTimeout=50000
#Offline server check interval in seconds
passthru.authentication.offlineCheckInterval=300
passthru.authentication.protocolOrder=NetBIOS,TCPIP
passthru.authentication.authenticateCIFS=true
passthru.authentication.authenticateFTP=true

ntlm-filter.properties:
ntlm.authentication.sso.enabled=true
ntlm.authentication.mapUnknownUserToGuest=false

file-servers.properties:
filesystem.name=Alfresco
filesystem.acl.global.defaultAccessLevel=

cifs.enabled=true
cifs.serverName=${localname}A
cifs.domain=DOMINIO
cifs.broadcast=194.178.70.255
# An empty value indicates bind to all available network adapters
cifs.bindto=194.178.70.7
cifs.ipv6.enabled=false
cifs.hostannounce=true
# Enable the use of asynchronous sockets/NIO code
cifs.disableNIO=false
# Disable the use of JNI code. Only currently affects Windows
cifs.disableNativeCode=false
# Session timeout, in seconds. Defaults to 15 minutes, to match the default Windows client setting.
# If no I/O is received within that time the session is closed by the server
cifs.sessionTimeout=9000

# Can be mapped to non-privileged ports, then use firewall rules to forward requests from the standard ports
cifs.tcpipSMB.port=445
cifs.netBIOSSMB.sessionPort=139
cifs.netBIOSSMB.namePort=137
cifs.netBIOSSMB.datagramPort=138

# Optional WINS server primary and secondary IP addresses. Ignored if autoDetectEnabled=true
cifs.WINS.autoDetectEnabled=true
cifs.WINS.primary=1.2.3.4
cifs.WINS.secondary=5.6.7.8

cifs.urlfile.prefix=http://${localname}:8080/alfresco/


Arquitectura:
Alfresco 3.2r en CentOS
Ldap –> Active Directory

server.log:
ERROR [org.alfresco.fileserver] CIFS server configuration error, Error creating bean with name 'passthruServers' defined in file [/usr/alfresco/alfresco.war/WEB-INF/classes/alfresco/subsystems/Authentication/passthru/passthru-authentication-con...]: Invocation of init method failed; nested exception is org.alfresco.error.AlfrescoRuntimeException: 06290000 Error setting passthru domain, Failed to find domain controller or browse master for DOMAIN
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'passthruServers' defined in file [/usr/alfresco/alfresco.war/WEB-INF/classes/alfresco/subsystems/Authentication/passthru/passthru-authentication-con...]: Invocation of init method failed; nested exception is org.alfresco.error.AlfrescoRuntimeException: 06290000 Error setting passthru domain, Failed to find domain controller or browse master for DOMAIN
Caused by: org.alfresco.error.AlfrescoRuntimeException: 06290000 Error setting passthru domain, Failed to find domain controller or browse master for DOMAIN
        at org.alfresco.filesys.auth.PassthruServerFactory.afterPropertiesSet(PassthruServerFactory.java:347)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1203)


En el log del firewall el servidor con alfresco no intenta usar el protocolo netbios ni nada solo hace las peticines ldap para la sincronizacion de usuarios. El erro que tengo creo que es configuracion no se.
Si quito del alfresco-global.properties el passthru1Smiley Tongueassthu ya no tendría el error pero claro no tendria activado el servidor cif y no tendría sso.

Un saludo, a todos. Smiley Surprisedops:
7 REPLIES 7

cesarista
World-Class Innovator
World-Class Innovator
Hola:

Veo un poco rara la cadena de autenticación, pero el caso es este:

http://wiki.alfresco.com/wiki/Alfresco_Authentication_Subsystems#Example_1:_Advanced_AD_Chain


alfrescoNtlm1:alfrescoNtlm,passthru1:passthru,ldap1:ldap-ad

alfrescoNtlm1:

ntlm.authentication.sso.enabled=false
alfresco.authentication.authenticateCIFS=false

passthru1:
 
ntlm.authentication.sso.enabled=false
passthru.authentication.authenticateCIFS=true

ldap1:
 
ldap.authentication.active=false
ldap.synchronization.active=true

Por otro lado, tienes permisos de superusuario para abrir el CIFS en puertos < 1024 ? Con que usuario inicias el servidor alfresco?

Un saludo.

–C.

manu2097
Champ in-the-making
Champ in-the-making
Hola, al servidor yo entro como root.

Si le ponemos que no use passtrhu, dejando la variable autentication.chain de esta forma:

alfresco-global.properties:
autentication.chain=alfrecoNtlm1:alfrescoNtlm,ldap-ad-AIC:ldap-ad

Alfresco me arranca sincronizandome con el Active Directory  y el servidor CIFS tambien se levanta, por el netbios según el netstap -t -u -l
Logicamente como en la configuración del ldap tengo desactivado la autentificacion no puedo logearme ni a Alfresco ni al CIFS:

ldap-ad-authentication.properties:
ldap.authentication.active=false
ldap.synchronization.active=true

Anteriormente yo lo tenia configurado para que los usuarios se logearan tirando del Active Directory mediante ldap.
Pero ahora necesito que se logeen tirando del AD también pero con SSO, así que pensaba que habría que usar el subsistema de Alfresco pssthru.
Pero me sale el error comentado anteriormente al intentar arrancar el servidor.
Me he dado cuenta que si guarreo el fichero passthru-authentication-context.properties escribiendo tonterias o borrando cosas, sigue apareciendo el mismo error.

server.log:
ERROR [org.alfresco.fileserver] CIFS server configuration error, Error creating bean with name 'passthruServers' defined in file [/usr/alfresco/alfresco.war/WEB-INF/classes/alfresco/subsystems/Authentication/passthru/passthru-authentication-con...]: Invocation of init method failed; nested exception is org.alfresco.error.AlfrescoRuntimeException: 06300000 Error setting passthru domain, Failed to find domain controller or browse master for DOMAIN
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'passthruServers' defined in file [/usr/alfresco/alfresco.war/WEB-INF/classes/alfresco/subsystems/Authentication/passthru/passthru-authentication-con...]: Invocation of init method failed; nested exception is org.alfresco.error.AlfrescoRuntimeException: 06300000 Error setting passthru domain, Failed to find domain controller or browse master for DOMAIN
Caused by: org.alfresco.error.AlfrescoRuntimeException: 06300000 Error setting passthru domain, Failed to find domain controller or browse master for DOMAIN
        at org.alfresco.filesys.auth.PassthruServerFactory.afterPropertiesSet(PassthruServerFactory.java:347)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1203)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1172)
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:427)
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:249)
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:155)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:246)
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:285)
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
        at org.alfresco.repo.management.subsystems.ChildApplicationContextFactory$ApplicationContextState.start(ChildApplicationContextFactory.java:637)
        at org.alfresco.repo.management.subsystems.AbstractPropertyBackedBean.start(AbstractPropertyBackedBean.java:454)
        at org.alfresco.repo.management.subsystems.AbstractPropertyBackedBean.start(AbstractPropertyBackedBean.java:436)
        at org.alfresco.repo.management.subsystems.AbstractPropertyBackedBean.getState(AbstractPropertyBackedBean.java:214)
        at org.alfresco.repo.management.subsystems.ChildApplicationContextFactory.getApplicationContext(ChildApplicationContextFactory.java:344)

Usando la configuracion anterior que me comentas tambien me sale lo mismo.

Que putada!!

cesarista
World-Class Innovator
World-Class Innovator
Hola de nuevo:


Revisa el passthru-authentication-context.xml. Por lo que sale en el log parece que no has especificado el dominio de tu red correctamente en el passthu-authentication-context.xml, dominio que también se define en las propiedades del CIFS.

Un saludo.

–C.

manu2097
Champ in-the-making
Champ in-the-making
Pregunta conceptual:

¿a pesar de que mi alfresco este instalado en linux, puedo usar el subsystem passthru para apuntar al windows server 2003 (Active Directory) y así poder usar el sso, segun tengo entendido el protocolo ntlm es propio de microsoft?

¿Puede ser mi configuracion de red en el linux, que no tiene especificado bien su dominio?

¿cuando no uso  passthru el servidor cif se levanta esto me da a entender que la he configurado bien el dominio en el file-servers.properties y es el mismo en el fichero de passtrhu?

¿Entiendo que si es factible la primera pregunta que hago pq la autentificacion por ldap hacia el ActiveDirectory me funciona perfectamente?

En fin tiene que ser algo relacionado con el dominio segun el log. ¿introducir el linux en un dominio de windows es factible?

cesarista
World-Class Innovator
World-Class Innovator
Hola Manu:

¿a pesar de que mi alfresco este instalado en linux, puedo usar el subsystem passthru para apuntar al windows server 2003 (Active Directory) y así poder usar el sso, segun tengo entendido el protocolo ntlm es propio de microsoft?

Si que puede, independiente de la plataforma en la que este instalada.

¿Puede ser mi configuracion de red en el linux, que no tiene especificado bien su dominio?

Pues si, yo apuntaría por ahí.

¿cuando no uso  passthru el servidor cif se levanta esto me da a entender que la he configurado bien el dominio en el file-servers.properties y es el mismo en el fichero de passtrhu?

El dominio y los parametros del servidor cifs (si tu alfresco es 3.2 o superior) los pondría en alfresco-global.properties del directorio de extensiones. Algo como esto:


#
# CIFS fileserver
#

cifs.enabled=true
cifs.localname=BACO
cifs.Server.Name=BACO
cifs.domain=WORKGROUP
cifs.hostanounce=true
cifs.broadcast=192.168.1.255
cifs.tcpipSMB.port=1445
cifs.ipv6.enabled=false
cifs.netBIOSSMB.namePort=1137
cifs.netBIOSSMB.datagramPort=1138
cifs.netBIOSSMB.sessionPort=1139
cifs.urlfile.prefix=http://baco.zylk.net:8080/alfresco/


¿Entiendo que si es factible la primera pregunta que hago pq la autentificacion por ldap hacia el ActiveDirectory me funciona perfectamente?

En fin tiene que ser algo relacionado con el dominio segun el log. ¿introducir el linux en un dominio de windows es factible?

Eso es.

Un saludo y espero que te ayude.

–C.

manu2097
Champ in-the-making
Champ in-the-making
Hola, cesarista. Muchas gracias, tenias razón, me ha funcionado metiendo toda la configuración de los otros archivos que estaba usando en el alfresco-global properties. Ahora el servidor es capaz de arrancar. Thanks.

Bueno ahora los problemas son otros, voy a ver que puede estar pasandome al intentar usar el cifs, en el log me tira esto:

org.alfresco.jlan.smb.server.nio.NetBIOSSMBChannelHandler.writePacket(NetBIOSSMBChannelHandler.java:199)
org.alfresco.jlan.smb.server.SMBSrvSession.procNetBIOSSessionRequest(SMBSrvSession.java:909)
org.alfresco.jlan.smb.server.SMBSrvSession.processPacket(SMBSrvSession.java:1446)
org.alfresco.jlan.smb.server.nio.NIOCIFSThreadRequest.runRequest(NIOCIFSThreadRequest.java:111)
org.alfresco.jlan.server.thread.ThreadRequestPool$ThreadWorker.run(ThreadRequestPool.java:141)

Un saludo, Manuel.

manu2097
Champ in-the-making
Champ in-the-making
Hola al parecer ya tengo funcionando el servidor CIFs con sso y el aceso web tambien.

Me he dado cuenta que si uso: #authentication.chain=alfrescoNtlm1:alfrescoNtlm,passthru1Smiley Tongueassthru,ldap-ad-AIC:ldap-ad.
No me funciona bien el alfrescoNtlm, solo podia legearme al CIF si usaba un usuario creado a mano con la consola de admintración de alfresco.

Usando solo passthru pudo logearme perfectamente pues para la autenticación siempre apunta al active directory.
authentication.chain=passthru1Smiley Tongueassthru,ldap-ad-AIC:ldap-ad

Las configuraciones que usaba de passthru y cifs eran buenas, solo era que tenia que pegarlas enel alfresco-global.properties (en mi caso en concreto, por cualquier chorrada que tengo mal)

Un saludo a todos y gracias.