M239 - DAY 1

Folgende Handlungsziele wollen wir heute erreichen:

1.1 Kennt Kriterien, welche bei der Beurteilung einer Ausgangssituation für die Dimensionierung eines Internetservers angewendet werden.
2.1 Kennt die Merkmale und deren Bedeutung für die technische Spezifikation eines Internetservers.
2.2 Kennt das Prinzip der Namensauflösung mittels DNS und deren Einfluss auf den Betrieb weiterer Internetdienste (z.B. Virtual Hosts bei Webserver).
3.1 Kennt die empfohlenen (best practice) Betriebs- und Sicherheitseinstellungen eines Internetservers.

Navigation

Step 0: Recherche und Auswahl eDokumentation (Richtzeit: 30 min)

Im LBV239-3 soll eine eDokumentation erstellt werden. Diese zählt zu 100% als Semesternote.

Die Bewertungskriterien:
– das dokumentierte Wissen und Können steht in Bezug zu den Handlungszielen
– das ePortfolio enthält fachliche Erkenntnisse, welche die Verknüpfung von Theorie und Praxis sichert
– der Lernprozess ist ersichtlich
– das ePortfolio ist sinnvoll strukturiert, die Darstellung ist übersichtlich

Es gibt einige Tools, welche sich als ePortfolio anbieten:

  • Confluence
  • Sharepoint
  • BSCW
  • Evernote
  • Wikis
  • GoogleApps
  • OneNote

Ziel ist es eine Variante auszuwählen, auszuprobieren und einzurichten. Besprechen Sie Ihre Wahl direkt und sobald sie sie haben mit der Lehrperson.

Step 1: Einführung (Richtzeit: 20 min)

In diesem Modul werden wir einiges über Internetserver lernen und den Umgang mit Linux weiter verfeinern.

Dazu werden wir eine Ubuntu-VM aufsetzen und hauptsächlich mit dieser Arbeiten. Am heutigen Tag wird es jedoch zuerst wieder Theorie geben, bevor wir nächste Woche mit der Inbetriebnahme der Webserver starten werden.
Dazu wollen wir zuerst einmal definieren, was denn ein Internetserver ist. Schauen Sie Sich dazu dieses Bild an:

Internet kennen wir, das ist der Ort, auf welchem das HTTP/HTTPS-Protokoll mit dem TCP/IP-Stack abgespult wird. Dies ist das weltumspannende, öffentlich verfügbare Netzwerk.
Intranet ist technisch gleich aufgebaut, wie das Internet. Es ist aber nur zugänglich für eines «closed user group», womit das Intranet einiges kleiner wird als das Internet. Eine «closed user group» kann zum Beispiel nur die Mitarbeiter einer Firma oder sogar nur einer Abteilung beinhalten.
Extranet ist der Teil des Intranets, der über das Internet erreichbar ist. Zum Teil möchten Unternehmen Inhalte aus dem Intranet ihren Kunden oder Verkäufer, die extern arbeiten, zugänglich machen. Dabei soll der Inhalt aber nicht für das ganze Internet erreichbar sein.

 

Was ist denn nun ein Internetserver?

Step 2: Hosting (Richtzeit: 45 min)

Ein Internetserver ist also nichts anderes als ein Server, der Dienste im Internet anbietet. Wenn Sie also auf Ihren Server zuhause eine html-Datei ablegen und auf diese vom Internet her zugreifen können, haben Sie schon einen Internetserver. Im Normalfall hat man zuhause aber keinen leistungsfähigen Server stehen, weswegen man auf andere Dienstleister zurückgreift. Dazu möchten wir recherchieren, was die folgenden Begriffe bedeuten und diese in der Dokumentation beschreiben:

  • Web-Hosting
  • Root-Server
  • Housing

Ich bitte Sie, die folgenden Youtube-Videos anzuschauen:

Im Normalfall hostet man also seine Homepage bei einem Dienstleister, der eine ganze Armee von Servern hat und uns einen kleinen Teil davon zur Verfügung stellt. Diesen Teil können wir belieb auf- oder abstocken (scaling).

Schauen Sie Sich dazu mal die unterschiedlichen Webhosting-Pakete von diesen Anbeitern an. Achten Sie darauf, was Ihnen als Kunde alles angeboten wird und wie sich die Pakete unterscheiden, was also der Preistreiber ist:

Prinzipiell machen diese Anbieter also nichts anderes, als einen Webserver mit sehr viel Power anzubieten. Wir Kunden bekommen dann ein kleines Stück von diesem Webserver und können diesen darstellen, wie wir wollen. Folgend ein Prinzipschema wie das aussehen kann:

Das ist relativ einfach und ganz viele Anbieter bieten diesen Service an. Dabei sind folgende Begriffe wichtig:

Hit:
Ein Hit stellt einen Zugriff auf eine Datei innerhalb eines Webprojektes dar und erzeugt somit eine Zeile im Logfile.
Dabei ist es gleichgültig, welche Datei angefordert wurde, woher die Anforderung kam, warum sie erfolgte und ob die Datei vollständig übertragen wurde. Bei der angeforderten Datei kann es sich zum Beispiel um ein HTML-Dokument, eine Bilddatei, eine Audio- oder Videodatei handeln.
Gehören zu einer Webseite neben dem Text noch andere Objekte (Bilder, Audio-/Video-Dateien), so erzeugt jedes zu ladende Objekt einen Hit.

Files:
Im Gegensatz zu den Hits, bei denen sowohl erfolgreiche, als auch erfolglose Zugriffe auf Dateien gezählt werden, gibt der Zahlenwert für Files nur noch die Anzahl der erfolgreich übertragenen Dateien an (Kennzahl 200). Dabei werden alle Dateien erfasst, egal, um welchen Dateityp es sich handelt.

Pageviews:
Der Begriff Pageviews ( wörtlich: «Seitenbetrachtungen» ) wird von den meisten Statistikprogrammen übereinstimmend verwendet. Darunter ist die Anzahl abgerufener HTML-Dokumente zu verstehen.
Andere Dateitypen werden nicht berücksichtigt, sind sie doch nur «Beiwerk» einer Webseite und in diese mittels entsprechender HTML- Anweisungen eingebunden (z.B. Bilder).
Der Kenngröße Pageview liegt der Gedanke zu Grunde, dass nur Webseiten berücksichtigt werden, die für den Betrachter Informationen enthalten. Genau genommen würden darunter nur Webseiten fallen, die Text enthalten.
Mit der Entwicklung von HTML wurde es jedoch möglich, multimediale Elemente mittels des HTML-Quelltextes in die Seite einzufügen, und somit Webseiten nicht nur grafisch ansprechender zu gestalten, sondern auch aussagekräftiger zu machen.
Gleiches gilt analog für Audio- oder Videodateien, die das Thema der Webseite «erlebbarer» machen können.
Deshalb werden von den Statistik-Tools in der Regel alle Seiten gezählt, die die für HTML-Dokumente typischen Dateibezeichnungen tragen.

Sessions, Visits:
Erinnern wir uns: jeder Computer, der mit dem Internet verbunden ist, hat eine eindeutige und einmalige Adresse (IP). Diese IP wird zur Auswertung der Statistik herangezogen.
Session oder Visits repräsentieren die Anzahl unterschiedlicher IPs, unter denen eine oder mehrere Webdokumente innerhalb eines definierten Zeitraumes (meist 30 Minuten) abgerufen wurden.

Step 3: DNS (Richtzeit: 20 min)

Wenn Sie einen Server haben, auf den aus dem Internet zugegriffen werden kann, bedeutet das, dass er eine eindeutige IP-Adresse haben muss. Diese IP-Adresse einzugeben ist für uns Menschen aber sehr mühsam. Stellen Sie Sich vor, Sie müssten statt instagram.com, whatsapp.com und snapchat.com immer eine IP-Adresse eingeben statt dem Namen. Das könnten wir uns gar nicht merken. Aus diesem Grund kann ein DNS-Server unsere IP-Adresse mit einem Namen verknüpfen.

Man kann sich das wie bei einem Telefonbuch vorstellen.

Schauen Sie Sich die folgende Grafik genau an und erklären Sie sie in der Dokumentation für jede Nummer und jeden Begriff, der verwendet wird. Nutzen Sie dabei folgenden Comic als Hilfe: https://howdns.works/

Lernzielkontrolle: Füllen Sie den Lückentext aus: Link

Step 4: Internet-Server (Richtzeit: 45 min)

Um zu bestimmen, wie viel Power wir für unseren Internet-Server brauchen, müssen wir uns zuerst überlegen, wie viele Personen auf unseren Server zugreifen werden. Dabei gibt es zwei Arten zu unterscheiden:

  • Zugriffe pro Zeitdauer
  • Parallele Zugriff

Lesen Sie dazu bitte den folgenden Artikel. Dieser ist Englisch, übersetzen Sie Wörter, die sie noch nicht kennen:

Überlegen Sie Sich, wie Sie einen Internetserver hardwaremässig aufbauen würden, der einen Infoticker hat und mit ca. 100 Sessions pro Minute rechnen muss und was hier die wichtigen Komponenten sind und schreiben Sie es in der Doku auf.

Lernzielkontrolle: Weisen sie die Fachbegriffe den entsprechenden Kategorien zu (schwierig): Link

Step 5: Sicherheit (Richtzeit: 45 min)

Webserver sind immer vom Internet her erreichbar und könnten somit das Einfallstor in Ihr Netzwerk sein. Überlegen Sie Sich 10 Minuten, was Sie machen könnten, um einen Webserver sicher zu betreiben.
Lesen Sie danach die folgenden Kurzartikel:

Schauen Sie die ersten 8 Minuten folgenden Videos:

Versuchen Sie nun in der Dokumentation zusammenzufassen, was der Hacker gemacht hat um Zugriff auf den PC zu bekommen, denn nur wenn man weiss, wie Hacker vorgehen, kann man sich schützen.

Lernzielkontrolle: Finden Sie die korrekten Wörter: Link

Step 6: Tests (Richtzeit: 45 min)

Immens wichtig für einen sicheren Betrieb ist, dass Sie ihren Webserver ausgiebig testen und wissen, was er verträgt. Sie sollten wissen, wie die Zugriffszeiten aus anderen Ländern sind und wie viele parallele Zugriffe ein Webserver aushält. Ausserdem müssen Sie jederzeit wissen, wie und wo ein Upscaling gemacht werden kann, damit Ihr Webserver mehr Zugriffe zulassen kann. Beim Webhosting-Dienstleister ist das meistens mit der Erhöhung der monatlichen Zahlungen getan, wenn Sie aber selber einen Webserver hosten, ist es meist recht komplex (RAM, CPU, Internetleitung, usw.).
Zum Testen gibt es viele unterschiedliche Webseiten, die sie verwenden können um Ihren Webserver bis ans Limit zu bringen. Googeln Sie selbst nach einigen dieser Seiten. Hier ein paar Beispiele:

Mit professionellen Tools werden umfangreiche Testresultate präsentiert:

https://www.tecchannel.de/a/test-paessler-webserver-stress-tool,1746488,12

Schreiben Sie auch hier wieder eine Checkliste, die Sie bei Abgabe eines Internetservers an einen Kunden durchgehen sollten, damit sicher alles läuft.

Step 7: Installation Ubuntu (Richtzeit: 30 min)

Installieren Sie bis nächste Woche eine VM mit Ubuntu (Download ISO (ca. 2.0 GB): https://ubuntu.com/download/desktop). Im Normalfall würde man Ubuntu Server nehmen, da diese Version aber kein GUI hat, sondern nur mit Konsolenbefehlen funktioniert, werden wir das normale Client-Ubuntu nehmen, da man dort ebenfalls mit der Konsole arbeiten kann, aber dann per GUI noch überprüfen kann, ob alles funktioniert. Dies ist für das Verständnis einfacher und logischer. Falls Sie bei der Installation Probleme haben:

Erinnern Sie Sich, was Sie alles konfigurieren müssen, wenn Sie einen Server das erste Mal in Betrieb nehmen (sie haben eine Checkliste im Modul 123 gemacht).

Abschluss (Richtzeit: 15 min)

Sie haben viele unterschiedliche Punkte kennengelernt. Der heutige Einstieg eher theoretisch und einen Abschluss mit Installation von Ubuntu. Wie ist Ihnen dieser Tag gelaufen?

  • Konnte ich trotz der vielen Theorie gut lernen?
  • Was hat mich beim Lernen abgelenkt?
  • Was könnte ich machen, dass ich auch theoretische Inputs besser lernen kann?

Überprüfen Sie, dass Sie alle Unterlagen an oliver.macher@bbz-sh.ch geschickt haben:

  • Dokumentation
  • Beschreibung Hosting
  • Internetserver Kalkulation
  • Erklärung DNS-Server
  • Checkliste Internetserver