Lesson 6-2: Instanz und Schlüssel machen (in der BW-Cloud)
Zielgruppe?
Vorab: Der Mupples-Kurs wird gelegentlich an Universitäten genutzt. Diesen Studierenden stehen häufig über die Universitäts-Lernplattformen (Moodle, Felix, MS Teams, usw. ) zusätzliche Skript zur Verfügung. Speziell für diese Lesson wird u.U. gelegentlich das Madeleine-Skript erwähnt. Sie können es hier downloaden.

In dieser Lessen geht es primär darum, ein Key Pair (dt. ein Schlüsselpaar) in der BW-Cloud herzustellen – und das konkret für Windows-User*Innen. Für Mac-User*Innen gibt es dazu eine eigene Lesson. Warum? Mac-User*Innen nutzen dazu von Hause aus die SSH. Gewiß, auch Windows-User*Innen können seit Windos 10 Update 1809 auch die SSH nuten, haben es aber Erfahrungsgemäß nicht installiert und nutzen denhalb bevorzugt Drittanbierter Software, wie PuTTY. Soweit die Erfahrung. Es gibt aber auch nichts dagegen Einzuwenden, wenn die Windows-User*Innen sich zu SSH durchringen. Vielleicht ist das ja nach der SSH-Einführungslesson der Fall. Wir werden sehen. Bevor wir loslegen, noch eine Bemerkung zum Dateinamensformat.
Dateinamensformat?
Bei verschiedenen Gelegenheiten kommen im Umgang mit der BW-Cloud und der Einrichtung des Magento-eShops Dateinamen ins Spiel. Etwas vereinfacht haben Dateinamen das Format <NAME>.<EXT> : der „eigentliche“ Name der Datei wird mit einem Punkt von der „Erweiterung“ (engl. Extension) abgetrennt. Die Extension wird auch „Suffix“ genannt und gibt einen Hinweis auf das Format und das Werkzeug, mit dem die Datei erzeugt wurde. Konkret: uebung_1.docx könnte ein Dateiname für die Lösung einer Übung sein, die mit der Extension verrät, dass die Datei mit Microsoft Word geschrieben wurde und im docx-Format vorliegt. Soweit so gut!
Wenn Sie auf Ihrem Computer die Dateinamen, so wie beschrieben erkennen, ist alles in Ordnung. Informatiker*Innen müssen alle Bestandteile von Dateinamen sehen – und nicht nur den „eigentlichen“ Namen, ohne Extension!
1 PuTTY und puttygen besorgen

Da wir mit einem Ubuntu-Server (Betriebssystem = Linux) für unseren Magento-Shop arbeiten, müssen wir Teile der Arbeit mit der Terminalschnittstelle von Windows und MacOS erledigen. Die Windows-User*Innen gehen bitte auf die folgende Website und folgen den beschriebenen Schritten (https://www.bw-cloud.org/de/bwcloud_scope/nutzen ).
- Laden Sie die Programme putty.exe und puttygen.exe herunter (Diese Drittanbieter-Programme erhalten Sie bspw auch unter folgendem Link www.putty.org Auch in der BW-Cloud finden Sie diesbezüglich Hinweise und bekommen Fundstellen genannt, siehe oben.)
- Installieren Sie putty und puttygen auf Ihrem Windows-Rechner und sorgen Sie dafür das beide Programme in der Taskleiste Ihres Laptops behalten werden, weil der putty beim Arbeiten mit der Cloud leicht zugreifbar sein muss.
- In dieser Version der Beschreibung werden wir das notwendige Schlüsselpaar (engl key pair) beim Anlegen der Instanz in der Cloud machen (key pair also nicht mit dem puttygen generieren)
- Nach der Installation der beiden Programme auf dem WINDOWS-Rechner und der Fixierung der Programme in der Taskleiste, sind wir zunächst mit putty und puttygen bis auf Weiteres fertig – und können in der BW-Cloud die Instanz anlegen (und die Schlüssel machen).
2 Instanz anlegen und Schlüssel machen

Klicken Sie im linken Menü auf den Reiter Instanzen und auf der neu geladenen Seite und dort auf den Button „Instanz starten“. (Dieser Button wird nicht angeboten, wenn Sie keine weiter Instanz starten/anlegen können.) Im Bild sehen Sie, wie ich meine zweite Instanz angelegen. (Bild klicken zum vergrößern.)

- Wie das Bild oben zeigt, wird mit dem “Instanz starten” eine Klick-Sequenz mit mehreren Schritten gestartet.
- Als erstes geben Sie der Instanz einen aussagekräftigen Namen (im Bild oben „ubuntu1604win“). Gehen Sie danach auf den Tab „Quelle“ und weisen Sie als Quelle Ubuntu 16.04 zu. Dies können Sie über den Pfeil am rechten Rand jeder Zeile auswählen.
- Gehen Sie als nächstes auf „Variante“ und wählen Sie die Variante „m1.medium“ aus.
- Bei „Netzwerke“, „Netzwerk–Port“ und „Sicherheitsgruppen“: Einstellungen so belassen, wie voreingestellt und „Weiter“ klicken bis…
- … bis im Browser der Reiter „Schlüsselpaar“ (= „Key Pair“) erreicht ist und suchen Sie oben rechts den Button „Schlüssel generieren“. Darauf klicken.

(Wie gesagt: in dieser Anleitung machen wir das für den Server-Zugang notwendige Schlüsselpaar hier in der BW-Cloud. Vorteil: wir müssen ausschließlich den private key aus der Cloud auf den lokalen WIN- Laptop holen.

Für die Schlüsselgenerierung vergeben Sie den Schlüsselnamen „winkey“ (Wir verwenden diesen Schlüsselnamen hier im Beispiel durchgehend. Sie können natürlich einen eigenen Schlüsselnamen verwernden). Und als Typ des Schlüssels muss „SSH“ gewählt werden.

Nach der Schlüsselgenerierung wird Ihnen, in einem gut erkennbaren Textfeld, der neu erzeugte private Schlüssel angezeigt und die Funktion angeboten, diesen private key in die Zwischenablage zu kopieren. Machen Sie das. „Fertig“ klicken, wenn privater Schlüssel in der Zwischenablage ist.

Nachdem der private Schlüssel in die Zwischenablage kopiert wurde, kann „Fertig“ geklickt werden und das Schlüsselpaar ist der neuen Instanz zugewiesen.
Kurz den Browser mit dem Fenster in die BW-Cloud ruhen lassen
- Bis hierher haben Sie in der BW-Cloud gearbeitet, in einem Browserfenster. Die nächsten Schritte (grau hinterlegt) machen Sie lokal auf Ihrem Windows-Laptop.
- Eröffnen Sie auf Ihrem Windows-Laptop den Editor (der einfache Editor wird standardmäßig mit Windows mitgeliefert) und paskopieren (paste) aus der Zwischenablage den private key hierher:

- Jetzt den Editorinhalt sichern mit dem Dateinamen „winkey“ (mit der vorgeschlagenen Extension „.txt“) – in einem Verzeichnis, dass Sie leicht wieder finden! (z.B. „Dokumente\keys“).
- Dann muss mit dem puttygen das Schlüsselformat konvertiert werden.
- Öffnen Sie puttygen und wählen Sie die Funktion „Conversions – Import key“
- Aus dem Verzeichnis „Dokumente\keys“ wählen sie die Datei „winkey.txt“ (wenn Sie die vorgeschlagenen Namen so verwendet haben….) für den Import.
- Nach dem Import nutzen Sie die Funktion „Save private key“ um den privaten Schlüssel mit dem gleichen Namen, aber im Format „.ppk“ zu speichern – im gleichen Verzeichnis „Dokumente\keys“

Dateiname (wie bisher) und Datei-Typ (jetzt .ppk) angeben:

Nach diesem Schritt, dem Konvertieren des privaten Schlüssels auf Ihrem Laptop, können Sie wieder in der BW-Cloud weitermachen.
Weiter in der Cloud
Im Browerfenster (mit der stehen gelassenen Situation „Instanz starten“) auf den Button unten rechts „Instanz starten“ klicken und danach prüfen, ob alles funktioniert hat. Ein Hinweis auf eine falsch angelegte Instanz kann z.B. das Verrutschen eines Attributs in falsche Spalte darstellen. Die IP-Adresse steht beispielsweise im Feld des Schlüssels etc. Geduld, mit dem Start der Instanz!

3 TCP Regeln anlegen
- Im nächsten Schritt werden im Reiter „Netzwerk“ neue Regeln im Reiter „Sicherheitsgruppen“ angelegt. Über den Button „Regeln verwalten“ öffnet sich eine Übersicht, der bisher vorhandenen Regeln.
- Über den Button „Regel hinzufügen“ öffnet sich ein neues Fenster. Das Pflichtfeld Regel muss „Angepasste TCP-Regel“ beinhalten. Die weiteren Felder müssen folgend befühlt sein: Richtung „Eintritt“, Port öffnen „Port“, Port „80“, Entfernt „CIDR“ und CIDR „0.0.0/0“
- Nun Eine Austrittsregel erstellen. Dabei lassen Sie alle Felder gleich nur die Richtung wird in „Austritt“ geändert.
4 SSH-Client PuTTY (auf Windows) einrichten und mit einer Instanz verbinden
- Starten Sie die Drittanwendung Putty.
- Folgen Sie dem Pfad Connection -> SSH -> Auth im linken Menübaum.
- Drücken Sie auf den Button „Browse…“, neben dem Feld „Private key file for authentication:“ und gehen Sie auf das Verzeichnis indem ihre Schlüssel liegen. Wählen sie ihren privaten Schlüssel aus (hier im Beispiel winkey.ppk).

- Gehen Sie zurück zu Session und hinterlegen Sie die IP-Adresse ihrer Instanz.
- Geben Sie dieser Session einen Namen im Feld „Saved Session“ und klicken sie auf den Button „save“ um diese Einstellungen zu speichern.
- Durch das klicken auf den „Open“ – Button öffnet sich eine Shell. Geben sie das Passwort „ubuntu“ Sie sind jetzt mit dem Server verbunden

Putty ist jetzt Ihr Terminal für die virtuelle Ubuntu-Instanz:
Sicher, man/frau muss sich jetzt erst daran gewöhnen, zu lesen, was einem das Terminal mitteilt. – Vieles ist nicht so leicht erkennbar, wie bei einer GUI. (Alles nur eine Frage des Trainings 🙂 )

Wenn jetzt also die Instanz in der BW-Cloud läuft und mit PuTTY auf Windows “angezapft” werden kann, können wir jetzt die Cloud-Instanz weiter bearbeiten. D.h.
- die LAMP-Installation durchführen
- darauf wird die Magento-Installation folgen.
Mupples-User mit Zugang zu BW-Cloud, möchte ich ermutigen, das Thema “Instanz-” und “Schlüssel-Einrichtung” durchaus mehrfach durchzuspielen – Viel Spaß dabei, ganz nach dem Motto
Have fun storming the castle!