lehrkraefte:blc:informatik:ffprg1-2023:hello-online

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
lehrkraefte:blc:informatik:ffprg1-2023:hello-online [2023/02/01 16:22]
Ivo Blöchliger
lehrkraefte:blc:informatik:ffprg1-2023:hello-online [2023/05/02 14:30] (current)
Ivo Blöchliger [scp (secure copy)]
Line 1: Line 1:
 +{{backlinks>.}}
 +
 ====== Webseite auf unseren Server laden ====== ====== 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). 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. Damit können Sie Dateien auf und vom Webserver transferieren.
 +
 +<WRAP center round tip 60%>
 +Zu dieser Lerneinheit gibt es einen [[https://fginfo.ksbg.ch/~ivo/videos/informatik/ffprog23/02-scp-ssh-und-ssh-config.mp4|Screencast]], oder auch auf [[https://bldsg-my.sharepoint.com/:v:/g/personal/ivo_bloechliger_ksbg_ch/EcZ7cc46tChAqqU9X2kr6-UBAFR_JPO7iYMhK9zTXxWS-g?e=8UbNoY|Sharepoint]].
 +
 +</WRAP>
 +
 +===== scp (secure copy) =====
 +
  
 <WRAP todo> <WRAP todo>
-Auf der Kommandzeile (git-bash) gehen Sie in den Freifach Programmieren Verzeichnis.+Auf der Kommandozeile (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.   * 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    * Kopieren Sie das ganze Verzeichnis mit 
 <code bash> <code bash>
-scp -P 23 -r hello hans.wurst@ofi-tech-lab.ch:.+scp -P 23 -r hello hans.wurst@ofi.tech-lab.ch:.
 </code> </code>
 +Bei der aller ersten Verbindung werden Sie gefragt, ob der Fingerprint vom Server-Schlüssel korrekt ist: ''ED25519 key fingerprint is SHA256:wAFwuSzfShOE3Oqhm0Hdo1JtFS91pUKFSf8kaerE0sc.''
 +
 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).  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). 
  
Line 17: Line 29:
 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. 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.
 </WRAP> </WRAP>
 +
 +===== ~/.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/''. 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/''.
Line 37: Line 51:
 </code> </code>
   * 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.   * 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.+  * 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 Verzeichnis ''private'' mit ''mv .htaccess private/.'' (oder löschen Sie die Datei ''.htaccess'' mit ''rm .htaccess'')   * Wenn Sie Ihre Webseite gleich schon öffentlich schalten möchten, verschieben Sie die Datei ''.htaccess'' ins Verzeichnis ''private'' mit ''mv .htaccess private/.'' (oder löschen Sie die Datei ''.htaccess'' mit ''rm .htaccess'')
   * Die Datei ''index.html'' dürfen Sie ebenfalls ins Verzeichnis ''private'' verschieben oder löschen, damit das Verzeichnis angezeigt wird.   * Die Datei ''index.html'' dürfen Sie ebenfalls ins Verzeichnis ''private'' verschieben oder löschen, damit das Verzeichnis angezeigt wird.
 <code bash> <code bash>
 mv .htaccess private/. mv .htaccess private/.
 +mv index.html private/.
 </code> </code>
   * Mit ''exit'' verlassen Sie den Webserver und befinden sich wieder auf Ihrem Computer. Versuchen Sie dann (mit jetzt geändertem Passwort).   * Mit ''exit'' verlassen Sie den Webserver und befinden sich wieder auf Ihrem Computer. Versuchen Sie dann (mit jetzt geändertem Passwort).
Line 50: Line 65:
 </WRAP> </WRAP>
  
 +===== Verbindung mit Schlüsseln statt Passwörtern (optional) =====
 +<WRAP todo>
 +In git-bash führen Sie folgende Kommandos aus:
 +  * Schlüssel generieren (Speicherort akzeptieren, ein neues Schlüsselpasswort setzen):
 +<code bash>
 +ssh-keygen.exe -t ed25519 -C "hans.wurst@windoof"
 +</code>
 +  * Dann den Schlüssel kopieren:
 +<code bash>
 +ssh-copy-id ofi
 +</code>
 +  * 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 ;-)
  
 +</WRAP>
  • lehrkraefte/blc/informatik/ffprg1-2023/hello-online.1675264932.txt.gz
  • Last modified: 2023/02/01 16:22
  • by Ivo Blöchliger