| | |
| | | <p>Beispiele für eine Domain: localhost, www.example.com, 127.0.0.1, [0:0:0:0:0:0:0:1], [::1]</p> |
| | | </section> |
| | | <section> |
| | | <p>Es kann auch der bei der Installation des Servers angegebene Host-Name verwendet werden, z.B.</p> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | | # "vm-ubuntu-server" |
| | | ssh user@vm-ubuntu-server |
| | | </code> |
| | | </pre> |
| | | </section> |
| | | <section> |
| | | <h3>Pakete aktualisieren</h3> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | |
| | | |
| | | # Pakete updaten |
| | | sudo apt upgrade |
| | | </code> |
| | | </pre> |
| | | <p>sonstige Werkzeuge installieren</p> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | | sudo apt install vim git curl build-essential |
| | | </code> |
| | | </pre> |
| | | </section> |
| | |
| | | </pre> |
| | | </section> |
| | | <section> |
| | | <h3>Ordner und Dateien kopieren und verschieben</h3> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | | # Ordner kopieren |
| | | cp -r quelle ziel |
| | | |
| | | # Datei kopieren |
| | | cp quelle ziel |
| | | |
| | | # Ordner und Dateien verschieben |
| | | mv quelle ziel |
| | | </code> |
| | | </pre> |
| | | </section> |
| | | <section> |
| | | <h3>Eigenen User anlegen</h3> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | | # User anlegen |
| | | # -m => Home Ordner anlegen |
| | | # -G => zur angegeben Gruppe hinzufügen |
| | | # -s => Pfad zur Shell, in diesem Fall /bin/bash |
| | | useradd [user] -m -G sudo -s /bin/bash |
| | | |
| | | # Passwort setzen |
| | | passwd [user] |
| | | </code> |
| | | </pre> |
| | | </section> |
| | | <section> |
| | | <h3>Authentifizierung per SSH-Key-Pair</h3> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | | # Schlüsselpaar lokal erzeugen, falls nicht vorhanden |
| | | ssh-keygen |
| | | |
| | | # Inhalt aus Datei kopieren: |
| | | cat ~/.ssh/id_rsa.pub |
| | | </code> |
| | | </pre> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | | # Auf dem Server in folgenden Datei einfügen (Public Key pro Zeile): |
| | | ~/.ssh/authorized_keys |
| | | </code> |
| | | </pre> |
| | | <p>anschließend wird kein Passwort mehr beim Login benötigt</p> |
| | | </section> |
| | | <section> |
| | | <h3>Apache einrichten</h3> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | | sudo apt install apache2 |
| | | </code> |
| | | </pre> |
| | | <p>Einrichtung überprüfen</p> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | | # Oder im Browser aufrufen: |
| | | curl http://vm-ubuntu-server |
| | | </code> |
| | | </pre> |
| | | </section> |
| | | <section> |
| | | <p>Aufbau der Apache-Konfiguration</p> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | | # Hauptdatei, selten gebraucht |
| | | /etc/apache2/apache2.conf |
| | | |
| | | # Verfügbare vhosts |
| | | /etc/apache2/sites-available/*.conf |
| | | |
| | | # Aktivierte vhosts, Symlinks auf obige verfügbare |
| | | /etc/apache2/sites-enabled/*.conf |
| | | </code> |
| | | </pre> |
| | | </section> |
| | | <section> |
| | | <h3>vhost (virtual host) einrichten</h3> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | | cd /etc/apache/sites-available |
| | | |
| | | # 000-default.conf als Vorlage nutzen |
| | | # vm-ubuntu-server durch eigenen Host ersetzen |
| | | sudo cp 000-default.conf www.vm-ubuntu-server |
| | | |
| | | # 'ServerName' einkommentieren und mit eigenem Host anpassen |
| | | # Weitere Optionen je nach Fall anpassen, z.B. 'DocumentRoot' |
| | | sudo vim www.vm-ubuntu-server |
| | | |
| | | # vhost / Site aktivieren |
| | | sudo a2ensite www.vm-ubuntu-server.conf |
| | | </code> |
| | | </pre> |
| | | </section> |
| | | <section> |
| | | <p>Domains lokal auf dem Entwicklungssystem bekannt machen:</p> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | | # Windows |
| | | # z.B. mit Notepadd++ editieren. Benötigt Administrator-Rechte |
| | | C:\Windows\System32\drivers\etc\hosts |
| | | |
| | | # Unix |
| | | # z.B. mit vim editieren. Benötigt Administrator-Rechte |
| | | /etc/hosts |
| | | </code> |
| | | </pre> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | | # unten hinzufügen |
| | | [IP des Servers] www.vm-ubuntu-server |
| | | </code> |
| | | </pre> |
| | | </section> |
| | | <section> |
| | | <h3>Dateien zum Server kopieren</h3> |
| | | <pre> |
| | | <code class="bash" data-trim data-line-numbers> |
| | | # scp [Quelle] [Ziel] |
| | | scp . user@domain:/ziel |
| | | # scp [Quelle] [Ziel], z.B. |
| | | scp index.html user@domain:~/html |
| | | </code> |
| | | </pre> |
| | | </section> |
| | | <section> |
| | | <h3>Aufgabe</h3> |
| | | <p>Richte die Sub-Domain <code>www.vm-ubuntu-server</code> ein und liefere unter dieser Adresse eine beliebige HTML-Seite aus. Dies kann eine minimale selbstgeschriebene oder eine beliebige komplexere aus den vergangenen Veranstaltungen sein, z.B. aus den CSS-Themen (jedoch keine NodeJS-Projekte).</p> |
| | | </section> |
| | | </section> |
| | | </div> |
| | | </div> |