Nextcloud Login nicht möglich: Not enough arguments (missing: "configID")

Hallo,

habe ich gemacht.
ich habe das cryptische Passwort aus der …/conf/admin.secret ausgelesen und in dem Container mit
sudo -u www-data /var/www/html/occ user:resetpassword nc_admin
gesetzt (cut & paste)

Jetzt bekomme vom join script dieses log:

RUNNING 50nextcloud.inst
2018-02-07 15:13:56.003590350+01:00 (in joinscript_init)
Object exists: cn=services,cn=univention,dc=[meinedomain],dc=de
Object exists: cn=Nextcloud,cn=services,cn=univention,dc=[meinedomain],dc=de
WARNING: cannot append Nextcloud to service, value exists
No modification: cn=ucs,cn=dc,cn=computers,dc=[meinedomain],dc=de
Not updating nextcloud/ucs/modifyUsersFilter
Not updating nextcloud/ucs/userEnabled
Not updating nextcloud/ucs/userQuota
Not updating nextcloud/ucs/debug
Not updating nextcloud/ldap/cacheTTL
Not updating nextcloud/ldap/homeFolderAttribute
Not updating nextcloud/ldap/userSearchAttributes
Not updating nextcloud/ldap/userDisplayName
Not updating nextcloud/ldap/groupDisplayName
Not updating nextcloud/ldap/base
Not updating nextcloud/ldap/baseUsers
Not updating nextcloud/ldap/baseGroups
Not updating nextcloud/ldap/filterLogin
Not updating nextcloud/ldap/filterUsers
Not updating nextcloud/ldap/filterGroups
dpkg-query: Kein Paket gefunden, das auf univention-ldap-overlay-memberof passt
Object exists: cn=ldapschema,cn=univention,dc=[meinedomain],dc=de
INFO: No change of core data of object nextcloud.
No modification: cn=nextcloud,cn=ldapschema,cn=univention,dc=[meinedomain],dc=de

Waiting for activation of the extension object nextcloud: OK
Object exists: cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
E: Object exists: cn=nextcloudUserEnabled,cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
No modification: cn=nextcloudUserEnabled,cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
E: Object exists: cn=nextcloudUserQuota,cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
No modification: cn=nextcloudUserQuota,cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
E: Object exists: cn=nextcloudGroupEnabled,cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
No modification: cn=nextcloudGroupEnabled,cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
EXITCODE=0

aber NC steht immer noch auf “ausstehend” im Domänenbeitritt Fenster

Hmm, ich vermute, dass das Join-Script nach dem erfolglosen ersten Versuch nun im »Update«-Modus läuft und daher nur gewisse Dinge tut oder so…

Also jetzt vielleicht doch noch mal den Holzhammer rausholen:

  1. Nextcloud-App deinstallieren
  2. Datei /var/lib/univention-appcenter/apps/nextcloud/conf/initial_config_done entfernen, sofern sie existiert
  3. Nextcloud-App wieder installieren
  4. Schauen, was das join.log zum Script sagt

Gruß
mosu

Hallo,

es existiert nach dem deinstallieren nur noch dieses Verzeichnis

/var/lib/univention-appcenter/apps/nextcloud

mit diesen beiden Dateien:

ls -la
insgesamt 16
drwxr-xr-x  2 root root 4096 Feb  7 16:12 .
drwxr-xr-x 11 root root 4096 Jan 26 15:49 ..
-rw-r--r--  1 root root   64 Jan 30 15:15 machine.secret
-r--------  1 root root 1466 Feb  7 13:51 nextcloud.env

Somit nichts von Hand zu löschen. Was ist jetzt anders, wenn ich es wieder “neu” installiere? Ich denke nicht, dass sich jetzt etwas ändern würde, denn letztenlich ist nur eine De- und Neuinstallation, welche ich ja jettz schon mehrfach gemacht habe.
Gibt es möglicherweise noch irgendwelche andere Nextcloud leichen auf dem Server, welche gelöscht werden könnten?

Im jetztigen Zustand - also ohne NC - läuft das join script ohne Fehler durch - das nur zur Info.

Jan

Huhu,

Die Datenbank existiert mit ziemlicher Sicherheit noch:

echo '\l' | sudo -u postgres psql template1 | grep nextcloud

Falls ja und da noch nichts drin ist, was behaltenswert ist, sollte sie gelöscht werden, bevor die App neu installiert wird. Sonst passiert vermutlich folgendes:

  1. App wird installiert und schreibt zufällig erzeugtes Admin-PW nach /var/lib/univention-appcenter/apps/nextcloud/admin.secret.
  2. App prüft, ob DB vorhanden ist; ist sie, daher wird keine neue DB erstellt.
  3. Nun sind Passwort-in-Datei und Passwort-in-Datenbank unterschiedlich, und das Join-Script wird wieder fehlschlagen.

Löschen der DB geht wie folgt:

sudo -u postgres dropdb nextcloud

Gruß
mosu

Hallo,

also ein

echo '\l' | sudo -u postgres psql template1

ergibt

echo '\l' | sudo -u postgres psql template1
                                  Liste der Datenbanken
   Name    | Eigentümer | Kodierung | Sortierfolge | Zeichentyp  |  Zugriffsprivilegien  
-----------+------------+-----------+--------------+-------------+-----------------------
 postgres  | postgres   | UTF8      | de_DE.UTF-8  | de_DE.UTF-8 | 
 template0 | postgres   | UTF8      | de_DE.UTF-8  | de_DE.UTF-8 | =c/postgres          +
           |            |           |              |             | postgres=CTc/postgres
 template1 | postgres   | UTF8      | de_DE.UTF-8  | de_DE.UTF-8 | =c/postgres          +
           |            |           |              |             | postgres=CTc/postgres
(3 Zeilen)

Ist also scheinbar keine nextcloud db mehr da. Kann ich sonst noch etwas machen, bevor ich es noch einmal installiere?

Jan

Hmm,

nichts, was mir spontan einfallen würde. Sorry :frowning:

Gruß
mosu

Hallo,
ich hatte die ganze Zeit auch die SSL Zertifikate in Verdacht.
Auf dem UCS habe ich bei der Installation - dummerweise - 2 letsencrypt Zertifikate (erfolgreich) installiert. Der UCS Server ist unter beiden (subdomain) Adressen verfügbar und der Browser als auch Mailserver nutzen die Zertifikate problemlos.
Kann da noch das Problem liegen?

Jan

Huhu,

denke eher nein. Das Fehlerbild oben zeigte ja eine XML-Nachricht direkt vor der Meldung, dass der Admin-Account nicht gefunden werden kann. Diese Nachricht wurde von der Nextcloud-API erzeugt — sprich in dem Moment war das Zertifikat bereits von curl akzeptiert, die Anfrage geschickt, und die Antwort kam zurück. Aber die Antwort ist halt negativ (Code 404), und ich konnte so eine Antwort halt genau dann reproduzieren, wenn ungültige Logindaten (User nc_admin mit falschem Passwort) geschickt wurden.

Gruß
mosu

Hi,

also ich habe jetzt Nextcloud wieder neu installiert.
Das Join Log sieht so aus:

univention-run-join-scripts started
Do 8. Feb 10:22:36 CET 2018

RUNNING 50nextcloud.inst
2018-02-08 10:22:39.126354571+01:00 (in joinscript_init)
Object exists: cn=services,cn=univention,dc=[meinedomain],dc=de
Object exists: cn=Nextcloud,cn=services,cn=univention,dc=[meinedomain],dc=de
WARNING: cannot append Nextcloud to service, value exists
No modification: cn=ucs,cn=dc,cn=computers,dc=[meinedomain],dc=de
Not updating nextcloud/ucs/modifyUsersFilter
Not updating nextcloud/ucs/userEnabled
Not updating nextcloud/ucs/userQuota
Not updating nextcloud/ucs/debug
Not updating nextcloud/ldap/cacheTTL
Not updating nextcloud/ldap/homeFolderAttribute
Not updating nextcloud/ldap/userSearchAttributes
Not updating nextcloud/ldap/userDisplayName
Not updating nextcloud/ldap/groupDisplayName
Not updating nextcloud/ldap/base
Not updating nextcloud/ldap/baseUsers
Not updating nextcloud/ldap/baseGroups
Not updating nextcloud/ldap/filterLogin
Not updating nextcloud/ldap/filterUsers
Not updating nextcloud/ldap/filterGroups
dpkg-query: Kein Paket gefunden, das auf univention-ldap-overlay-memberof passt
Object exists: cn=ldapschema,cn=univention,dc=[meinedomain],dc=de
INFO: No change of core data of object nextcloud.
No modification: cn=nextcloud,cn=ldapschema,cn=univention,dc=[meinedomain],dc=de

Waiting for activation of the extension object nextcloud: OK
Object exists: cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
E: Object exists: cn=nextcloudUserEnabled,cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
No modification: cn=nextcloudUserEnabled,cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
E: Object exists: cn=nextcloudUserQuota,cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
No modification: cn=nextcloudUserQuota,cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
E: Object exists: cn=nextcloudGroupEnabled,cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
Object modified: cn=nextcloudGroupEnabled,cn=nextcloud,cn=custom attributes,cn=univention,dc=[meinedomain],dc=de
EXITCODE=0

Do 8. Feb 10:24:54 CET 2018
univention-run-join-scripts finished

Sieht ja toll aus … aber im UCS steht - selbst nach einem Neustart - immer noch “ausstehend” bei dem Nexcloud Beitritt.

Kann man die ganzen nextcloud Objeke nicht einfach aus dem LDAP löschen?

p.s. Ich bekomme die Nextcloud Anmeldeseite, kann mich aber nicht anmelden.

Jan

Huhu,

mir ist leider nicht klar, unter welchen Umständen genau diese Ausgaben kommen können. Nach Lesen von /usr/lib/univention-install/50nextcloud.inst hätte ich entweder mehr Ausgaben oder einen EXITCODE erwartet, der eben nicht 0 ist.

Können Sie bitte mal folgendes machen:

  1. Datei /usr/lib/univention-install/50nextcloud.inst bearbeiten
  2. Ganz am Anfang direkt nach der #!/bin/bash-Zeile die folgende Zeile einfügen: set -x
  3. uinvention-run-join-scripts ausführen
  4. Die dabei entstehende Logmeldungen vom 50nextcloud posten

Das werden nun deutlich mehr sein, weil das set -x die Shell anweist, alle ausgeführten Befehle zu protokollieren. Eventuell das Ganze um Passwörter bereinigen.

Danke.

Gruß
mosu

1 Like

Hallo,

OK, hier das lange log.
Die letzten Zeilen enthalten einen bekannten Fehler.

+ joinscript_log_error 'Could not create LDAP Config at Nextcloud'
+ local line
+ echo -en 'Could not create LDAP Config at Nextcloud'
+ read line
+ exit 0

Der Rest sagt mir wenig.

Janjoin.log (210.0 KB)

Ich könnte mir vorstellen, dass die Objekte nicht neu erzeugt werden (weil sie ja vorhanden sind) aber die alten Daten nicht zu der neuen Installation passen. Das würde doch bedeuten, dass diese Objekte erstmal komplette aus LDAP raus müssen !?

Jan

Alles sehr wirr.

Kann es evtl. sein, dass die Datenbank nicht angelegt wird? Jetzt ist die App ja gerade installiert. Zeigen Sie bitte noch mal die Ausgaben der folgenden zwei Befehle:

grep -E 'db(type|host|port|name)' /var/lib/univention-appcenter/apps/nextcloud/conf/config/config.php
echo '\l' | sudo -u postgres psql template1 | grep -i nextcloud

Gruß
mosu

Hallo,

hier die Ausgabe vom grep:

'dbtype' => 'pgsql',
  'dbname' => 'nextcloud',
  'dbhost' => '172.17.42.1',
  'dbport' => '5432',

und hier die vom postgres

 nextcloud | nextcloud  | UTF8      | de_DE.UTF-8  | de_DE.UTF-8 | nextcloud=CTc/nextcloud

Zur Info: Die nextcloud App (der Containerf) lässt sich jedesmal fehlerferi Installieren und deinstallieren (keine Fehler).

Jan

Hmm OK. Gehen wir mal ganz zum Anfang zurück: dass keine LDAP-Verbindung zustande kommt, wie ldap:config-test zeigt. Bitte mal das hier…

univention-app shell nextcloud
sudo -u www-data php /var/www/html/occ config:list|grep -i ldap|grep -v password

Gruß
mosu

Hallo,

Hier die Ausgabe:

< -u www-data php /var/www/html/occ config:list|grep -i ldap|grep -v password
        "ldapIgnoreNamingRules": false,
        "ldapProviderFactory": "\\OCA\\User_LDAP\\LDAPProviderFactory",
        "user_ldap": {
            "s01ldap_backup_host": "",
            "s01ldap_backup_port": "",
            "s01ldap_tls": "0",
            "s01ldap_turn_off_cert_check": "0",
            "s01ldap_display_name": "displayName",
            "s01ldap_user_display_name_2": "",
            "s01ldap_gid_number": "gidNumber",
            "s01ldap_userfilter_objectclass": "",
            "s01ldap_userfilter_groups": "",
            "s01ldap_groupfilter_groups": "",
            "s01ldap_group_display_name": "cn",
            "s01ldap_group_member_assoc_attribute": "uniqueMember",
            "s01ldap_loginfilter_email": "0",
            "s01ldap_loginfilter_username": "1",
            "s01ldap_loginfilter_attributes": "",
            "s01ldap_quota_def": "",
            "s01ldap_base": "dc=[meinedomain],dc=de",
            "s01ldap_base_users": "dc=[meinedomain],dc=de",
            "s01ldap_dn": "cn=nextc-99792336,cn=memberserver,cn=computers,dc=[meinedomain],dc=de",
            "s01ldap_userlist_filter": "(&(objectclass=nextcloudUser)(nextcloudEnabled=1))",
            "s01ldap_group_filter": "(&(objectclass=nextcloudGroup)(nextcloudEnabled=1))",
            "s01ldap_group_filter_mode": "1",
            "s01ldap_login_filter": "(&(objectclass=nextcloudUser)(nextcloudEnabled=1)(uid=%uid))",
            "s01ldap_login_filter_mode": "1",
            "s01ldap_cache_ttl": "600",
            "s01ldap_override_main_server": "",
            "s01ldap_attributes_for_group_search": "",
            "s01ldap_expert_uuid_user_attr": "",
            "s01ldap_expert_uuid_group_attr": "",
            "s01ldap_nested_groups": "0",
            "s01ldap_paging_size": "500",
            "s01ldap_turn_on_pwd_change": "0",
            "s01ldap_dynamic_group_member_url": "",
            "s01ldap_default_ppolicy_dn": "",
            "s01ldap_host": "ucs.[meinedomain].de",
            "s01ldap_port": "7389",
            "s01ldap_base_groups": "cn=groups,dc=[meinedomain],dc=de",
            "s01ldap_user_filter_mode": "1",
            "s01ldap_groupfilter_objectclass": "nextcloudGroup",
            "s01ldap_quota_attr": "nextcloudQuota",
            "s01ldap_email_attr": "mailPrimaryAddress",
            "s01ldap_configuration_active": "1",
            "s01ldap_attributes_for_user_search": "uid\ngivenName\nsn\nemployeeNumber\nmailPrimaryAddress",
            "s01ldap_experienced_admin": "1",
            "s01ldap_expert_username_attr": "uid",

Jan

OK, dann nun ein kleiner Test, ob ein manueller LDAP-Connect aus dem Docker-Container zum Server funktioniert (vorsicht, sehr lange Zeile):

univention-app shell nextcloud
perl -MIO::Socket::IP -e "IO::Socket::IP->new(PeerHost => '$(sudo -u www-data php /var/www/html/occ config:app:get user_ldap s01ldap_host)', PeerPort => $(sudo -u www-data php /var/www/html/occ config:app:get user_ldap s01ldap_port), Type => SOCK_STREAM) || die"

Wenn das nur kommentarlos zum Prompt zurückkkehrt, dann klappt die Verbindung. Andernfalls bitte mal posten, was kommt.

Gruß
mosu

Hallo,

das kam nach rund 2 Minuten raus:

Connection timed out ...propagated at -e line 1.

Jan

Klingt nach Firewall? Was sagt denn iptables -L -nv auf dem Host?

Hallo,

zur Info: ich habe keine Regeln manuell auf dem UCS angelegt oder geändert:

Chain INPUT (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
  14M 6333M ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
1113K  729M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
    3   252 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           
  693 38688 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:25
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:7636
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:111
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpts:32765:32769
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:544
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:88
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:7389
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:464
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:88
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:2049
  841 50460 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5432
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:143
  203 12060 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:8443
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpts:32765:32769
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:53
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:123
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:464
  416 22432 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:80
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:995
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:110
10223  621K ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:443
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:236
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:2049
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:5666
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:636
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:6670
   13   780 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:22
  332 19664 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:465
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:11212
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:7777
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:6669
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:8080
  695 41620 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:993
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:389
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:749
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:237
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:111
    0     0 ACCEPT     udp  --  *      *       0.0.0.0/0            0.0.0.0/0            udp dpt:53
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:7777
    0     0 ACCEPT     tcp  --  *      *       172.17.0.0/16        0.0.0.0/0            tcp dpt:3306
  132 18632 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-port-unreachable

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
14268   13M DOCKER-ISOLATION  all  --  *      *       0.0.0.0/0            0.0.0.0/0           
 4145   13M DOCKER     all  --  *      docker0  0.0.0.0/0            0.0.0.0/0           
 4145   13M ACCEPT     all  --  *      docker0  0.0.0.0/0            0.0.0.0/0            ctstate RELATED,ESTABLISHED
10123  611K ACCEPT     all  --  docker0 !docker0  0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     all  --  docker0 docker0  0.0.0.0/0            0.0.0.0/0           

Chain OUTPUT (policy ACCEPT 73492 packets, 72M bytes)
 pkts bytes target     prot opt in     out     source               destination         
  14M 6333M ACCEPT     all  --  *      lo      0.0.0.0/0            0.0.0.0/0           

Chain DOCKER (1 references)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 ACCEPT     tcp  --  !docker0 docker0  0.0.0.0/0            172.17.0.1           tcp dpt:80

Chain DOCKER-ISOLATION (1 references)
 pkts bytes target     prot opt in     out     source               destination         
14268   13M RETURN     all  --  *      *       0.0.0.0/0            0.0.0.0/0           

Jan

Wird nicht weniger wirr :grinning: Oder ich seh den Wald vor lauter Bäumen nicht.

Bite mal im Container:

apt-get install iputils-ping
ping -c 2 $(sudo -u www-data php /var/www/html/occ config:app:get user_ldap s01ldap_host)

Gruß
mosu

Mastodon