This is an old revision of the document!
Webseite auf unseren Server laden
Sie bekommen ein Usernamen und Login auf unserem Webserver https://ofi.tech-lab.ch (steht im E24 an der KSBG).
Damit können Sie Dateien auf und vom Webserver transferieren.
scp (secure copy)
Auf der Kommandzeile (git-bash) gehen Sie in den Freifach Programmieren Verzeichnis.
- Stellen Sie sicher, dass Sie sich im Verzeichnis befinden, worin sich das Vezeichnis
hello
mit Ihrer ersten Webseite befindet. - Kopieren Sie das ganze Verzeichnis mit
scp -P 23 -r hello hans.wurst@ofi-tech-lab.ch:.
Der SSH-Port (normalerweise 22) ist im Tech-Lab schon von einem anderen Server belegt. Darum -P 23
(oder 40199, falls der Port im Kanti-Netzwerk gesperrt sein sollte).
Das -r
steht für «rekursiv», d.h. alle Verzeichnisse mit Inhalt und Unterverzeichnissen kopieren. Der Punkt am Schluss besagt, dass ins Home-Verzeichnis auf dem Server kopiert werden soll.
Sie sollten jetzt Ihre Webseite auf dem Server unter https://ofi.tech-lab.ch/2023/ etc. anschauen können. Vergessen Sie nicht, die Webadresse am Schluss noch mit hello/
zu ergänzen.
~/.ssh/config und remote shell mit ssh
So viele Optionen, nur um eine Datei oder ein Verzeichnis zu kopieren, ist mühsam. Darum werden wir diese Optionen in die Datei ~/.ssh/config
schreiben (die ~
steht für das Home-Verzeichnis, normalerweise etwas im Stil von /c/Users/Hans.Wurst/
.
- Auf der Kommandzeile (git-bash) geben Sie das folgende Kommando ein, um die Config-Datei zu schreiben:
code ~/.ssh/config
- Fügen Sie folgende Zeilen in die Datei ein und speichern Sie diese:
Host ofi HostName ofi.tech-lab.ch User hans.wurst Port 23
- Probieren Sie jetzt unten stehende Kommandozeile aus (anstatt voll ausgeschrieben
ssh -p 23 hans.wurst@ofi.tech-lab.ch
)
ssh ofi
- Damit sind Sie direkt auf dem Webserver eingeloggt, was am geänderten Prompt zu erkenne ist. Mit
ls -la
sehen Sie sämtliche Dateien und Verzeichnisse. - Sie können nun Ihr Webserver-Passwort ändern mit
passwd
(bei der Passworteingabe wird gar nichts angezeigt. - Wenn Sie Ihre Webseite gleich schon öffentlich schalten möchten, verschieben Sie die Datei
.htaccess
ins Verzeichnisprivate
mitmv .htaccess private/.
(oder löschen Sie die Datei.htaccess
mitrm .htaccess
) - Die Datei
index.html
dürfen Sie ebenfalls ins Verzeichnisprivate
verschieben oder löschen, damit das Verzeichnis angezeigt wird.
mv .htaccess private/.
- Mit
exit
verlassen Sie den Webserver und befinden sich wieder auf Ihrem Computer. Versuchen Sie dann (mit jetzt geändertem Passwort).
scp -r hello ofi:.
- Das ist nun hoffentlich doch etwas einfacher!
Verbindung mit Schlüsseln statt Passwörtern
In git-bash führen Sie folgende Kommandos aus:
- Schlüssel generieren (Speicherort akzeptieren, ein neues Schlüsselpasswort setzen):
ssh-keygen.exe -t ed25519 -C "hans.wurst@windoof"
- Dann den Schlüssel kopieren:
ssh-copy-id ofi
- Von jetzt an kann mit dem Schlüssel eingloggt werden. Allerdings muss jetzt jedes Mal das Schlüsselpasswort eingegeben werden. Aber dafür gibt es Abhilfe. Ergänzen Sie Ihre Datei
~/.bashrc
wie auf folgender Webseite beschrieben: https://docs.github.com/en/authentication/connecting-to-github-with-ssh/working-with-ssh-key-passphrases#auto-launching-ssh-agent-on-git-for-windows - Das Passwort muss dann nur ein einziges Mal beim ersten Start der git-bash eingegeben werden. Danach funktionieren die Kommandos scp und ssh ohne Passwort und sind trotzdem sicher