Der eigene Webserver (Teil 1) – Anwendungsentwickler-Podcast #88

Warum es schon für Auszubildende sinnvoll ist, einen eigenen (Web-)Server zu betreiben, erkläre ich in der achtundachzigsten Episode des Anwendungsentwickler-Podcasts.

Probeabo bei Audible (Affiliate)

Inhalt

Warum sollte ich mir überhaupt einen Server aufsetzen?

  • Besser kann man den professionellen Umgang mit Infrastruktur nicht lernen.
  • Keine Abhängigkeiten von Dienstanbietern.
  • Freiheit bei der Auswahl der Dienste.
  • Plattform für eigene Projekte.
  • Daten liegen in der eigenen Hoheit.
  • Weil es Spaß macht.
  • Weil es cool ist, eine eigene Domain (z.B. für E-Mail-Adressen) zu haben.

Was könnte ich mit einem eigenen Server machen?

  • Webserver
  • Mailserver
  • Git-Repositorys
  • OwnCloud
  • Build-Server
  • Application Server
  • Firefox-Sync-Server

Was kostet das?

  • Je nach Anbieter und Leistung ab 5 Euro im Monat für einen vServer auf Linux.
  • Windows kostet deutlich mehr, da Lizenzen fällig werden.
  • .de-Domains gibt es ab ca. 0,50 EUR pro Monat.
  • Ich empfehle 1blu*.

Welche Leistung brauche ich?

  • Hängt vom Betriebssystem ab. Linux benötigt nur wenige Ressourcen (falls keine grafische Oberfläche gewünscht ist).
  • 2 CPU-Kerne, 2 GB RAM, 500 GB Festplatte reichen schon.
  • Mehr Leistung ist natürlich immer besser. Heute gibt es schon günstige Server mit SSDs und mehreren GB RAM.

Welche (rechtlichen) Konsequenzen gibt es?

  • Dein Name mit Anschrift steht im Impressum bzw. bei der DENIC.
  • Du musst dich an den rechtlichen Rahmen halten und ggfs. Impressum und Datenschutzerklärung erstellen.
  • Wenn dein Server missbraucht wird, bist du dafür haftbar.
  • Du bist für alles selbst verantwortlich: Backups, Sicherheit usw.

Mit welchem Aufwand ist zu rechnen?

  • Übliche Administration: Installation, Konfiguration, Backup, Patching, Updates einspielen, evtl. Migration auf neuen Server.
  • Automatisierung ist in vielen Bereichen möglich und absolut sinnvoll. Spart viel Zeit und Nerven. Aber muss erstmal eingerichtet/gescriptet werden.

Welche Domain sollte ich registrieren?

  • Kommt auf deine Ziele an. Willst du z.B. deinen Namen bekannt machen oder dich anonym bewegen?
  • Empfehlung: Domainüberprüfung bei variomedia.de. Dort gibt es viele und auch „neue“ TLDs zum Prüfen auf Verfügbarkeit und registrieren.

Literaturempfehlungen

Wer in Linux einsteigen will, der kommt um die „Linux-Bibel“ von Michael Kofler* nicht herum. Es lässt eigentlich keine Wünsche offen 🙂

Michael Kofler - Linux: Das umfassende Handbuch. (Affiliate)*
(direkt beim Rheinwerk-Verlag bestellen*)

Links

Polyglot Clean Code Developer
About the Author
Ausbildungsleiter für Fachinformatiker Anwendungsentwicklung und Systemintegration, IHK-Prüfer und Hochschuldozent für Programmierung und Software-Engineering.

8 comments on “Der eigene Webserver (Teil 1) – Anwendungsentwickler-Podcast #88

  1. Hallo Stefan,

    klasse Episode! Da möchte man gleich am eigenen Server (weiter) arbeiten. Ging zumindest mir so 🙂
    Als ich in der Ausbildung zum FISI war, gab es für Auszubildende und Studenten mal ein Spot günstiges Angebot für einen VPS + eine Domäne für 1 €/Jahr bei 1und1 (Campus-code). Das war schon unschlagbar, aber leider auch beschränkt, was die Ressourcen anging (OpenVZ Container). Das Angebot bei 1blu sieht für den Einstieg nach einer guten Wahl aus. Ich bin nach 1und1 zu https://contabo.de gegangen und betreibe meinen Server (KVM) dort. Soviel läuft allerdings noch nicht drauf. Ein Webserver mit meiner ausbaufähigen Homepage https://me.ypid.de/, Mirror für meine Öffnungszeiten Auswertung https://openingh.ypid.de/ und ein paar Testumgebungen als LXC Container. Dafür habe ich IPv6 und HTTPS eingerichtet und alle Dienste laufen in eigenen LXC Containern 😉 Den Punkt Mail Server habe ich schon länger auf der Wunschliste. Das wäre noch cool.

    Bei dem Punkt Automatisierung kann ich nur zustimmen. Der Server sollte ohne regelmäßige Wartung auskommen. Ich gehe dabei noch einen Schritt weiter und habe auch alle Software Aktualisierungen unter Debian automatisiert und, damit diese Aktualisierungen auch genutzt werden, startet der Server nach einem Kernel Update in der Nacht automatisch neu oder startet die Dienste direkt neu. Manuelle Aktualisierungen wären mir nicht zeitnah genug. Siehe dazu unattended-upgrades und needrestart.

    Die Einrichtung von alledem lässt sich natürlich ebenfalls automatisieren. Für den Einstieg führt sicherlich kein Weg an Shell Skripts vorbei, wenn die Automatisierung dann allerdings etwas flexibler sein soll, würde ich Ansible empfehlen. Mit DebOps stehen bereits fertige Ansible „Rollen“ für Debian zur Verfügung um Dienste langfristig und sicher zu betreiben. Vom SSH Login bis zum fertig aufgesetzten und gehärteten Server mit sicherem Webserver, SSH, ownCloud, GitLab ohne einen einzigen Befehl auf dem Server manuell auszuführen. Mein Server ist so aufgesetzt und ich könnte diesen ohne viel zutun umziehen oder zusätzliche Server aufsetzen. Wer sparen möchte, kann damit auch schon seinen Server in einer eigenen VM vorbereiten und dann den Server beim Hoster sehr schnell hochziehen. Aber das nur als Ausblick. Das würde ich nicht für den Einstieg empfehlen.

    Ich freue mich schon auf weitere Folgen in der Reihe 🙂

  2. Stefan Macke sagt:

    Hallo Robin,

    danke für den Hinweis zu 1&1. Aktuell scheint es dort allerdings keine günstigen Angebote zu geben (oder ich finde es einfach nur nicht). Contabo kannte ich bislang noch nicht. Das aktuelle Angebot sieht aber ja ganz gut aus. Wäre eine Alternative zu 1blu, die vor Kurzem leider auch ein Sicherheitsproblem hatten. Aber das ist wohl immer ein wenig „Glückssache“.

    „DebOps“ ist ja eine coole Nummer (mal abgesehen vom Namen 😉 )! Ich denke, ich werde aber erstmal mit den unattended upgrades starten. Bislang mache ich die noch manuell. Danke für den Tipp!

    Viele Grüße!
    Stefan

  3. Stimmt, das Angebot bei 1&1 ist für mich 2016-08 ausgelaufen und als ich nach einem neuen Hoster geschaut habe, hatte 1&1 keine entsprechenden Angebote mehr.

    DebOps ist schon eine feine Sache, besonders wenn jemand mehrere Debian Systeme verwaltet und den Überblick behalten will.

  4. Jan sagt:

    hi Stefan,
    ich bin immer noch dabei die alten Folge nachzuhören. Beim Thema Server ist uberspace.de mein absoluter Favorit. Die sind zwar in der Leistung nicht ganz so günstig wie 1blu, was den Leistungsumfang angehen, haben aber einen anderen Ansatz. Es ist ein Pay what you want ab 1 Euro, also sogesehen noch etwas günstiger. Der Support per Email ist da auch super und es gibt einen Gratismonat. Also auch azubigerecht 😉

    Ciao, Jan

  5. Stefan Macke sagt:

    Hallo Jan, uberspace kannte ich bislang noch nicht. Danke für den Hinweis! 🙂

  6. Stephan sagt:

    Wollte auch noch einen Hoster ins Rennen schicken:
    https://www.hetzner.de/cloud
    Da geht der Spaß bei 2,95€ los

  7. Jhen Kevin Tumiri sagt:

    Grüezi Stefan,

    Ich bin ein kompletter Einsteiger und lerne einmal in der Woche in der Schule, wie man Raspberry Pi programmieren kann. Wir verwenden dafür das Linux-Betriebssystem, befinden uns jedoch ganz am Anfang. Ich habe großes Interesse daran, meinen eigenen Server einzurichten. Die Frage ist, ob ich direkt einsteigen und die Schritte umsetzen soll, die du in den folgenden Podcasts beschreibst, oder ob ich zuerst alles in einer virtuellen Maschine (VM) einrichten sollte.
    Eine Sache die noch erwähnenswert ist, dass ich keinen PC sondern zwei Laptops besitze. Einmal einen HP EliteBook x360 830 G8 Notebook PC, Prozessor: 11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz, 2803 MHz, 4 Kern(e), 8 logische(r) Prozessor(en) und einen MacBook Pro mit einen M1 Pro Chip.

    P.S Super Podcast hast einen weiteren Zuhörer gewonnen 😀

  8. Stefan Macke sagt:

    Hallo Jhen, ich würde empfehlen, zunächst in einer VM zu starten. Da kannst du nichts kaputt machen (bzw. es schnell wieder reparieren) und bist nicht direkt im Internet angreifbar. Viel Erfolg! 🙂

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax