localhost im Backend https vs. http

grindelaner

Bekanntes Mitglied
Hallo,

ich habe eine allgemeine Frage. Wir haben ein Webserver, welcher nach außen natürlich über https abgesichert ist.
ABER im Backend kommunizieren die Services über REST über die localhost-Adresse miteinander...

Da frage ich mich wie sinnvoll dort eine Verschlüsselung via BasicAuth oder TLS wäre...

Da localhost eigentlich nur durch das Betriebssystem aufgelöst wird und die Kommunikation nicht den Rechner verlässt kann ja eigentlich auch kein Angriff in die localhost-Kommunikation stattfinden...

Da eine Verschlüsselung auch Performanceeinbußen mit sich bringt frage ich mich ernsthaft, ob eine REST-Verbindung via https Sinn macht...

Ich würde mich über eure Meinungen und einen Erfahrungsaustausch freuen.
 

mihe7

Top Contributor
Ich sag mal so: wenn ein Unbefugter auf dem Server die Rechte hat, einen Sniffer zu starten, dürfte die Kommunikation zwischen REST-Services Dein geringstes Problem sein.

Es mag Fälle geben, wo Verschlüsselung innerhalb des Geräts sinnvoll ist (-> wenn das Gerät außer Haus geht) aber ich habe noch nirgends gehört, dass jemand zur Absicherung des Servers lokal verschlüsselt.
 

Dukel

Top Contributor
Wenn du irgendwann skalieren musst und Dienste auslagern landen diese plötzlich auf anderen Maschinen (ggf. auch übers Internet erreichbar) und da wäre es sinnvoll, wenn diese Dienste dann schon TLS sprechen und nicht noch angepasst werden müssen.
 

grindelaner

Bekanntes Mitglied
Ja ihr bestätigt meine Meinung :)

Laufen die Dienste auf einem Server, macht eine Verschlüsselung kein Sinn...
Laufen die Dienste auf verteilten Servern, oder gar über das Internet macht eine Verschlüsselung SEHR VIEL Sinn.
 
K

kneitzel

Gast
Also ich sehe ähnlich wie @mihe7 das wirklich als Services. Und wo die Services laufen sollte egal sein, daher würde ich immer die Verschlüsselung fahren. Das macht dann die Verlagerung relativ einfach.

Ansonsten ist es aus meiner Sicht eine Frage des Risikomanagements. Das ist keine Design Entscheidung vom Entwickler oder von dem, der die Installation aufsetzt!
Wer kann das Risiko bewerten und dann den Umgang mit dem Risiko festlegen? So es da keine klare Aussage von Verantwortlichen gibt, die klar festgehalten sind, würde ich das Risiko komplett vermeiden: https konfigurieren, dann ist das Risiko einer Fehlkonfiguration nicht mehr gegeben. (Und meine Erfahrung ist auch, dass Audits oft auf Trigger reagieren: "Ihr habt http im Einsatz? Dann bitte Passierschein A38 ausfüllen!")
Aber das sind halt auch alles Risiken: Risiko ein Passierschein A38 ausfüllen zu müssen, Risiko, dass die Performance des Systems nicht ausreicht, ....
 

Thallius

Top Contributor
Ich sehe das natürlich mal wieder anders.
Wenn das Design gut ist, dann sollte es nur eine Stelle im Code geben wo der http request gemacht wird. Dort sollte im Moment auch die url, also das Localhost, stehen. Solange es localhost bleibt ist eine verschlüsselung nur pure Ressourcen Verschwendung.
Besteht irgendwann die Notwendigkeit Teile auszulagern, dann muss dieser Code geändert werden und dann ist es kein Aufwand aus dem http request einen https request zu machen.

Ich finde vorher schon zu verschlüsseln ist quatsch

Claus
 

Dukel

Top Contributor
Alles was im Fall der Fälle geändert werden muss kann vergessen werden.
Der Performance / Ressourcenbedarf sollte vernachlässigbar gering sein.
 

mrBrown

Super-Moderator
Mitarbeiter
ich würde das gar nicht die Services selbst, sondern die Infrastruktur abhandeln lassen, je nachdem was man nutzt zB verschlüsselte Overlay-Networks von Docker Swarm/Kubernetes/oä oder Service-Discovery, nur Services nur mit entsprechendem Protokoll veröffentlicht.


Alles was im Fall der Fälle geändert werden muss kann vergessen werden.
Kann man verhindern, indem die Server von außen einfach generell nur https zulassen - wenn's vergessen wurde, schlägt dann einfach die Verbindung fehl.
 

grindelaner

Bekanntes Mitglied
Moin,

Ich will diesen Thread mal wieder aufleben lassen...
@Thallius: Ich gebe dir Recht, localhost über https laufen zu lassen sehe ich auch als pure Ressourcen Verschwendung...

Jedoch... oh wunder... https klingt toll, also soll jetzt ALLES in https laufen, auch wenn an dieser Stelle nur zwei Contexte innerhalb einer
Tomcat-Instanz hier mit einander kommunizieren...

Also machen wir es nun richtig und stellen die (eine) Stelle auf https um...
Da wir jetzt natürlich ALLES richtig machen wollen, ist und der CN total wichtig... Also müssten wir jetzt unsere Keystores um ein weiteres Zertifikat erweitern... Also brauchen wir ein Zertifikat mit CN=localhost...

Ist das soweit richtig...?

Jetzt darf ich mich wieder in das Thema eingraben :)

Vielleicht hat jemand schon einmal Erfahrungen mit https und localhost auf einem Tomcat... Die Kommunikation soll via REST stattfinden...
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Tobero Java serversocket nicht nur zuganglich für localhost Netzwerkprogrammierung 6
Z Socket Connection reset by peer nur per IP nicht über localhost Netzwerkprogrammierung 13
Kr0e Netty3 + Localhost Adresse, Durchsatzdrosselung ? Netzwerkprogrammierung 6
0din Connection refused bei localhost?! Netzwerkprogrammierung 7
H Server und Client-keine verbindung über den localhost Netzwerkprogrammierung 6
H ServerSocket -> Zugriff nur von localhost Netzwerkprogrammierung 6
D dateien kopieren, am localhost funktionierts, im netz nicht Netzwerkprogrammierung 2
V Browsergame mit Java(WebSocketServer) als Backend? Netzwerkprogrammierung 5
FrankenDerStein HTTP Https Server Bibliothek für Linux und Android gesucht. Netzwerkprogrammierung 7
JaXnPriVate Java HTTPS Server (Secure Sockets) Netzwerkprogrammierung 15
Thallius HTTP Kann man den Raw HTTPS Request irgendwie ausgeben lassen? Netzwerkprogrammierung 6
T HTTPS-Requests an Server: POST-Parameter kommen nicht an Netzwerkprogrammierung 5
M HTTPS Login & etwas posten Netzwerkprogrammierung 0
M Proxy und HTTPS Netzwerkprogrammierung 3
Thallius HTTP HTTPS unter Java 1.6 schlägt fehl Netzwerkprogrammierung 4
agent47 HTTPs Server Netzwerkprogrammierung 5
GENiALi Grizzly mit HTTPS Netzwerkprogrammierung 0
N Hintergrundlogin HTTPs Webform Netzwerkprogrammierung 5
E Gruppenchat: Über HTTPS oder nicht? Netzwerkprogrammierung 5
K HTTPS Zertifikat Netzwerkprogrammierung 3
F C/S über HTTPS Netzwerkprogrammierung 2
NoXiD Java mit HTTPS verbinden Netzwerkprogrammierung 6
T Up- und Download mit https Netzwerkprogrammierung 14
M HTTP HTTPS-Verbindung mittels Java und Javascript Netzwerkprogrammierung 2
T HTTPS einloggen Netzwerkprogrammierung 9
L Https Verbindung wird aus jar heraus nicht aufgebaut Netzwerkprogrammierung 12
E HTTPS Debuggen (verschlüsselte Daten anzeigen)? Netzwerkprogrammierung 12
Q HTTPS mit Apache HttpClient Netzwerkprogrammierung 4
M HTTPS Seiten runterladen Netzwerkprogrammierung 2
C HTTPS mit Apache HTTPClient Netzwerkprogrammierung 1
A HTTPS-Request via Proxy mit Konfigurationsskript Netzwerkprogrammierung 3
P HTTPS - öffentliches Zertifikat - ermitteln Netzwerkprogrammierung 5
G file download über https mit p12 Zertifikat Netzwerkprogrammierung 4

Ähnliche Java Themen

Neue Themen


Oben