invis_server_wiki:client

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
Nächste Überarbeitung Beide Seiten der Revision
invis_server_wiki:client [2020/06/06 08:22]
flacco [4. Benutzer als Systemverwalter einrichten]
invis_server_wiki:client [2020/08/14 13:40]
ingo [Linux (Networkmanager)]
Zeile 4: Zeile 4:
 ===== Domänen-Integration ===== ===== Domänen-Integration =====
 ==== Windows - ab Windows 7 ==== ==== Windows - ab Windows 7 ====
- +Ältere Windows Versionen als Windows 7 können zwar in eine aktuelle AD-Domäne integriert werden, irgend eine Form von Support gibt es dafür allerdings definitiv nicht mehr.
 === 1. Hintergrund:​ Server-gespeicherte Profile === === 1. Hintergrund:​ Server-gespeicherte Profile ===
  
Zeile 475: Zeile 474:
 //​**Hinweis:​** Wir gehen davon aus, dass die Einrichtung an einem PC erfolgt, der vollständig vom invis-Server Netzwerk getrennt ist, da dies alle Schwierigkeiten berücksichtigt.//​ //​**Hinweis:​** Wir gehen davon aus, dass die Einrichtung an einem PC erfolgt, der vollständig vom invis-Server Netzwerk getrennt ist, da dies alle Schwierigkeiten berücksichtigt.//​
  
-== 1. VPN Zugang vorbereiten ==+=== 1. VPN Zugang vorbereiten ​===
  
 Auf dem invis-Server muss zunächst ein Schlüssel für die VPN-Verbindung des Clients erzeugt werden. Dazu benötigen Sie lediglich den Hostnamen des Clients, den Sie mit Auf dem invis-Server muss zunächst ein Schlüssel für die VPN-Verbindung des Clients erzeugt werden. Dazu benötigen Sie lediglich den Hostnamen des Clients, den Sie mit
Zeile 497: Zeile 496:
 Diese Datei ist auf sicherem Weg (z.B. SCP) auf den Client zu übertragen. Diese Datei ist auf sicherem Weg (z.B. SCP) auf den Client zu übertragen.
  
-== 2. VPN Zugang herstellen ==+=== 2. VPN Zugang herstellen ​===
  
 Melden Sie sich mit Ihrem lokalen Systemverwalter-Konto an und installieren Sie OpenVPN: Melden Sie sich mit Ihrem lokalen Systemverwalter-Konto an und installieren Sie OpenVPN:
Zeile 540: Zeile 539:
 Eine erfolgreiche Verbindung ist Voraussetzung für die Anbindung an die Benutzerverwaltung des invis-Server. Eine erfolgreiche Verbindung ist Voraussetzung für die Anbindung an die Benutzerverwaltung des invis-Server.
  
-== 3. SSSD einrichten ==+=== 3. SSSD einrichten ​===
  
 Die Einrichtung des SSSD erfolgt in gleicher Weise wie im im Abschnitt "Linux Clients mit SSSD integrieren"​ beschrieben. Die Einrichtung des SSSD erfolgt in gleicher Weise wie im im Abschnitt "Linux Clients mit SSSD integrieren"​ beschrieben.
Zeile 573: Zeile 572:
 Durch das Angeben des "​Minuszeichens"​ wechseln Sie mit //**su**// in das Home-Verzeichnis des Benutzers. Testen Sie, ob es Ihnen jetzt möglich ist darin Dateien und Ordner anzulegen. Durch das Angeben des "​Minuszeichens"​ wechseln Sie mit //**su**// in das Home-Verzeichnis des Benutzers. Testen Sie, ob es Ihnen jetzt möglich ist darin Dateien und Ordner anzulegen.
  
-== 4. Benutzer als Systemverwalter einrichten ==+=== 4. Benutzer als Systemverwalter einrichten ​===
  
 Um eine OpenVPN Verwindung aufzubauen muss der Benutzer, der es versucht über Root-Rechte verfügen, da es nur so möglich ist automatisch eine Route ins Zielnetz zu setzen. Um dies auf einem Ubuntu-System zu erreichen, muss der gewünschte Benutzer als "​sudoer"​ (Systemverwalter) geführt werden. Das geht nicht unbedingt mit den Ubuntu Systemwerkzeugen,​ da diese in unseren Tests die über SSSD verfügbaren Benutzerkonten nicht immer angezeigt haben. Um eine OpenVPN Verwindung aufzubauen muss der Benutzer, der es versucht über Root-Rechte verfügen, da es nur so möglich ist automatisch eine Route ins Zielnetz zu setzen. Um dies auf einem Ubuntu-System zu erreichen, muss der gewünschte Benutzer als "​sudoer"​ (Systemverwalter) geführt werden. Das geht nicht unbedingt mit den Ubuntu Systemwerkzeugen,​ da diese in unseren Tests die über SSSD verfügbaren Benutzerkonten nicht immer angezeigt haben.
Zeile 686: Zeile 685:
 esac esac
 </​code>​ </​code>​
 +
 +===== VPN Zugänge einrichten =====
 +
 +invis-Server bringen grundsätzlich OpenVPN mit. OpenVPN ist eine VPN-Lösung auf Transportprotokoll-Ebene unter Verwendung von TLS-Verschlüsselung. OpenVPN steht als Software für alle gängigen Betriebssyteme (Linux, Windows, Mac sowie auch Android) zur Verfügung. Auf die Nutzung in Mobilgeräten wird hier nicht eingegangen.
 +
 +Für einen VPN-Zugang zu einem invis-Server und dem Netzwerk dahinter sind zwei Dateien erforderlich,​ die von administrativer Seite generiert und bereitgestellt werden:
 +
 +  - **invis-net.ovpn** - Die Konfigurationsdatei für den VPN-Client.
 +  - **name.p12** - Zertifikatscontainer,​ enthält das Client-Zertifikat,​ den zugehörigen privaten Schlüssel, sowie das Stammzertifikat der Zertifizierungsstelle des invis-Servers. Diese Datei ist ihrerseits mit einem Passwort verschlüsselt. Dieses Passwort sollte nur dem Inhaber des Zugangs bekannt sein.
 +
 +Die Dateinamen sind natürlich exemplarisch und lauten in der Realität natürlich, ausgenommen der Dateiendungen anders. Wie mit ihnen zu verfahren ist, beschreiben die folgenden Abschnitte.
 +==== Windows ====
 +Unter Windows muss OpenVPN zunächst heruntergeladen und installiert werden. Idealerweise erfolgt der Download von der Website des Projekts: [[https://​openvpn.net/​community-downloads/​]].
 +Suchen Sie je nach Windows-Version den passenden Installer herunter und installieren Sie die Software. Für den ersten Start der Software muss das OpenVPN-Icon auf dem Desktop einmalig doppelgeklickt werden. Danach startet OpenVPN automatisch mit dem Systemstart. In der Taskleiste (unten rechts) bzw. anfangs versteckt hinter dem kleinen nach oben zeigenden Pfeil ist ab da eine OpenVPN-Icon sichtbar.
 +
 +Zur Einrichtung des VPN-Zugangs sind die beiden zuvor genannten Dateien an den richtigen Ort in der Windows-Verzeichnisstruktur kopieren. Öffnen Sie im Dateimanager (Windows Explorer) das Verzeichnis:​ <​file>​c:​\Programme\OpenVPN\config</​file>​
 +
 +Legen Sie dort ein Unterverzeichnis mit dem Namen Ihrer Domäne an. Den Domänennamen erfragen Sie bei Ihrem Administrator. Alternativ können sie ihn auch aus der Konfigurationsdatei entnehmen. Öffnen Sie die Datei dazu in einem Editor und suchen Sie die mit "​pkcs12"​ beginnende Zeile:
 +
 +<​code>​
 +...
 +pkcs12 fsp-net.loc/​clientfqdn.p12
 +...
 +</​code>​
 +
 +Im Beispiel ist "​fsp-net.loc"​ der Name der Domäne und somit der Name des anzulegenden Verzeichnisses.
 +
 +Kopieren oder Verschieben Sie jetzt Ihre Schlüsseldatei (.p12) in das neu angelegte Verzeichnis und die Konfigurationsdatei (.ovpn) direkt in das "​config"​ Verzeichnis.
 +
 +Zum Aufbau einer Verbindung klicken Sie mit der rechten Maustaste auf das OpenVPN-Icon in der Taskleiste. Es öffnet sich ein Pop-Up-Menü. Klicken Sie darin mit der linken Maustaste auf den Eintrag "​Verbinden"​. ​
 +
 +Jetzt öffnet sich ein neues Fenster und Sie werden nach dem Passwort Ihres Schlüsselcontainers gefragt. Nachdem Sie es eingegeben haben startet der Verbindungsaufbau. sowie dieser abgeschlossen ist, verschwindet das Fenster wieder und das Icon in der Taskleiste färbt sich grün.
 +
 +Damit haben Sie Verbindung zu Ihrem Firmen-Server. Jetzt können Sie beispielsweise auf die Verzeichnisfreigaben Ihres Servers zugreifen. Öffnen Sie dazu den Dateimanager (Windows Explorer) und geben Sie in dessen Adresszeile folgenden Pfad ein: <​file>​\\invis</​file>​
 +
 +Der Pfad besteht lediglich aus dem Computernamen Ihres invis-Servers. ​
 +
 +Bei Fragen, wenden Sie sich an Ihren Administrator.
 +
 +Um die Verbindung wieder zu trennen, klicken Sie erneut mit der rechten Maustaste auf das OpenVPN-Icon in der Taskleiste und dann im Menü auf "​Trennen"​. Nach erfolgter Trennung färbt sich da Icon wieder grau.
 +==== Linux (Networkmanager) ====
 +
 +Unter Linux gehört OpenVPN vermutlich fast in jeder Distribution zur Grundausstattung eines installierten Systems, wenn nicht können Sie es auf jeden Fall aus den Softwarequellen Ihrer Distribution nachinstallieren.
 +
 +<​code>​
 +opensuse:~ # zypper in openvpn
 +</​code>​
 +
 +Der Networkmanager zur Verwaltung von Netzwerkverbindungen durch den Anwender hat sich in den letzten Jahren zum Quasi-Standard auf Desktop-Installationen entwickelt. Ein grafisches Frontend dafür bringt eigentlich jede Desktop-Umgebung mit.
 +
 +Damit ist es möglich einen OpenVPN-Zugang auf Basis einer OepnVPN-Konfigurationsdatei einzurichten. Legen Sie an beliebiger Stelle in Ihrem persönlichen Verzeichnis einen Unterordner namens "​vpn"​ oder "​openvpn"​ (Name spielt keine Rolle) an. Kopieren Sie dort beide Dateien hinein.
 +
 +Klicken Sie jetzt das Icon des Networkmanagers in der Taskleiste (KDE Plasma: unten rechts) an. Im sich öffnenden Fenster klicken Sie auf das Icon "​Netzwerkverbindungen einrichten..."​ (meist oben rechts im Fenster, stellt schematisch zwei kleine Schieberegler dar.).
 +
 +Es öffnet sich ein neues zweigeteiltes Fenster. In der linken Hälfte ist eine Liste aller bekannten, bzw. verfügbaren Netzwerkverbindungen zu sehen, rechts können Konfigurationsanpassungen an der ausgewählten Verbindung vorgenommen werden.
 +
 +Klicken Sie auf das Plus-Symbol (Neue Verbindung hinzufügen) unten in der linken Hälfte. Es öffnet sich ein weiteres Unterfenster. Scrollen Sie darin ganz nach unten. Der letzte Eintrag lautet "​VPN-Verbindung importieren",​ klicken Sie ihn an und dann auf die Schaltfläche "​Erstellen"​. Es öffnet sich ein Dateimanager-Fenster über welches Sie den Ordner anwählen in dem Sie Ihre Zugangsdateien abgelegt haben. Klicken Sie dort die auf "​.ovpn"​ endende Datei an und folgen Sie den Anweisungen. Im Verlauf der Einrichtung benötigen Sie das root-Passwort Ihres Computers.
 +
 +Ist der Import abgeschlossen,​ ist der VPN-Zugang in der Liste Ihrer Netzwerkverbindungen aufgeführt und Sie können die Verbindung durch anklicken aufbauen und wieder trennen.
 +
 +Bekannte Probleme:
 +  - Falls nach Aufbauen der Verbindung keine Daten übertragen werden, kann das mit einer unvollständig importierten Konfiguration zusammenhängen. Reproduzierbar wird die Option "​LZO-Komprimierung verwenden"​ derzeit nicht korrekt importiert. Sie muss auf "​Ja"​ eingestellt werden. Sie ist zu finden im Tab "​VPN"​ unter "​Erweitert..."​ und dort im Tab "​Allgemein"​.
 +  - Die Prüfung des Remote-Zertifikats wird derzeit auch nicht korrekt importiert. Es fehlt die Aktivierung Einstellung "​Zertifikat der Gegenstelle (Server) mithilfe der Signatur überprüfen"​ im Tab "​VPN"​ unter "​Erweitert..."​ und dort im Tab "​TLS-Einstellungen"​. "​TLS-Zertifikatstyp der Gegenstelle"​ muss auf "​Server"​ eingestellt werden.
 +  - Falls **nicht** der gesamte Datenverkehr des Clients durch den Tunnel geroutet werden soll, muss im NetworkManager in den Eigenschaften der Verbindung unter "​IPv4"​ und "​Routen..."​ die Option "Nur für Ressourcen dieser Verbindung verwenden"​ aktiviert werden.
 +==== MacOS (Tunnelblick) ====
 +Für MacOS steht keine native OpenVPN-Implementation zur Verfügung, an dessen Stelle tritt die Software [[https://​tunnelblick.net/​cInstall.html|Tunnelblick.]]
 +
 +Im Vergleich zu Windows und Linux kommt Tunnelblick ähnlich merkwürdig daher, wie sich MacOS mir als System-und Netzwerkadministrator grundsätzlich darstellt. MacOS versucht dem Benutzer alles so einfach wie möglich zu machen. Bis zu einem gewissen Nutzungsgrad funktioniert das auch, MacOS ist recht intuitiv nutzbar. Muss man einen Schritt weiter gehen, lässt sich feststellen,​ dass MacOS alle möglichen Informationen,​ die einen Benutzer potentiell verunsichern könnten, vor selbigem versteckt. Ab da wird es statt intuitiv eher undurchsichtig und kompliziert. Schade, könnte eigentlich besser funktionieren.... Scheint aber ein allgemeiner Trend zu sein, Windows müht sich ja von Version zu Version an einer ähnlichen Strategie ab.
 +
 +Genau so verhält sich Tunnelblick. Ein OpenVPN-Client benötigt prinzipiell 2 Dateien, eine Konfigurationsdatei und eine P12-Containerdatei (Enthält Schlüssel und Zertifikate). Bei der Ersteinrichtung verwandelt Tunnelblick beide gemeinsam in eine auf "​.tblk"​ endende Binärdatei,​ die irgendwo in den "​versteckten"​ Tiefen des Benutzerverzeichnisses abgelegt wird (Benutzer -> Benutzername -> Library -> Application Support -> Tunnelblick -> Configurations / Leider ist schon das Library Verzeichnis unsichtbar).
 +
 +In der Tunnelblick-Dokumentation ([[https://​tunnelblick.net/​documents.html]]) steht, dass es genügt die OpenVPN-Konfigurationsdatei auf das Tunnelblick-Taskleistensymbol zieht und loslässt. Soweit dürfte das auch funktionieren. Auf die gleiche Weise ein abgelaufenes Zertifikat zu erneuern klappt jedenfalls nicht. Schade, das wäre intuitiv.
 +
 +Da Konfigurations- und P12-Datei in einer gemeinsame tblk-Datei kombiniert werden ist das Erneuern des Zertifikates,​ so dieses beispielsweise abgelaufen ist nicht einfach möglich. Statt dessen muss die vorhandene Konfiguration durch eine neue, wenn auch unveränderte ersetzt werden.
 +
 +Der einfachste Weg, sowohl für Ersteinrichtung,​ als auch für die Erneuerung ist, sich im eigenen Benutzerverzeichnis einen Ordner (etwa "​vpn"​ benannt) anzulegen. In diesen Ordner werden OpenVPN-Konfiguration und die Schlüsseldatei abgelegt.
 +
 +In der Konfigurationsdatei muss der Pfad zum Schlüssel ein relativer Pfad sein, genaugenommen also nur der Name der Schlüsseldatei,​ da der Schlüssel ja im gleichen Verzeichnis liegt, wie die Konfiguration:​
 +
 +<​code>​
 +...
 +# Einfacher ist eine PKCS#12 Datei
 +pkcs12 clientfqdn.p12
 +...
 +</​code>​
 +
 +Der Name der Schlüsseldatei (.p12 Datei) ist in der Konfiguration natürlich mit einem Texteditor anzupassen.
 +
 +Danach genügt es die Konfigurationsdatei einfach doppelt anzuklicken. Tunnelblick fragt dann, ob die Konfiguration integriert, bzw. eine vorhandene ersetzt werden soll. Dies ist zu bejahen. MacOS fragt dann nach dem Passwort des Mac-Benutzers. Wird dies eingegeben geschieht alles andere MacOS-typisch wie von Zauberhand. (Zynismus-Tags habe ich weg gelassen.)
 +
 +Als Linux-Admin vermisse ich es einfach Pfade im Dateimanager direkt eingeben oder unsichbare Dateien einfach sichtbar machen zu können. Mac-User dürfen mich gerne eines besseren belehren!
  • invis_server_wiki/client.txt
  • Zuletzt geändert: 2020/08/14 13:48
  • von ingo