Verschlüsselte Verbindung zwischen Server und Client Bis S 39.5.22

stop Achtung

  • Die nachfolgend beschriebene Lösung für die Verschlüsselte Verbindung durch die Stunnel-Software wird von PLANTA nicht mehr unterstützt. Stattdessen bietet PLANTA ein neues Add-on PLANTA Secure an.

info Informationen

  • Die verschlüsselte Verbindung zwischen Server und Client wird durch eine freie Software namens Stunnel realisiert.
  • Mit dieser Software sind bei der Benutzung von PLANTA Project über SSL abgesicherte Verbindungen zwischen Client und Server möglich.

Allgemein

target-blue Ziel
  • Dieses Topic soll als Hilfe zum Einrichten einer Absicherung der Client-Server-Kommunikation über SSL dienen.
warning Hinweis
  • Als Voraussetzung zur Durchführung der folgenden Administrationsaufgaben sind fundierte Kenntnisse in den jeweiligen Fachgebieten erforderlich.

Installation von Stunnel

info Information
  • Die Installationsanleitung können Sie auf der offiziellen Seite von Stunnel nachlesen. Einige Installationsschritte sind unixspezifisch — es ist jedoch auch ein Windows-Installer verfügbar.
warning Hinweis
  • Für Linux-Nutzer wird empfohlen, die distributionsspezifische Paketverwaltung (falls vorhanden) zur Installation zu nutzen, da hierdurch die Aktualisierung von Stunnel hinsichtlich Sicherheits-Updates erleichtert wird.

Konfiguration von Stunnel für den PLANTA Server

more Vorgehensweise
  • Zunächst ist eine Konfigurationsdatei planta.conf im Konfigurationsverzeichnis von Stunnel anzulegen.
  • Im folgenden ein Beispiel für den Inhalt (zumindest Anpassungen des Ports sind i.A. notwendig):
syslog = yes
socket = l:TCP_NODELAY=1

[PlantaServer]
verify = 0
ciphers = HIGH:!RC4

accept = 22004
connect = 127.0.0.1:21004
cert = /etc/stunnel/planta.pem
  • Erklärung mancher Konfigurationsparameter:
    • ciphers : Hier kann optional eine Liste von Verschlüsselungs-/Hash-Verfahrenskombinationen angegeben werden, aus denen bei den Verhandlungen ausgewählt werden kann.
      • Nur gleichzeitig von der installierten Version von Stunnel/OpenSSL und dem .NET-Framework unterstützte Verfahren haben Relevanz für die Aushandlung.
      • Informationen hierzu sind bei Stunnel mittels des Befehls openssh ciphers -v zu erfragen.
      • Vom Client unterstützte Verfahren finden sich hier (Verschlüsselungsverfahren) und hier (Hashverfahren).
    • accept : Angabe des über TLS abgesicherten Ports zur Verbindung mit dem Client
    • connect : Angabe des Server-Ports (wie während der Installation angegeben)

  • Des Weiteren muss ein Zertifikat erstellt werden, wie beispielhaft im Folgenden erläutert:
openssl genrsa -out key.pem 2048
openssl req -new -x509 -key key.pem -out cert.pem -days 1095
cat key.pem cert.pem >> /etc/stunnel/planta.pem
warning Hinweise
  • Das auf diese Art erstellte Zertifikat ist ein Self-Signed-Zertifikat, welchem der PLANTA Client nicht vertraut
  • Dies kann zu Testzwecken bzw. zu einer initialen Einrichtung dienen; im Produktivbetrieb sollte hier aber ein von einer Zertifizierungsstelle signiertes Zertifikat verwendet werden

  • Nun wird Stunnel für automatischen Start konfiguriert und gestartet (genaues hierzu ist in der Dokumentation von Stunnel oder der Distribution nachzulesen)

  • Zum Test kann der Befehl openssl s_client -connect <host>:<port> verwendet werden - bei Erfolg erscheint eine Meldung über eine neue Sitzung im PLANTA Server-Log.
  • Zur Konfiguration mit xinetd ist /etc/xinetd.d/planta anzulegen mit folgendem Inhalt:
# default: off
# description: PLANTA Server, wrapped in stunnel
service planta
{
        disable = no
        flags           = IPv4
        socket_type     = stream
        wait            = no
        user            = root
        server          = /usr/bin/stunnel
        server_args     = /etc/stunnel/planta.conf
        log_on_failure  += USERID
}
Die /etc/stunnel/planta.conf ist auf
syslog = yes

verify = 0
ciphers = HIGH:!RC4

accept = 22004
connect = 127.0.0.1:21004
cert = /etc/stunnel/planta.pem
zu reduzieren.

Konfiguration von PLANTA Project-Server für Stunnel

Ab S 39.5.13

info Informationen
  • Die Verwendung von Stunnel ist für den PLANTA Server transparent, somit muss man hier zur Inbetriebnahme nicht zwingend eine Konfigurationsänderung vornehmen.
  • Wenn jedoch eine unverschlüsselte Kommunikation verhindert werden soll, so ist der direkte Zugriff auf den Server-Port zu sperren.
  • Hierfür kann in config/globals.conf der Parameter host z.B. auf localhost gesetzt werden.
  • Damit ist es beispielsweise möglich, Stunnel denselben Port wie PLANTA Server zuzuweisen, jedoch auf einem von außen erreichbaren Netzwerk-Interface.

Bis S 39.5.12

info Informationen
  • Die Verwendung von Stunnel ist für den PLANTA Server transparent, somit muss man hier zur Inbetriebnahme keine Konfigurationsänderung vornehmen.
  • Wenn jedoch eine unverschlüsselte Kommunikation verhindert werden soll, so ist der Zugriff auf den Server-Port zu sperren.
  • Da es bislang hierfür keine Konfigurationsmöglichkeit gibt, muss dies über Betriebssystem-Funktionalität (Firewall) erfolgen.

Konfiguration des PLANTA Project-Client

info Information
  • Der Parameter encrypted=yes schaltet die Verwendung von TLS beim Client ein.
  • Zu beachten ist, dass der Client bei Aktivierung der Option TLS verlangt, sich also nicht auf einen nicht abgesicherten Port verbinden kann.
  • Der abgesicherte Port ist als Server-Port zu konfigurieren; Dies ist derjenige, der in der Datei stunnel.conf als Parameter für accept angegeben ist.
Topic revision: r12 - 2018-04-10 - 10:03:37 - IrinaZieger








 
  • Suche in Topic-Namen

  • Suche in Topic-Inhalten