Cómo arreglar Tomcat ADVERTENCIA: se hizo Un intento para autenticar el usuario bloqueado?

Estoy usando Tomcat 7 con Spring y JPA Aplicación, base de datos MySQL.
Todo está funcionando bien.pero en algún momento de reino.LockOutRealm autenticar problema va a surgir. También he usado la agrupación de conexiones en mi aplicación como:

persistence.xml:

<properties>
      <property name="hibernate.connection.username" value="---"/>
      <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
      <property name="hibernate.connection.password" value="----------"/>
      <property name="hibernate.connection.url" value="jdbc:mysql://----------?autoReconnect=true"/>
      <!--Connection Pooling c3p0 configuration-->
      <!--Minimum number of JDBC connections in the pool. Hibernate default: 1-->
      <property name="hibernate.c3p0.min_size" value="5"/>
      <!--Maximum number of JDBC connections in the pool. Hibernate default: 100-->
      <property name="hibernate.c3p0.max_size" value="20"/>
      <!--When an idle connection is removed from the pool (in second). Hibernate default: 0, never expire.-->
      <property name="hibernate.c3p0.timeout" value="300"/>
      <!--Number of prepared statements will be cached. Increase performance. Hibernate default: 0 , caching is disable.-->
      <property name="hibernate.c3p0.max_statements" value="50"/>
      <!--idle time in seconds before a connection is automatically validated. Hibernate default: 0-->
      <property name="hibernate.c3p0.idle_test_period" value="300"/>
</properties>

y el reino en el server.xml se parece a :

<!-- Use the LockOutRealm to prevent attempts to guess user passwords
           via a brute-force attack -->
      <Realm className="org.apache.catalina.realm.LockOutRealm">
        <!-- This Realm uses the UserDatabase configured in the global JNDI
             resources under the key "UserDatabase".  Any edits
             that are performed against this UserDatabase are immediately
             available for use by the Realm.  -->
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
               resourceName="UserDatabase"/>
      </Realm>

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">

        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->

Puedo buscar en la red, pero couldnot encontrar la solución de este. hay uno en el ataque de fuerza bruta y si hay de lo que es la solución de este.

Registro de Error en Catelina.out en es:

Mar 02, 2013 3:28:34 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "tomcat"
Mar 02, 2013 3:29:49 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "tomcat"
Mar 02, 2013 3:31:04 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "tomcat"
Mar 02, 2013 3:37:25 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "admin"
Mar 02, 2013 3:38:47 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "admin"
Mar 02, 2013 3:39:58 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "admin"
Mar 02, 2013 3:46:31 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "coyote"
Mar 02, 2013 3:52:49 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "manager"
Mar 02, 2013 3:59:03 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "administrator"
Mar 02, 2013 4:06:38 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "root"
Mar 02, 2013 4:07:52 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "root"
Mar 02, 2013 4:09:17 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "root"
Mar 02, 2013 4:10:35 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "root"
Mar 02, 2013 4:11:47 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "root"
Mar 02, 2013 4:13:02 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "root"
Mar 02, 2013 4:14:17 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "root"
Mar 02, 2013 4:15:34 PM org.apache.catalina.realm.LockOutRealm authenticate
WARNING: An attempt was made to authenticate the locked user "root"

> Hibernate: select

---------------------------------- 
javax.persistence.PersistenceException: 
org.hibernate.exception.JDBCConnectionException: could not execute query

(DelegatingConstructorAccessorImpl.java:45)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
    at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
    at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1118)
    at com.mysql.jdbc.MysqlIO.send(MysqlIO.java:3321)
    at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1940)
    at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:2113)
    at com.mysql.jdbc.ConnectionImpl.execSQL(ConnectionImpl.java:2568)
    at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:2113)
    at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:2275)
    at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeQuery(NewProxyPreparedStatement.java:116)
    at org.hibernate.jdbc.AbstractBatcher.getResultSet(AbstractBatcher.java:186)
    at org.hibernate.loader.Loader.getResultSet(Loader.java:1787)
    at org.hibernate.loader.Loader.doQuery(Loader.java:674)
    at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:236)
    at org.hibernate.loader.Loader.doList(Loader.java:2220)
    ... 39 more
Caused by: java.net.SocketException: Broken pipe
InformationsquelleAutor om sharma | 2013-03-11

2 Kommentare

  1. 17

    La advertencia anterior significa que usted no para autenticar al usuario tomcat más de una vez.
    Tomcat sospechosos que se ataque de fuerza bruta sobre el usuario tomcat.

    Lo que la autenticación se utilizan en la aplicación? Lo de login-config que uso en web.xml de la aplicación?

    La configuración predeterminada de resourceName «UserDatabase» es el archivo conf/tomcat-users.xml.
    Cambio de la configuración de resourceName «UserDatabase»?

    Usted puede encontrar la configuración de los recursos UserDatabase en el archivo server.xml:

    <Resource name="UserDatabase" auth="Container"
                  type="org.apache.catalina.UserDatabase"
                  description="User database that can be updated and saved"
                  factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
                  pathname="conf/tomcat-users.xml" />
    

    Por defecto, todos los usuarios son comentó.
    Para ser capaz de trabajar con los usuarios desde el archivo XML debe descomentar. Entonces, usted será capaz de iniciar sesión con el usuario tomcat:

    <tomcat-users>
      <role rolename="tomcat"/>
      <user username="tomcat" password="tomcat" roles="tomcat"/>
    </tomcat-users>
    

    Saludos,

    Michael

    • Gracias Michael. @Miguel: no hay Ningún Cambio por mí en server.xml. Su mismo código de ejemplo pegar por usted. Mientras que en tomcat-users.xml es también lo mismo como copia predeterminada. aquí todos <tomcat-users> se comentan. Necesito comentar usuario para implementar la aplicación o ejecutar..?? Me pregunto porque tengo otro proyecto con equipo diferente con tomcat 7 y esto está funcionando bien con la misma configuración. En qué caso estoy tratando de o a la de inicio de sesión de usuario tomcat.? Actully no estoy recibiendo el caso real de donde surge el problema, porque su azar, a veces, este problema surge o en algún momento no Plz me sugieren
    • sharma todavía necesito tu aclaración si utiliza Tomcat autenticación. Lo de login-config que uso en web.xml de la aplicación? El ejemplo para la Autenticación Básica: <login-config> <auth-method>BÁSICO</auth-method> </login-config> Si utiliza el Tomcat de autenticación necesita elimine el archivo o definir el Tomcat reino. Si mi respuesta pies de su expectativa de que usted puede aceptar y promover que.
    • apreciado <pre> En web.xml ninguna entrada relacionada con inicio de sesión-confi. su defecto no hay cambios por mí mannually. Estoy usando netbeans para la implementación de la aplicación en tomcat 7. es algo malo.. o ¿necesita más explicación formar mi lado.???? < pre>
    • sharma, he comprobado Tomcat 7 fuentes y puedo confirmar que Tomcat llamada al método authenticate de todo configurado reinos sólo si utiliza Tomcat autenticación o Tomcat SSO. Si usted afirma que usted no utilice el Tomcat de autenticación no necesita comentar tomcat-users.xml. También, en este caso, las advertencias no deben aparecer. Si sólo aparecen dentro de NetBeans implementaciones (y no en la producción) puede ser puede ignorarlos y para aclarar el asunto con NetBean foro. Espero que ayude.
    • He dos versiones de tomcat en mi sistema instalado. Uno de los que me había instalado y la otra fue instalado por el netbeans en el momento de la instalación. Hace unos días fui capaz de ejecutar JSP proyectos de bien. Pero ahora me pide la autenticación y el no conseguir autenticado. El error es el mismo que fue de @OmSharma
    • Por favor, vaya a través de la respuesta y los comentarios y ver si para el 2 de implementaciones. Se debe resolver el problema
    • si este proceso continúa a suceder hace que conduce a reqular cerrar de servicio tomcat??

  2. 2

    (A los 16k de los visitantes a esta página:

    Ya que esto es ASÍ, voy a asumir que los lectores están desarrolladores.)

    Este error indica que tiene una secuencia de comandos /usuario intenta iniciar sesión con un usuario incorrecto/pass. La fijación de este es muy simple, basta con añadir el correcto user/pass par a el archivo ApacheTomcat\conf\tomcat-users.xml y reiniciar el servidor.

    También asegurarse de que usted tiene el papel configurado correctamente. E. g. si usted está enviando básica HTTP auth solicitudes para localhost:8080/manager, tendrás la manager-gui papel:

    <?xml version='1.0' encoding='utf-8'?>
    <tomcat-users>
      <role rolename="manager-gui"/>
      <user username="foobar" password="foobar" roles="tomcat,role1, manager-gui "/>
    </tomcat-users>
    • ¿Y si el problema era que el usuario no recordar la contraseña? Hay una manera de desbloquear la cuenta sin necesidad de reiniciar tomcat?
    • La cuenta se desbloquea automáticamente después de 300 segundos (valor predeterminado).

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea