Der Thread ist eine gute Doku für "bekomme ich nicht hin"habakug hat geschrieben:31.10.2020 20:43:52Hallo,
ich hatte bis jetzt gedacht, dass TLS 1.2 seit API LEVEL 16 (Android 4.1) unterstützt wird [1][2].
Es ist nur nicht "enabled by default", das ist es erst ab API Level 20 (Android 4.4W).
Gruss, habakug
[1] https://developer.android.com/reference ... ocket.html
[2] https://developer.android.com/studio/releases/platforms
Im Ernst: Ich habe das so verstanden, dass der Client (in diesem Fall die App) dafür zuständig ist, TLS1.2 zu implementieren. Hier sind mir die Hände gebunden. Daher der Umweg über einen Proxy. Neben der o.g. App hat z.B. auch der androideigene Browser keine Chance mehr sich auf https-Seiten zu verbinden. Ich musste als Abhilfe dafür Fennec installieren.
Danke, über den Link bin ich gestern schon gestolpert, aber der hat bei mir auch nicht weiter geholfen. Ich habe noch einmal von vorn angefangen.eggy hat geschrieben:31.10.2020 18:32:37Ohne es ausprobiert zu haben und ohne zu wissen, ob das überhaupt mit Deinem Problem zu tun hat:
Ich hab die Fehlermeldung "Invalid HTTP request form (expected: relative, got: absolute)" mal gegen $suchmaschine geworfen und die warf einiges zurück, u.a.
https://github.com/mitmproxy/mitmproxy/issues/2321
vielleicht mal das "--set keep_host_header" ausprobieren?
Mit mitmproxy als Reverseproxy hab ich nach ein paar Stunden und selbst signierten Zertifikaten es geschafft, dass curl per https-Anfrage an den Proxy eine Seite ausgeliefert bekommen hat. Für davdroid hat das aber nicht funktioniert.
Also weiter mit nginx, mit dem ich gefühlt besser zurecht komme.
Mit der Config bekomme ich HTML 500 Errors auf dem Client und im Log von nginx. Bei proxy_pass habe ich die Nextcloud-Domain eingetragen. Richtig oder Falsch?wanne hat geschrieben:01.11.2020 10:43:44Wenn du so weit gehst, dass du eh nen Debian hast kannst du auch einfach nen richtigen Reverse Proxy hinsetzen und gut ist./etc/nginx.conf dadurch ersetzen:Code: Alles auswählen
apt install nginx
Code: Alles auswählen
server { listen [::1]:80; location / { proxy_pass https://server.name; } }
Dann kannst du im davdroid http://[::1]/remote.php/dav/... (also den Servername durch [::1] ersetzen) als URL eintragen und fertig.Code: Alles auswählen
systemctl start nginx systemctl enable nginx
Wenn ich jetzt schon den nginx habe, wie müsste denn die Konfiguration aussehen, wenn ich sämtlichen https-Verkehr über den nginx laufen lasse?
Sprich: Normale http requests laufen von Android aus, Requests mit https würde ich (ggf. auch manuell) über den Proxy schicken, der auf localhost lauscht.
Nachtrag, sofern das weiterhilft: Requests mit https bekommen einen HTTP400 error.