Selinux blocking NC Client after upgrade to NC16

Support intro

NC 16.0
Fedora 29 incl. latest updates
Apache/2.4.39 (Fedora)
PHP 7.2.18

After an upgrade to NC16.0 from NC15 (15.5 if I remember correctly) I get the following message in the browser when calling my NC instance:

Error
Your data directory is not writable
Permissions can usually be fixed by giving the webserver write access to the root directory.
See https://docs.nextcloud.com/server/16/go.php?to=admin-dir_permissions.

But not just this, additionally the NC client does not sync at all and I get “bombed” with dozens of

Selinux Error Messages

SELinux hindert php-fpm daran, mit add_name-Zugriff auf Verzeichnis 3787042995
zuzugreifen.

Plugin: catchall
SELinux verweigerte den von php-fpm angeforderten Zugriff. Da nicht davon
ausgegangen wird, dass dieser Zugriff von php-fpm benötigt wird, signalisiert
dies möglicherweise einen Einbruchsversuch. Es ist ausserdem möglich, dass diese
spezielle Version oder Konfiguration der Anwendung den zusätzlichen Zugriff
verursacht.

Wenn Sie denken, dass es php-fpm standardmäßig erlaubt sein sollte, add_name
Zugriff auf 3787042995 directory zu erhalten.
Sie sollten dies als Fehler melden.
Um diesen Zugriff zu erlauben, können Sie ein lokales Richtlinien-Modul erstellen.
Zugriff jetzt erlauben, indem Sie die nachfolgenden Befehle ausführen:

# ausearch -c ‘php-fpm’ --raw | audit2allow -M my-phpfpm
# semodule -X 300 -i my-phpfpm.pp


SELinux hindert php-fpm daran, mit add_name-Zugriff auf Verzeichnis 3787042995
zuzugreifen.

***** Plugin catchall (100. Wahrscheinlichkeit) schlägt vor **************

Wenn Sie denken, dass es php-fpm standardmäßig erlaubt sein sollte, add_name
Zugriff auf 3787042995 directory zu erhalten.
Dann sie sollten dies als Fehler melden.
Um diesen Zugriff zu erlauben, können Sie ein lokales Richtlinien-Modul
erstellen.
Ausführen
zugriff jetzt erlauben, indem Sie die nachfolgenden Befehle ausführen:

ausearch -c ‘php-fpm’ --raw | audit2allow -M my-phpfpm
semodule -X 300 -i my-phpfpm.pp

zusätzliche Information:
Quellkontext system_u:system_r:httpd_t:s0
Zielkontext system_u:object_r:unlabeled_t:s0
Zielobjekte 3787042995 [ dir ]
Quelle php-fpm
Quellpfad php-fpm
Port
Host wind
RPM-Pakete der Quelle
RPM-Pakete des Ziels
Richtlinien-RPM selinux-policy-3.14.2-57.fc29.noarch
SELinux aktiviert True
Richtlinientyp targeted
Enforcing-Modus Permissive
Rechnername wind
Plattform Linux wind 5.0.13-200.fc29.x86_64 #1 SMP Mon May 6
00:49:54 UTC 2019 x86_64 x86_64
Anzahl der Alarme 6
Zuerst gesehen 2019-05-12 17:59:23 CEST
Zuletzt gesehen 2019-05-12 18:01:13 CEST
Lokale ID 2155f298-d389-498a-8a78-8688fe89cbe7

Raw-Audit-Meldungen
type=AVC msg=audit(1557676873.194:8423): avc: denied { add_name } for
pid=1639 comm=“php-fpm” name=“3787042995”
scontext=system_u:system_r:httpd_t:s0
tcontext=system_u:object_r:unlabeled_t:s0
tclass=dir permissive=1

Hash: php-fpm,httpd_t,unlabeled_t,dir,add_name


SELinux hindert php-fpm daran, mit read-Zugriff auf Verzeichnis /next
zuzugreifen.

***** Plugin restorecon (99.5 Wahrscheinlichkeit) schlägt vor ************

Wenn Sie das Etikett reparieren möchten./next Default Label sollte sein
httpd_sys_rw_content_t.
Dann sie können restorecon ausführen.
Der Zugriffsversuch wurde möglicherweise aufgrund unzureichender Berechtigungen
für den Zugriff auf ein übergeordnetes Verzeichnis angehalten.
Versuchen Sie in diesem Fall, den folgenden Befehl entsprechend zu ändern.
Ausführen
# /sbin/restorecon -v /next

***** Plugin catchall (1.49 Wahrscheinlichkeit) schlägt vor **************

Wenn Sie denken, dass es php-fpm standardmäßig erlaubt sein sollte, read Zugriff
auf next directory zu erhalten.
Dann sie sollten dies als Fehler melden.
Um diesen Zugriff zu erlauben, können Sie ein lokales Richtlinien-Modul
erstellen.
Ausführen
zugriff jetzt erlauben, indem Sie die nachfolgenden Befehle ausführen:

# ausearch -c ‘php-fpm’ --raw | audit2allow -M my-phpfpm
# semodule -X 300 -i my-phpfpm.pp

zusätzliche Information:
Quellkontext system_u:system_r:httpd_t:s0
Zielkontext system_u:object_r:unlabeled_t:s0
Zielobjekte /next [ dir ]
Quelle php-fpm
Quellpfad php-fpm
Port
Host wind
RPM-Pakete der Quelle
RPM-Pakete des Ziels
Richtlinien-RPM selinux-policy-3.14.2-57.fc29.noarch
SELinux aktiviert True
Richtlinientyp targeted
Enforcing-Modus Permissive
Rechnername wind
Plattform Linux wind 5.0.13-200.fc29.x86_64 #1 SMP Mon May 6
00:49:54 UTC 2019 x86_64 x86_64
Anzahl der Alarme 8
Zuerst gesehen 2019-05-12 17:59:23 CEST
Zuletzt gesehen 2019-05-12 18:10:49 CEST
Lokale ID 686b0bc4-7152-445d-8fe1-2a4ddfc53ba0

Raw-Audit-Meldungen
type=AVC msg=audit(1557677449.155:8431): avc: denied { read } for pid=2658 comm=“php-fpm” name="/" dev=“dm-9” ino=2 scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:unlabeled_t:s0 tclass=dir permissive=1

Hash: php-fpm,httpd_t,unlabeled_t,dir,read


SELinux hindert php-fpm daran, mit add_name-Zugriff auf Verzeichnis data_dir_writability_test_5cd9c7e361fc6.tmp zuzugreifen.

***** Plugin catchall (100. Wahrscheinlichkeit) schlägt vor **************

Wenn Sie denken, dass es php-fpm standardmäßig erlaubt sein sollte, add_name Zugriff auf data_dir_writability_test_5cd9c7e361fc6.tmp directory zu erhalten.
Dann sie sollten dies als Fehler melden.
Um diesen Zugriff zu erlauben, können Sie ein lokales Richtlinien-Modul erstellen.
Ausführen
zugriff jetzt erlauben, indem Sie die nachfolgenden Befehle ausführen:
# ausearch -c ‘php-fpm’ --raw | audit2allow -M my-phpfpm
# semodule -X 300 -i my-phpfpm.pp

zusätzliche Information:
Quellkontext system_u:system_r:httpd_t:s0
Zielkontext system_u:object_r:unlabeled_t:s0
Zielobjekte data_dir_writability_test_5cd9c7e361fc6.tmp [ dir
]
Quelle php-fpm
Quellpfad php-fpm
Port
Host wind
RPM-Pakete der Quelle
RPM-Pakete des Ziels
Richtlinien-RPM selinux-policy-3.14.2-57.fc29.noarch
SELinux aktiviert True
Richtlinientyp targeted
Enforcing-Modus Enforcing
Rechnername wind
Plattform Linux wind 5.0.13-200.fc29.x86_64 #1 SMP Mon May 6
00:49:54 UTC 2019 x86_64 x86_64
Anzahl der Alarme 168
Zuerst gesehen 2019-05-12 17:59:23 CEST
Zuletzt gesehen 2019-05-13 21:39:15 CEST
Lokale ID 2155f298-d389-498a-8a78-8688fe89cbe7

Raw-Audit-Meldungen
type=AVC msg=audit(1557776355.399:8150): avc: denied { add_name } for pid=2108 comm=“php-fpm” name=“data_dir_writability_test_5cd9c7e361fc6.tmp” scontext=system_u:system_r:httpd_t:s0 tcontext=system_u:object_r:unlabeled_t:s0 tclass=dir permissive=0

Hash: php-fpm,httpd_t,unlabeled_t,dir,add_name

If I set selinux to “permissive” via

setenforce 0

both work, but that is obviously not the idea.

I tried the semanage commands of the first block from here:
https://docs.nextcloud.com/server/16/admin_manual/installation/selinux_configuration.html
but it did not help.

Executing the commands recommended by the Selinux Error Messages did not help either.

With NC 15.5 everything worked like a charm.

Any advice is welcome!

Running

/sbin/restorecon -v -R /etc/httpd/

fixed the problem, as fas as I understood.
Does anyone know what this does?
And maybe why

restorecon -Rv /var/www/html/nextcloud/

is not sufficient?