Apache vs. Lighttpd vs. nginx

Ahoi,

letztens wurde ich im Free-Hack TeamSpeak gefragt, welcher Webserver meiner Meinung nach der beste ist und welchen ich einsetzen wuerde. Meine Wahl fiel auf “nginx”. Doch warum? Und wieso moechten immer mehr auf “nginx” umsteigen? Gibt es Alternativen und was ist mit der Nummer 1, naemlich “Apache”?

Werde daher die Vor- und Nachteile von Apache, Lighttpd und nginx hier auflisten – falls in Zukunft jemand einen vServer oder Dedicated Server zulegen moechte und ueberlegt, welchen Webserver er einsetzen solle, hoffe ich dieser Person mit diesem Blogeintrag zu helfen.

Um den Ueberblick nicht zu verlieren, werde ich nur die Argumente bzw. Funktionen auflisten, die meiner Meinung nach am wichtigsten sind.


der meistbenutze Webserver im Internet

Vorteile:
+ Open Source & Kostenlos
+ Durch (sehr viele) Module erweiterbar
+ Oft bereits vorinstalliert auf Linux Servern und seit Jahren die Nummer 1

Nachteile:
– Um einiges langsamer als leichtere Webserver
– Hat schon mit schwachen DoS/DDoS Attacken Probleme, der Arbeitsspeicher (und das Logverzeichnis) verbrauchen innerhalb kurzer Zeit viel “Platz” und vorallem auf einem Server mit wenig RAM kann es dann vorkommen, dass der RAM dann aufgebraucht ist und der Prozess einfach abstuerzt. Dann tut sich nichts mehr.
– veraltet und ueberfuellt (was die ganzen Module angeht), die Standard Konfiguration ist auch nicht optimal und muss meistens angepasst werden
– Die Entwicklung ist vergleichsweise langsam


fly light.

Vorteile:
+ Open Source & Kostenlos
+ hat einige Erweiterungen
+ Niedriger CPU Load und RAM verbrauch im Vergleich zu Apache, auch bei “Belastung”
+ Serverlastverteilung moeglich und schneller als Apache
+ Fastcgi & HTTP Proxy Support verfuegbar

Nachteile:
– Die Entwicklung geht aehnlich wie bei Apache relativ langsam voran


der russische Ueberflieger

Vorteile:
+ Wird vorallem auf großen Seiten wie Rambler.ru, WordPress.com, GitHub, SourceForge, ComputerBase, Golem.de, FastMail, Hulu, 4chan und YouPorn eingesetzt
+ Eignet sich wunderbar als Webserver und/oder Reverse Proxy zur Serverlastverteilung
+ Open Source & Kostenlos
+ Es wird stets dran weiterentwickelt, fast monatlich gibt es updates
+ Vorallem der CPU Load & Ram Verbrauch sind um einiges niedriger als bei Apache oder Lighttpd (Es gibt einen interessanten Artikel, der Lighttpd und nginx vergleich: http://www.wikivs.com/wiki/Lighttpd_vs_nginx )
+ Viel bessere Performance als Lighttpd oder Apache, druecken diese zwei Zitate aus:
” * in my simple stress tests cpu usage showed lighttpd at 98% while nginx was never more than 52%.

* Nginx performed almost the same as lighttpd but cpu load was much better with nginx. (LA never got more than 5 while lighttpd bumped it up to ~10, and apache to 20+ while testing with the wordpress setup) Btw, can’t even compare it to apache, which almost crashed my box when testing the sample wordpress install.( 10000 requests, 1000 concurrent) ”
Aus http://www.wikivs.com/wiki/Lighttpd_vs_nginx
+ Die Konfiguration ist einfach und uebersichtlich, es gibt ein großes Wiki mit Konfigurations Beispielen

Nachteile:
– nginx bringt leider nicht wie Lighttpd ein FastCGI Modul mit, um ordnungsgemaess mit PHP zu laufen, daher muss entweder FastCGI (nach)installiert werden oder man greift auf das seit PHP 5.3 vorhandene “PHP Modul” php-fpm zu.

Fazit:
Wer eine Seite mit genug RAM und CPU Ressourcen hat und lieber mal schnell und unkompliziert starten will, kann den – meiner Meinung nach – veralteten Webserver Apache einsetzen, sollte ihn dann aber gut konfigurieren. Wer alle Apache Module benoetigt, kann auch zu Litespeed wechseln, welches schneller und besser, jedoch auch kostenpflichtig ist. Ich wuerde aber niemandem raten, seine Seite in der heutigen Welt noch mit Apache zu betreiben, da es einfach “zurueckgeblieben” ist, es ist die Nr. 1 aber es gibt einfach bessere und schnellere Alternativen.

Nun nochmal zu den Fragen am Anfang zu meinem Eintrag, mein persoenlicher Gewinner ist nginx. Die Vorteile ueberwiegen, die Konfiguration ist einfach und es kommt gut mit vielen Requests zurecht. Auch die Statistiken sprechen fuer sich:

“Laut der Netcraft Statistik wurden im November 2009 6,42 % aller Websites, die in der Statistik mit aufgenommen wurden, mit nginx betrieben, in totalen Zahlen sind dies 14.988.610 Webserver. Dabei konnte nginx laut Netcraft starke Zuwächse verbuchen, im Oktober 2009 waren es noch 5,99 % oder in ganzen Zahlen 13.813.997 Websites die mit nginx betrieben wurden. Dies ergibt ein Wachstum von etwa 1,1 Millionen Webserver seit Oktober. Innerhalb der letzten drei Monate kann nginx einen Zuwachs von circa 3,5 Millionen Webserver verzeichnen. Dies entspricht in etwa dem Wachstum vom Apache HTTP Server und liegt weit über dem Zuwachs von 200.000 Webservern, die Microsoft mit dem Microsoft Internet Information Services Webserver verbuchen konnte.

In Russland steckt nginx laut der offiziellen Website hinter über 20 % aller Domains. In absoluten Zahlen standen im Mai 2009 mit knapp 2,5 Millionen Websites die meisten nginx-Server in China, gefolgt von 2,4 in den Vereinigten Staaten. Erst auf Platz 3 folgte mit 580.000 Russland, in Deutschland waren es laut Statistik knapp 45.000 mit nginx-Server.”
Aus http://de.wikipedia.org/wiki/Nginx

Wer will kann auch die aktuellen Statistiken vom Januar 2011 sehen:
http://news.netcraft.com/archives/2011/01/12/january-2011-web-server-survey-4.html

Und wie man sieht ist die Anzahl an Server, welche nginx als webserver einsetzen weiter gestiegen.

Abschließend bleibt noch gesagt, dass im Endeffekt jeder den Webserver benutzen sollte, mit dem er gut zurecht kommt und auf den vServern, welche ich besitze oder einrichte, sind nginx oder lighttpd immer meine erste Wahl.

Kens Hackit

Nabend,

wollte euch heute mal ein “etwas anderes” Hackit vorstellen, naemlich das von Ken 😉

Dort geht es in erster Linie nicht um SQL Injections oder Javascript mist aus dem Source auszulesen, sondern darum um mit “technischen Verstaendnis” und ein wenig suchen ans Ziel zu kommen. Es ist nicht sonderlich schwer und eigentlich recht unterhaltsam, es ist auf jedenfall loesbar, daher ist hier nochmal die Vorstellung vom Hackit:

Vor geraumer Zeit habe ich auch mal ein sogenanntes “Hack It” gemacht. Es geht darum, irgendwie an das Passwort des jeweiligen Levels zu kommen um so in das jeweilig nächste zu gelangen. Meine Version eines solchen Spielchens hat zwar herzlich wenig mit Hacken zu tun – es geht eher um ein bisschen technisches Verständnis und logisches Denken – aber ich möchte es Euch dennoch nicht vorenthalten. Es ist nämlich nicht ganz so langweilig: Ich habe probiert, um den ganzen Einheitsbrei herumzukommen, bei dem das Passwort irgendwie im Quelltext versteckt, einkommentiert oder kodiert zu finden ist – das ist ja dermaßen langweilig.

Das Hack It existiert zwar schon eine ganze Weile, aber es hat mich doch nochmal einiges an Arbeit und Mühe gekostet, das Skript ein wenig zu modernisieren, zu vereinfachen, ein “Hall of Fame-”, Kommentier- und Benutzersystem sowie Level 8 einzuarbeiten. So ist es doch sicherlich benutzerfreundlicher und auch spannender. 🙂

Zum Hackit gehts hier entlang: http://ken.xe.cx/hackit/index.php – und ich wuensch euch viel Erfolg 😉

2 Jahre. w00t w00t.

Heute sind es genau 2 Jahre her, seitdem mein (erster) Blog(-eintrag) gegen 12 Uhr zum ersten Mal das “Licht der Welt” erblickt hatte. Normal “feier” ich mein Jubilaeum ein paar Tage nach Nazrek seinem Blog-Geburtstag, aber er hat im Moment die Domain verloren, da er nach der Dateiload Pleite vergessen hatte die Domain noch schnell zu holen – doof gelaufen.

Wie dem auch sei, 2 Jahre ist schon ein gutes Stueck und bald kann ich meinen Blog fuer den Kindergarten anmelden *g* Es hat sich auch viel getan, mein Blog laeuft nun besser als damals und ich habe den ein oder anderen Stammleser dazu bekommen, auch wenns von den Blogeintraegen her leider etwas (stark) nachgelassen hat und ich noch nicht alle Themen und Eintraege bloggen konnte, welche ich mir vorgenommen hatte. Bald kommt hoffentlich Motivation und Lust zurueck 🙂

Auch diesmal werde ich vorallem den neuen Bloglesern noch einmal mein erstes Blog Design zeigen: http://j0hnx3r.org/images/erstesdesign.jpg

Im Januar 2009 hostete mein Blog noch bei 425mb.com, dem alten Projekt von Sebo, vom 26.1.2009 bis zum ~ 17.10.2010 war er bei Team CINIPAC untergebracht welche nun leider massive Probleme haben und ist daher seit dem 17.10.2010 bei Breathost.com untergebracht (ist uebrigens ein echt empfehlenswerter Hoster, das Preis/Leistungsverhaeltnis ist spitze und der Support ist freundlich und auch auf Deutsch erhaeltlich).

Was aendert sich nun?

Nunja, die meisten von euch haben sich bestimmt Vorsaetze vorgenommen gegen die sie nun sowieso schon verstoßen haben, daher liste ich hier nur Dinge auf, welche auch realistisch sind 🙂 Werde daher zu jeder Blog Kategorie etwas sagen.

Bezueglich Scene-News, werd mir ueberlegen was ich darueber noch poste, es kommen viele Scene Boards und gehen wieder, da lohnt sich das drueber berichten eigentlich nicht, die “momentane” Scene ist sowieso dank den ganzen Carderfags eine Zumutung.

Bezueglich Exploits muss ich mir auch etwas ueberlegen, habe mir nach dem “Owned & Explosed No. 2” von den Ninjas ein paar Gedanken drueber gemacht und werde wohl da weiter machen wo ich damals aufgehoert hab. Was das veroeffentlichen von Exploits angeht, kleine Dinge vielleicht, interessante/nuetzliche eher nicht. Auch einige neue Ziele hab ich mir gesetzt und will diese auch erreichen 🙂

Tutorials – Unter “Pending” werden noch 1-2 angezeigt, welche ich mal angefangen hatte, auch diese moechte ich fertig stellen und veroeffentlichen, die werden sich teilweise etwas allgemeiner (Sprich weniger zu Web Sec, mehr zu anderen Themen) halten, jedoch fuer den ein oder anderen interessant sein.

Vulnerable Sites – Uhm joa, wenn ich Lust und Zeit hab, kann ich mal wieder nach ein paar Seiten suchen die Vuln sind und dann hier veroeffentlichen 🙂

Sollte jemand noch Ideen oder Vorschlaege haben, worueber ich bloggen kann oder soll, kann er auch versuchen mich zu kontaktieren und es mir zukommen zu lassen.

Soviel dazu erstmal, wuensch euch noch eine tolle Woche! 🙂

Dumme Kinder sind Dumm

ohai o/

Ich merk schon, das neue Jahr startet gut fuer mich 🙂 Grad eben hatte mich eine “merkwuerdige” Person in ICQ geaddet, welche mir ein Angebot machen wollte, welches ich quasi nicht ablehnen konnte:

Den unzensiert und ungekuerzten ICQ Log gibts hier:

(11:56:29 PM) 1177086: hi.
(11:56:41 PM) J0hn.X3r: Nabend
(11:57:19 PM) 1177086: Binde auf deinem Blog einen CardMarket.su Banner ein + ein Review zu unserem Board wo du es aufs beste empfielst
(11:58:08 PM) 1177086: ok ?????
(11:58:24 PM) J0hn.X3r: Nein?
(11:58:39 PM) 1177086: dann willst du also dodds ?
(11:58:40 PM) 1177086: ddos*
(11:58:52 PM) J0hn.X3r: Armer Spinner
(11:59:08 PM) 1177086: OKey uno momento
(01/08/2011 12:00:20 AM) 1177086: Letze Chanze ! Banner oder DOOS  
(12:01:39 AM) J0hn.X3r: Dumm muesste ich sein um jetzt "Banner" zu sagen
(12:01:46 AM) 1177086: SOo gestarted
(12:02:35 AM) 1177086: opfa
(12:02:43 AM) J0hn.X3r: jo
(12:02:55 AM) 1177086:  It's not just you! http://j0hnx3r.org looks down from here. 
(12:02:59 AM) J0hn.X3r: Cool
(12:03:06 AM) 1177086: muhahahaha DU OPFA
(12:03:25 AM) 1177086: ddos läuft bis 2021 vllt änderst du ja deine meinung
(12:03:29 AM) J0hn.X3r: Wo is da was down?
(12:03:39 AM) 1177086: hmm
(12:03:39 AM) J0hn.X3r: biste betrunken?
(12:03:49 AM) 1177086: shit firewall geblockt
(12:04:03 AM) J0hn.X3r: aha
(12:04:10 AM) J0hn.X3r: eine firewall die nicht existiert
(12:04:16 AM) 1177086: Bots Online:5 Bots (0.43%)
(12:04:17 AM) 1177086: ;-)
(12:04:40 AM) 1177086: das gibt nohc ein nachspiel wartes ab
(12:04:54 AM) 1177086: ich sagden leuten in cardmarket die sollen dihc ddosen
(12:04:56 AM) 1177086: muhahahaha
(12:04:58 AM) 1177086: adios du opfa

Najo, was soll man dazu sagen? Wuensch euch nen schoenes Wochenende, und falls mein Blog mal down sein sollte, wisst ihr nun wieso.