deenfritptrues

Breadcrumbs

Seit Debian 10 Buster, gibt es das Packet ripOLE nicht mehr.

ripOLE wird von amavis verwendet um zb. .doc Dateien zu scannen.

.doc Dateien mögen aktuell zwar überholt und von docx abgelöst sein, aber das ist umso mehr ein Grund, das Hacker jetzt erst recht wieder .doc Dateien verschicken, wenn sie von Postfix bzw. Amavis nicht mehr gescannt werden können.

 

Die Meldung im Logfile von Amavis lautet
No decoder for .doc tried: ripole

 

Man kann ripOLE aber immer noch selbst installieren.

 

Entweder den Sourcecode bei ripOLE runterladen

oder

die von mir kompilierte Datei verwenden und zb in /usr/local/bin ablegen.

Amavis muss natürlich restartet werden.

Die richtige Konfiguration für Nextcloud hinter einem Apache Reversproxy zu finden, ha schon den einen oder anderen einige graue Haare beschert.

Aber mal vorweg, was für einen Grund gibt es, Nextcloud auf einem Webserver hinter einen Apache Server zu installieren.
Nun in meinem Fall ist es so, das mein NAS auf mit WIndows 10 läuft und Nextcloud Windows nicht unterstützt.

Daher musste eine Workaround her.

Der sieht so aus, das ich Ubunutu ( 18.04 LTS) in einer Hyper-V installiert habe.
Wie man das macht und wie man Apache und Nextcloud grundlegen installiert gehe ich jetzt nicht im Detail darauf ein.
Ich möchte nur meine Konfiguration teilen, damit andere evtl. nicht so lange danach suchen.

Hier ein Diagramm wie das Netzwerktechnisch aussehen könnte.

2020 03 06 10 11 16 apache r proxy.odg LibreOffice Draw

 

Zur Config.
In diesem Beispiel ist die Kommunikation zwischen dem Windows Apache und dem Linux Apache unverschlüsselt per HTTP.
Für den Internetzugrff ist es prinzipiell ausreichend, wenn der Apache am Windows Server HTTPS unterstützt.
Wer es ganz sicher machen möchte, muss am Linux Apache ebenfalls SSL aktivieren und ein Zertifikat einrichen.


1. Am (Windows) Apache Server 1 muss das Proxy Modul aktiv sein.

2. Man legt einen Apache Virtualhost  für Port 80 und 443 an bzw. ändert diese wie folgt:

 

<VirtualHost *:80>
ServerName externaldomain.tomynextcloud.server

<IfModule mod_headers.c>
Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
</IfModule>
RewriteEngine On
RewriteRule ^/\.well-known/carddav https://%{SERVER_NAME}/remote.php/dav/ [R=301,L]
RewriteRule ^/\.well-known/caldav https://%{SERVER_NAME}/remote.php/dav/ [R=301,L]
ProxyPass / "http://IP_OF_MY_Linux_NEXTCLOUD_SERVER/"
ProxyPassReverse / "http://IP_OF_MY_Linux_NEXTCLOUD_SERVER/"

Timeout 3600
</VirtualHost>

 

<VirtualHost *:443>
ServerName externaldomain.tomynextcloud.server
<IfModule mod_headers.c>
Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
</IfModule>
RewriteEngine On
RewriteRule ^/\.well-known/carddav https://%{SERVER_NAME}/remote.php/dav/ [R=301,L]
RewriteRule ^/\.well-known/caldav https://%{SERVER_NAME}/remote.php/dav/ [R=301,L]
ProxyPass / "http://TARGET_IP_OF_MY_Linux_NEXTCLOUD_SERVER/"
ProxyPassReverse / "http://TARGET_IP_OF_MY_Linux_NEXTCLOUD_SERVER/"

Timeout 3600
</VirtualHost>

 

In der Apache Config am Linux Server trägt man foldendes ein:

 

Timeout 3600

<Directory /var/www/html>
Options FollowSymLinks
AllowOverride All
</Directory>

 

Der Timeout ist bei beiden wichtig.
Wenn man zum Beispiel größere Dateien hochlädt und der PHP Timeout größer ist, als der von Apache, bekommt mein eine Fehlermeldung, das Nextcloud, die Filechunks nicht zusammensetzen konnte.

 

PHP INI Einstellungen am Linux Server dazu wären zum Beispiel:

 

max_execution_time = 3600

max_input_time = 3600

memory_limit = 512M

upload_max_filesize = 500M

 

In der config.php von Nextcloud muss man folgenden eintragen:

 

'trusted_domains' =>
array (
0 => 'externaldomain.tomynextcloud.server',
1 => 'lokaler_hostname_vom_linux_server',
2 => 'IP_des_linux_server',
),

'overwrite.cli.url' => 'http://externaldomain.tomynextcloud.server',
'htaccess.RewriteBase' => '/',
'overwritehost' => 'externaldomain.tomynextcloud.server,
'overwriteprotocol' => 'https',
'trusted_proxies' => 'IP_DES_PROXY_SERVERS',

 

Mit 'overwriteprotocol' => 'https', zwingt man Nextcloud dazu von HTTP auf HTTPS umzuspringen.
Wenn man das nicht möchte, kann man es rausnehmen.

 

'htaccess.RewriteBase' => '/', muss evtl. angepasst werden, wenn Nextcloud in einem Unterordner installiert wurde.

 

Folgendes müsst ihr natürlich an Eure Umgebung anpassen:

 

externaldomain.tomynextcloud.server = Domäne über die euer Webserver aus dem Internet erreichbar ist.

TARGET_IP_OF_MY_Linux_NEXTCLOUD_SERVER = IP des Linux Servers wo Nextcloud gehostet wird

lokaler_hostname_vom_linux_server = Der Hostname des Linux Servers wo Nextcloud gehostet wird

IP_DES_PROXY_SERVERS = Die IP Adresse des Apache Proxyserver auf dem WIndows Server

 

Bei Fragen könnt ihr diese über die Kommentare stellen.

Viel Spaß beim "basteln".

 

Wir nutzen Cookies auf unserer Website. Einige von ihnen sind essenziell für den Betrieb der Seite, während andere uns helfen, diese Website und die Nutzererfahrung zu verbessern (Tracking Cookies). Sie können selbst entscheiden, ob Sie die Cookies zulassen möchten. Bitte beachten Sie, dass bei einer Ablehnung womöglich nicht mehr alle Funktionalitäten der Seite zur Verfügung stehen.