Probleme mit Server unter linux und externen Cleint


Startseite Foren Hilfe bei Problemen Probleme mit Server unter linux und externen Cleint

Verschlagwortet: , , ,

15 Beiträge anzeigen - 1 bis 15 (von insgesamt 18)
  • Autor
    Beiträge
  • #2853
    unbekannter
    Teilnehmer

    Hallo,
    ich habe versucht j-lawyer auf einen mit Debian 9 laufenden Server zu installieren.
    Bis hier her klappt alles, was jetzt jedoch nicht klappt. Das ein Client von Extern auf den Server zugreifen kann.

    Ich habe in der
    /usr/local/j-lawyer-server/wildfly-9.0.2.Final/standalone/configuration/standalone-full.xml

    bereits folgende änderungen durchgeführt

    
        <interfaces>
            <interface name="management">
                <inet-address value="${jboss.bind.address.management:178.*.*.*}"/>
            </interface>
            <interface name="public">
                <inet-address value="${jboss.bind.address:178.*.*.*}"/>
            </interface>
            <interface name="unsecure">
                <inet-address value="${jboss.bind.address.unsecure:178.*.*.*}"/>
            </interface>
        </interfaces>

    Im Client erhalte ich immer die Antwort
    Anmeldedaten oder Verbindungsparameter falsch.

    netstat -tulpen
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State       User       Inode      PID/Program name
    tcp        0      0 178.*.*.*:9990     0.0.0.0:*               LISTEN      999        64341310   7260/java
    tcp        0      0 178.*.*.*:3528     0.0.0.0:*               LISTEN      999        64341305   7260/java
    tcp        0      0 178.*.*.*:3529     0.0.0.0:*               LISTEN      999        64341307   7260/java
    tcp        0      0 127.0.0.1:3306          0.0.0.0:*               LISTEN      110        64242185   2195/mysqld
    tcp        0      0 0.0.0.0:5355            0.0.0.0:*               LISTEN      102        64222228   241/systemd-resolve
    tcp        0      0 0.0.0.0:111             0.0.0.0:*               LISTEN      0          64211755   74/rpcbind
    tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      999        64341302   7260/java
    tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      0          64201713   254/sshd
    tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      0          64202744   545/exim4
    tcp6       0      0 :::5355                 :::*                    LISTEN      102        64222231   241/systemd-resolve
    tcp6       0      0 :::111                  :::*                    LISTEN      0          64211758   74/rpcbind
    tcp6       0      0 :::80                   :::*                    LISTEN      0          64197979   289/apache2
    tcp6       0      0 :::22                   :::*                    LISTEN      0          64201723   254/sshd
    tcp6       0      0 ::1:25                  :::*                    LISTEN      0          64202745   545/exim4
    udp        0      0 0.0.0.0:5355            0.0.0.0:*                           102        64222227   241/systemd-resolve
    udp        0      0 127.0.0.53:53           0.0.0.0:*                           102        64222226   241/systemd-resolve
    udp        0      0 0.0.0.0:111             0.0.0.0:*                           0          64211753   74/rpcbind
    udp        0      0 0.0.0.0:674             0.0.0.0:*                           0          64211754   74/rpcbind
    udp6       0      0 :::5355                 :::*                                102        64222230   241/systemd-resolve
    udp6       0      0 :::111                  :::*                                0          64211756   74/rpcbind
    udp6       0      0 :::674                  :::*                                0          64211757   74/rpcbind

    Was kann ich nun tun?
    Vielen dank im vorraus – Mark

    #2854
    unbekannter
    Teilnehmer

    Nachtrag

    tail -f /usr/local/j-lawyer-server/wildfly-9.0.2.Final/standalone/log/server.log

    2019-05-21 19:11:31,394 WARN  [org.jboss.jca.core.connectionmanager.pool.strategy.OnePool] (default task-16) IJ000604: Throwable while attempting to get a new connection: null: javax.resource.ResourceException: IJ031084: Unable to create connection
            at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createLocalManagedConnection(LocalManagedConnectionFactory.java:336)
            at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.getLocalManagedConnection(LocalManagedConnectionFactory.java:343)
            at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createManagedConnection(LocalManagedConnectionFactory.java:278)
            at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.createConnectionEventListener(SemaphoreArrayListManagedConnectionPool.java:1289)
            at org.jboss.jca.core.connectionmanager.pool.mcp.SemaphoreArrayListManagedConnectionPool.getConnection(SemaphoreArrayListManagedConnectionPool.java:492)
            at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getSimpleConnection(AbstractPool.java:627)
            at org.jboss.jca.core.connectionmanager.pool.AbstractPool.getConnection(AbstractPool.java:599)
            at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.getManagedConnection(AbstractConnectionManager.java:579)
            at org.jboss.jca.core.connectionmanager.tx.TxConnectionManagerImpl.getManagedConnection(TxConnectionManagerImpl.java:430)
            at org.jboss.jca.core.connectionmanager.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:737)
            at org.jboss.jca.adapters.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:138)
            at org.jboss.as.connector.subsystems.datasources.WildFlyDataSource.getConnection(WildFlyDataSource.java:67)
            at org.jboss.security.auth.spi.DatabaseServerLoginModule.getUsersPassword(DatabaseServerLoginModule.java:180)
            at org.jboss.security.auth.spi.UsernamePasswordLoginModule.login(UsernamePasswordLoginModule.java:265)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
            at java.lang.reflect.Method.invoke(Method.java:498)
            at javax.security.auth.login.LoginContext.invoke(LoginContext.java:755)
            at javax.security.auth.login.LoginContext.access$000(LoginContext.java:195)
            at javax.security.auth.login.LoginContext$4.run(LoginContext.java:682)
            at javax.security.auth.login.LoginContext$4.run(LoginContext.java:680)
            at java.security.AccessController.doPrivileged(Native Method)
            at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:680)
            at javax.security.auth.login.LoginContext.login(LoginContext.java:587)
            at org.jboss.security.authentication.JBossCachedAuthenticationManager.defaultLogin(JBossCachedAuthenticationManager.java:406)
            at org.jboss.security.authentication.JBossCachedAuthenticationManager.proceedWithJaasLogin(JBossCachedAuthenticationManager.java:345)
            at org.jboss.security.authentication.JBossCachedAuthenticationManager.authenticate(JBossCachedAuthenticationManager.java:333)
            at org.jboss.security.authentication.JBossCachedAuthenticationManager.isValid(JBossCachedAuthenticationManager.java:146)
            at org.jboss.as.security.service.SimpleSecurityManager.authenticate(SimpleSecurityManager.java:405)
            at org.jboss.as.security.service.SimpleSecurityManager.authenticate(SimpleSecurityManager.java:366)
            at org.jboss.as.security.service.SimpleSecurityManager.authenticate(SimpleSecurityManager.java:346)
            at org.jboss.as.domain.management.security.JaasCallbackHandler.handle(JaasCallbackHandler.java:174)
            at org.jboss.as.domain.management.security.SecurityRealmService$1.handle(SecurityRealmService.java:175)
            at org.jboss.as.remoting.RealmSecurityProvider$RealmCallbackHandler.handle(RealmSecurityProvider.java:385)
            at org.jboss.sasl.util.AbstractSaslParticipant.tryHandleCallbacks(AbstractSaslParticipant.java:98)
            at org.jboss.sasl.util.AbstractSaslParticipant.handleCallbacks(AbstractSaslParticipant.java:83)
            at org.jboss.sasl.plain.PlainSaslServer.access$000(PlainSaslServer.java:41)
            at org.jboss.sasl.plain.PlainSaslServer$1.evaluateMessage(PlainSaslServer.java:88)
            at org.jboss.sasl.util.AbstractSaslParticipant.evaluateMessage(AbstractSaslParticipant.java:165)
            at org.jboss.sasl.util.AbstractSaslServer.evaluateResponse(AbstractSaslServer.java:56)
            at org.xnio.sasl.SaslUtils.evaluateResponse(SaslUtils.java:245)
            at org.xnio.sasl.SaslUtils.evaluateResponse(SaslUtils.java:217)
            at org.jboss.remoting3.remote.ServerConnectionOpenListener$AuthStepRunnable.run(ServerConnectionOpenListener.java:491)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
            at java.lang.Thread.run(Thread.java:748)
    Caused by: java.sql.SQLException: Access denied for user 'root'@'localhost'
            at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:959)
            at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3870)
            at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:3806)
            at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:871)
            at com.mysql.jdbc.MysqlIO.proceedHandshakeWithPluggableAuthentication(MysqlIO.java:1686)
            at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1207)
            at com.mysql.jdbc.ConnectionImpl.coreConnect(ConnectionImpl.java:2254)
            at com.mysql.jdbc.ConnectionImpl.connectOneTryOnly(ConnectionImpl.java:2285)
            at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2084)
            at com.mysql.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:795)
            at com.mysql.jdbc.JDBC4Connection.<init>(JDBC4Connection.java:44)
            at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
            at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
            at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
            at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
            at com.mysql.jdbc.Util.handleNewInstance(Util.java:404)
            at com.mysql.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:400)
            at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:327)
            at org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createLocalManagedConnection(LocalManagedConnectionFactory.java:312)
            ... 46 more
    #2855
    j-lawyer.org
    Administrator

    Hi!

    Zum ersten Post: ich sehe zumindest dass „jemand“ an Port 8080 lauscht:

    tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 999 6434130

    Du müsstest mal schauen ob die PID zu einem Java-Prozess gehört. Aus der Sicht erstmal alles okay.

    Zum zweiten Post: Das hier ist die Wurzel allen Übels:

    java.sql.SQLException: Access denied for user 'root'@'localhost'

    Er kann sich mit den konfigurierten Zugangsdaten nicht zur MySQL-Datenbank verbinden. Schau doch mal ob Du über die Kommandozeile eine Verbindung hinbekommst:

    mysql -u root -p

    Wenn das klappt, prüfe ob das richtige Passwort in der standalone-full.xml steht.

    Gern nochmal melden.

    Grüße
    Jens
    (j-lawyer.org)

    #2856
    unbekannter
    Teilnehmer

    Hallo Jens,

    noch als kleinen zusatz. Die installation wurde nach der Anleitung „https://www.j-lawyer.org/?page_id=93&#8220; gemacht. Es ist ein Komplett frisch installiertes Debian 9 ohne anderen Krimskrams. Nach der Minimalinstallation wurde MariaDB wie in der Anleitung steht installiert. Auch die Schritte in der Anleitung (mit der Aussnahme von j-lawyer-server_unix_1_9.sh der ja nun j-lawyer-server_unix_1_9_9.sh heisst) wurden 1:1 durchgeführt und sind Fehlerfrei durchgelaufen.

    root@vps:~# mysql -u root -p
    Enter password:
    Welcome to the MariaDB monitor.  Commands end with ; or \g.
    Your MariaDB connection id is 24
    Server version: 10.1.38-MariaDB-0+deb9u1 Debian 9.8
    
    Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    MariaDB [(none)]>

    Der Login als Root zur Datenbank ist auch Problemlos möglich, das Passwort von MYSQL Root ist mit dem in standalone-full.xml steht auch das Mysql Passwort die es auch ist.
    Die Installation konnte auch den mysql user jlawyer anlegen.

    ABER

    # mysql -u jlawyer -p
    Enter password:
    ERROR 1698 (28000): Access denied for user 'jlawyer'@'localhost'

    Gruß Mark

    • Diese Antwort wurde vor vor 4 Jahren, 10 Monaten von unbekannter bearbeitet.
    #2858
    j-lawyer.org
    Administrator

    Okay, Login als root geht also. Und stehen die Zugangsdaten auch korrekt in der standalone-full.xml? Die Datei liegt im Anwendungsverzeichnis unter

    /wildfly-9.0.2.Final/standalone/configuration/

    Dort ist ein solcher Abschnitt enthalten:

                    <datasource jndi-name="java:/jlawyerdb" pool-name="jlawyerdb" enabled="true">
                        <connection-url>jdbc:mysql://localhost:3306/jlawyerdb</connection-url>
                        <driver>mysql</driver>
                        <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
                        <pool>
                            <min-pool-size>10</min-pool-size>
                            <max-pool-size>100</max-pool-size>
                        </pool>
                        <security>
                            <user-name>root</user-name>
                            <password>sulibo64</password>
                        </security>
                        <validation>
                            <check-valid-connection-sql>select count(*) from dual</check-valid-connection-sql>
                            <validate-on-match>false</validate-on-match>
                            <background-validation>true</background-validation>
                            <background-validation-millis>60000</background-validation-millis>
                        </validation>
                        <statement>
                            <prepared-statement-cache-size>100</prepared-statement-cache-size>
                            <share-prepared-statements>true</share-prepared-statements>
                        </statement>
                    </datasource>

    Außerdem könntest Du noch schauen ob die Datenbank korrekt eingerichtet wurde:

    mysql -u root -p
    use jlawyerdb;
    show tables;

    Dort sollten dann ein paar Tabellennamen ausgegeben werden.

    • Diese Antwort wurde vor vor 4 Jahren, 10 Monaten von j-lawyer.org bearbeitet. Grund: Formatierung
    #2860
    unbekannter
    Teilnehmer

    Huhu,

    ja, beides ist eingegeben wie von dir gesagt. Das Root passwort ist in der Datei /usr/local/j-lawyer-server/wildfly-9.0.2.Final/standalone/configuration/standalone-full.xml genauso wie auch das mysql Passwort sein soll. Es ist kein zeichen zu viel / zu wenig / leerzeichen.

    #nano /usr/local/j-lawyer-server/wildfly-9.0.2.Final/standalone/configuration/standalone-full.xml

                    <datasource jndi-name="java:/jlawyerdb" pool-name="jlawyerdb" enabled="true">
                        <connection-url>jdbc:mysql://localhost:3306/jlawyerdb</connection-url>
                        <driver>mysql</driver>
                        <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
                        <pool>
                            <min-pool-size>10</min-pool-size>
                            <max-pool-size>100</max-pool-size>
                        </pool>
                        <security>
                            <user-name>root</user-name>
                            <password>geheimespw</password>
                        </security>
                        <validation>
                            <check-valid-connection-sql>select count(*) from dual</check-valid-connection-sql>
                            <validate-on-match>false</validate-on-match>
                            <background-validation>true</background-validation>
                            <background-validation-millis>60000</background-validation-millis>
                        </validation>
                        <statement>
                            <prepared-statement-cache-size>100</prepared-statement-cache-size>
                            <share-prepared-statements>true</share-prepared-statements>
                        </statement>
                    </datasource>

    Ausgabe von

    root@vps:~# mysql -u root -p
    Enter password:
    Welcome to the MariaDB monitor.  Commands end with ; or \g.
    Your MariaDB connection id is 26
    Server version: 10.1.38-MariaDB-0+deb9u1 Debian 9.8
    
    Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    MariaDB [(none)]> use jlawyerdb;
    Reading table information for completion of table and column names
    You can turn off this feature to get a quicker startup with -A
    
    Database changed
    MariaDB [jlawyerdb]> show tables;
    +--------------------------+
    | Tables_in_jlawyerdb      |
    +--------------------------+
    | AddressBean              |
    | AddressTagsBean          |
    | AppOptionGroupBean       |
    | AppRoleBean              |
    | AppUserBean              |
    | ArchiveFileAddressesBean |
    | ArchiveFileBean          |
    | ArchiveFileDocumentsBean |
    | ArchiveFileHistoryBean   |
    | ArchiveFileReviewsBean   |
    | ArchiveFileTagsBean      |
    | BankDataBean             |
    | CityDataBean             |
    | FaxQueueBean             |
    | ServerSettingsBean       |
    | campaign                 |
    | campaign_addresses       |
    +--------------------------+
    17 rows in set (0.00 sec)
    
    MariaDB [jlawyerdb]>

    Gruß Mark

    #2861
    j-lawyer.org
    Administrator

    Sieht praktisch alles gut aus.

    Dann bitte mal das komplette server.log an die Mail im Impressum senden.

    Danke!

    #2862
    j-lawyer.org
    Administrator

    Bitte nochmal folgendes:

    – Server stoppen (wenn als Dienst installiert: sudo service j-lawyer-server stop)
    – server.log löschen
    – Server starten (sudo service j-lawyer-server stop), 3min warten
    – server.log nochmal senden

    Danke

    #4034
    ghjh
    Teilnehmer

    Hallo,

    ich weiß dass dieser Thread jetzt schon 1,5 Jahre alt ist. Aber ich habe genau das gleiche Problem.

    Im Log steht

    java.sql.SQLException: Access denied for user ‚root’@’localhost‘

    Per mysql -u root -p im terminal geht es aber und die tables von jwlayerdb werden mir auch angezeigt.

    Habt ihr damals eine Lösung gefunden?

    Ich verwende Debian buster und J-lawyer 1.12

    #4035
    j-lawyer.org
    Administrator

    @ghjh was ergibt diese Abfrage?

    select User, plugin from mysql.user;

    Wahrscheinlich ist die Datenbank so eingestellt, dass eine Anmeldung nur per Unix-Socket, nicht aber per TCP möglich ist.

    Grüße
    Jens / j-lawyer.org

    #4036
    ghjh
    Teilnehmer

    Hallo Jens,

    danke für die schnelle Antwort.

    Die Ausgabe ergibt

    | user | plugin |
    | root | |

    1 row in set (0.019 sec)

    Damit weiß ich leider nichts anzufangen 🙂

    Liebe Grüße und einen schönen 3.Advent

    #4037
    j-lawyer.org
    Administrator

    Und was ergibt in der Shell

    netstat -an | grep 3306

    ?

    Wenn dort keine andere Datenbank gehostet wird, dann könnte ich ein Statement zuarbeiten, das eine Anmeldung per TCP und Nutzername/Passwort zulässt. Wenn es sich um unternehmenskritische Infrastruktur handelt, müssen wir anders vorgehen 🙂

    #4038
    ghjh
    Teilnehmer

    root@test-pc:/home/test# netstat -an | grep 3306
    tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN

    es handelt sich um keine kritische infrastruktur. wir befinden uns in der Gründungsphase einer Kanzlei und testen deine hervorragende Software. Wir wollen möglichst die ganze Kanzlei unter FLOSS laufen lassen.

    LG,
    Ghjh

    #4039
    j-lawyer.org
    Administrator

    Passwortauthentifizierung erlauben:

    UPDATE mysql.user SET plugin = 'mysql_native_password' WHERE user = 'root';

    Neues Passwort setzen:

    ALTER USER root@localhost identified by 'meinGutesPasswort123';

    flush privileges;

    Dann in der Shell prüfen ob man nun mit Passwort authentifizieren kann:

    mysql -u root -p

    Wenn das klappt, dann den j-lawyer.org Server neu starten

    sudo service j-lawyer-server restart

    und dann das server.log auf Fehler prüfen.

    #4040
    ghjh
    Teilnehmer

    Leider ist das Problem nach wie vor das selbe 🙁

    Aber da es sich nur um ein Testsystem handelt, glaube ich, dass ich es einfach neu aufsetze und schaue, was dann passiert.

    Möchtest du, dass ich dir trotzdem das log schicke?

15 Beiträge anzeigen - 1 bis 15 (von insgesamt 18)
  • Du musst angemeldet sein, um zu diesem Thema eine Antwort verfassen zu können.