Hiawatha webserver
Hiawatha webserver | |
---|---|
Basis data | |
ontwikkelaar | Hugo Leisink |
Jaar van uitgave | 2002 |
Huidige versie | 10.11 [1] [2] (8 juli 2020) |
besturingssysteem | Unix-derivaten , Linux , macOS , Windows met Cygwin |
programmeertaal | C. |
categorie | web Server |
Licentie | GPL ( vrije software ) |
Duits sprekend | Nee |
www.hiawatha-webserver.org |
Hiawatha is een gratis webserver ontwikkeld door Hugo Leisink sinds 2002. Het implementeert alle belangrijke functies van een webserver.
Functies / speciale kenmerken
Het programma heeft een monolithische structuur en heeft, in tegenstelling tot de meeste andere programma's in deze categorie (bijv. Apache HTTP Server , Lighttpd ), niet de mogelijkheid om afzonderlijke modules te laden wanneer het programma wordt gestart. Vanaf versie 2.0 gebruikt het programma alleen nog maar threads , dit leidt tot een verbeterde snelheid. De huidige versie biedt ook enkele functies die geen deel uitmaken van de standaard en anders alleen kunnen worden geïmplementeerd met behulp van externe aanvullende programma's:
- Ondersteuning van XSL-transformatie
- Bescherming tegen SQL-injectie- aanvallen, DoS-aanvallen en cross-site scripting
- Banning: Toegang tot clients kan op IP-niveau worden geblokkeerd op basis van hun adres .
- CommandChannel: De server kan via een aparte poort worden aangestuurd.
- Ondersteuning voor VirtualHosts
- URL -rewrite met behulp van reguliere expressies , wordt door Hiawatha een URL-toolkit genoemd.
- Ondersteuning van CGI en FastCGI
- Ondersteuning voor Basic en Digest Access HTTP-authenticatie
- IPv6- ondersteuning
- Verkeer volgen met Hiawatha Monitor
- Ondersteuning van WebSocket- verbindingen
Een volledige lijst met functies is te vinden op de projectwebsite [3] .
verhaal
De ontwikkeling van Hiawatha begon in januari 2002 omdat Hugo Leisink aangaf niet tevreden te zijn met de destijds beschikbare webservers. De focus bij de ontwikkeling ligt op beveiliging , laag verbruik van hulpbronnen en eenvoudige configuratie . Het ontwikkelingsproces is als volgt:
- Versie 1.0 (september 2002): Eerste functionele versie
- Versie 2.0 (maart 2004): Conversie van het programma naar op threads gebaseerde uitvoering (in plaats van fork )
- Versie 3.0 (september 2004): SSL- ondersteuning
- Versie 4.0 (december 2005): Ondersteuning voor het aanroepen van externe CGI- programma's
- Versie 5.0 (oktober 2006): Implementatie van FastCGI , eerste integratie in FreeBSD - Portstree in december 2006 [4] , met OpenBSD in maart 2007 [5]
- Versie 6.0 (oktober 2007): implementatie van IPv6
- Versie 7.0 (februari 2010): Introductie van Hiawatha Monitor , een monitoring- applicatie gebaseerd op PHP5 , MySQL en Banshee [6] , IPv6 is nu ook beschikbaar onder Windows
- Versie 7.5 (mei 2011): ondersteuning van het veld Do Not Track HTTP-header [7]
- Versie 8.0 (januari 2012): CMake vervangt Autoconf en mbed TLS (op het moment van publicatie nog steeds PolarSSL genoemd) vervangt OpenSSL , introductie van de HTTP-statuscode : 414 Request-URI Too Long
- Versie 9.0 (maart 2013): Gebruik van een threadpool (in plaats van multithreading )
- Versie 9.8 (september 2014): Implementatie van het WebSocket- protocol [1]
- Versie 10.11 (juli 2020)
Er waren regelmatig updates tussen deze hoofdversies, b.v. B. voor het dichten van beveiligingslacunes of het elimineren van fouten . [1] [8]
veiligheid
De Hiawatha-webserver brengt een aantal optionele beveiligingsfuncties met zich mee, waaronder de automatische detectie en verdediging van SQL-injectie , XSS- en CSRF-aanvallen, evenals DoS-aanvallen. Daarnaast wordt de lichtere PolarSSL- bibliotheek gebruikt voor de versleuteling van HTTPS- verbindingen in plaats van OpenSSL, wat moet leiden tot een hogere beveiliging. PolarSSL (en dus ook Hiawatha) werd, in tegenstelling tot OpenSSL (en daarop gebaseerde webservers zoals Apache Web Server of Nginx ), niet getroffen door de Heartbleed- beveiligingskwetsbaarheid. [9] [10]
In de tussentijd zijn er echter geïsoleerde bugs verschenen in Hiawatha, die de beveiligingsfuncties volledig of in bepaalde situaties hebben uitgeschakeld. [1] Het meest recentelijk werd aangekondigd op 31 mei 2014 dat de detectie van SQL-injectieaanvallen vanaf versie 8.6 en later zou kunnen worden omzeild door het gebruik van SQL-opmerkingen /* */
. [11] Bovendien werkte de verdediging tegen XSS-aanvallen niet voor reverse proxy's . Als gevolg hiervan werden beide beveiligingslekken in versie 9.6 gedicht. [1]
verdeling
Betrouwbare cijfers over het aantal Hiawatha-installaties zijn niet beschikbaar. Aangezien Hiawatha het beste te vergelijken is met Lighttpd , richt het zich ook vooral op de doelgroep van beheerders die een zo lean mogelijk webserver willen gebruiken.
web links
- Officiële website
- Hiawatha op GitLab
- Eerste presentatie op IT-Toolbox in december 2006 (Engels)
- Artikel over Hiawatha in Admin magazine
Referenties
- a b c d e Hiawatha Changelog
- ↑ Hiawatha Laatste
- ↑ Volledige lijst met functies
- ↑ Toegang op freshport.org
- ↑ http://openports.se/www/hiawatha
- ↑ http://hiawatha-webserver.org/monitor
- ↑http://dnt.mozilla.org/
- ↑ in verband met squirrelmail ( pagina niet meer beschikbaar , zoeken in webarchief ) Info: de link werd automatisch als defect gemarkeerd. Controleer de link volgens de instructies en verwijder deze melding.
- ↑ Heartbleed - Weblog - Hiawatha webserver
- ↑ PolarSSL-beveiligingsadvies 2014-01
- ^ Detectiepatronen voor SQL-injectie - Weblog - Hiawatha-webserver