PuTTY Key Generator

SSH Schlüssel generieren mit PuTTY Key Generator

Um sich bei einem Linux Host ohne Passwort abfrage einloggen zu können, oder um Batch-Prozesse ausführen zu können, beispielsweise um die Authentifizierung aus Scripts zu ermöglichen, werden OpenSSH Schlüssel eingesetzt.

OpenSSH Key generieren

Mit dem PuTTY Key Generator wird ein Schlüsselpar erzeugt, danach wird der öffentliche Schlüssel auf den Remote Host kopiert.

Im Feld Key comment kann die eigene Email Adresse eingetragen werden, der generierte Privat Key wird als privkey.ppk gespeichert, der Public Key wird als pubkey.ppk gespeichert. Der Public Key wird auf dem Remote Host unter dem Home Pfad des Benutzers in das Verzeichnis .ssh in die Datei authorized_keys gespeichert, es darf beim copy & paste am Inhalt nichts geändert werden.

[user@smarthost .ssh]# ll
insgesamt 16
drwx------  2 user user 4096 21. Okt 2013  .
drwx------ 10 user user 4096 10. Apr 15:13 ..
-rw-------  1 user user 1124 21. Okt 2013  authorized_keys

Das Verzeichnis .ssh sollte die rechte 700 haben und der Besitzer muss user sein. Der Benutzer user soll hier als beispiel dienen.

PuTTY mit OpenSSH Key

Der Host bei diesem eingeloggt werden soll, mit eintragen der IP oder Hostname im Abschnitt Session und Host Name (or IP address).

Abbildung: PuTTY session

Der Pfad zum Privatkey der mit PuTTY Key Generator generiert wurde, wird unter Connection  – SSH – Auth eingetragen.

Abbildung: SSH authentication

Bei Auto-login username definiert man den Benutzer der sich authentifizieren soll.

Abbildung: Auto-login username
Anwerkung

Beim SSH Daemon wird die Key Authentifizierung aktiviert, in der Konfigurationsdatei /etc/ssh/sshd_config

# Authentication for user id's
AllowUsers user
# Allow key authentication
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
Tipp

PuTTY kann als command-line Befehl ausgeführt werden, so können Scripts zur Anwendung kommen.

# use putty load session name
"C:\Program Files\PuTTY\putty.exe" -load smarthost.mydomain.com
# use putty session command-line
"C:\Program Files\PuTTY\putty.exe" -i C:\Users\user\ssh\privkey.ppk user@smarthost.mydomain.com

Mit plink ist es möglich PuTTY per CLI zu nutzen,.

plink -i C:\Users\user\ssh\privkey.ppk userd@smarthost.mydomain.com

Domain Alias CNAME A Resource Records Lookup

Aliasse, CNAME (Canonical Name) und A Resource Record Auflistung einer Domain (DNS Zone) ausgeben. Dies setzt voraus, dass beim zuständigen DNS-Server die Option “Zone-Transfere” eingeschalten ist.

O’Reilly DNS and BIND ISBN: 9780596100575

CNAME Lookup

CNAME- (Canonical Name) Record ist ein Domain Alias für ein anderen DNS-Record.

Um sämtliche Aliasse, CNAME (Canonical Name) und A Resource Record Auflistung einer Domain (DNS Zone) auszugeben, gibt man etwa bei einem Windows Client folgende Befehlszeilen nacheinander ein. Dies setzt voraus, dass beim zuständigen DNS-Server die Option “Zone-Transfere” eingeschalten ist.

Nach öffnen der Windows Eingabeaufforderung, wird „nslookup“ ohne Parameter im interaktiven Modus ausgeführt.

nslookup
 > server dns1.example.com
Standardserver: dns1.example.com
Address: 203.0.113.2
> ls -d example.com

Mit „server“ wird der DNS-Server angegeben der zur Auflösung genutzt wird. Die Option „ls -d“ führt die Anfrage für die Domain aus.

Linux DNS lookup utility

Unter Linux und Mac OS X wird ein Terminal Alt+T geöffnet und folgende CLI Eingabe gemacht.

$ host -a -l example.com  dns1.example.com

CNAME und A-Record?

Ein CNAME- (Canonical Name) Record ist ein Alias für ein anderen DNS-Record. Es bezieht sich auf einen anderen vollwertigen Hostnamen und nicht auf eine IP-Adresse wie im Falle des A-Records. CNAME wird benötigt, um sich auf Domains und Subdomains zu beziehen. Bei Rückgriff auf example.com bspw. kann die Seite www.example.com auf zwei Wegen erreicht werden. CNAME-Records sind leichter zu erstellen als A-Records.

Leistungseinbuße

Diese Konfiguration führt jedoch zu Leistungseinbußen, da eine zusätzliche DNS-Abfrage erforderlich ist, um die IP-Adresse durch Abrufen des A-Records des Ziels (www.example.com) zu erhalten. Hauptsächlich erhöht sich die Zeit für eine erfolgreiche DNS-Auflösung, wenn die Websites zuvor noch nicht vom rekursiven DNS-Server abgefragt wurden.

CNAME-Record

Wenn man Subdomains veröffentlicht, wie www.example.com, ftp.example.com, mail.example.com und möchte diese alle an example.com verweisen, kann man für alle Subdomains ein A-Record erstellen. Alle A-Records verweist auf eine IP-Adresse des Servers, wenn die IP-Adresse für den Server wechselt, erhalten alle Aliasse und CNAME die neue IP-Adresse und alle A-Records werden aktualisiert. So ist es einfacher, ein CNAME-Record zu erstellen und dann nur einmal das A-Record anzupassen, wenn man etwa den Server wechselt.

Alias-Record

Wie der CNAME-Eintrag kann auch ein Alias-Eintrag in einer DNS-Zone konfiguriert werden, um einen Domain-Namen auf einen anderen Domain-Namen zu verweisen.

Obwohl CNAME- und Alias-Einträge beide das gleiche Ergebnis erzielen, gibt es ein paar bemerkenswerte Unterschiede.

Die mobile Version verlassen