SSH-Keys für Fernzugriff am LD-Server hinzufügen
SSH-Keys
Wichtig!
SSH-Keys können ab Puppet-Version >= 1.5 nicht mehr wie gewohnt mit ssh-copy-id bzw. in der üblicherweise verwendeten Konfigurationsdatei authorized_keys hinterlegt werden. Sie müssen stattdessen über Puppet verteilt werden.
Kopieren Sie Ihre SSH-Keys als Dateien in folgende Unterverzeichnisse unter /etc/logodidact/ssh/keys/root/, um SSH-Zugriffe über den entsprechenden Zugriffsweg zu ermöglichen:
- extern => nur für Zugriffe von außen (vom Internet kommend)
- intern => nur für Zugriffe von intern (lokales Netzwerk)
- global => für Zugriff von außen und intern
Die SSH Public-Keys, die im entsprechenden Verzeichnis abgespeichert werden, müssen die Dateiendung .pub besitzen (für jeden Zugang eine eigene Datei). Der Unterordner root im genannten Pfad beschreibt den Benutzer am Server, für den der Login per SSH-Key autorisiert wird.
Shorewall für den externen SSH-Zugriff anpassen
Um zwischen internen und externen SSH-Zugriffen unterscheiden zu können, wurde der SSH-Dienst neben Port 22 zusätzlich an den Port 1212 gebunden. Es ist eine manuelle Anpassung der Shorewall im ldhost nötig (in der Datei /etc/shorewall/rules), um die Zuordnung zur entsprechenden Zone während des Verbindungsaufbaus festzulegen:
Die folgenden Regeln müssen innerhalb der Shorewall-Konfigurationsdatei /etc/shorewall/rules ganz oben im Regelwerk hinzugefügt werden. Die externen SSH-Verbindungsports (22, 2222 oder beide) werden dadurch per Shorewall auf den internen Port 1212 umgeleitet, auf dem der SSH-Dienst mit besonderem Regelwerk konfiguriert ist.
REDIRECT ext 1212 tcp 2222 # Falls Port 2222 als Portweiterleitung am vorgeschalteten Router für den SSH-Fernzugriff eingerichtet ist
REDIRECT ext 1212 tcp 22,2222 # Falls Port 22 und 2222 gleichzeitig als Portweiterleitung am Router eingerichtet sind