Hiawatha is a secure and advanced webserver available for multiple platforms. It has been developed by Hugo Leisink since 2002.
Hiawatha started in January 2002 as a very small webserver, suitable for servers with old hardware. It was written originally for internet servers in student houses in Delft of South Holland, the Netherlands. Because the author was a computer science student with special interest in IT security, all sorts of experimental security features were included. This resulted in a webserver with many interesting security features which have proved useful. The author has said "I know for a long time that vulnerabilities [exist in other webservers] . [One thing] that bothers me: the runtime of a CGI. A CGI process [under other webservers] can run forever. A single CGI script can DoS a webserver. A system administrator is needed to kill the script. And what about a client [or hacker] that keeps on guessing passwords for HTTP authentication? These kind of issues inspired me to create Hiawatha, with settings for maximum request sending time, maximum CGI run time, client banning, etc. Features that, in my opinion, every daemon should have."
The January 2009 edition of Linux Magazine contained an article about the Hiawatha webserver.
- Important releases
- 1.0: September 2002. A basic but functional webserver.
- 2.0: March 2004. Use of multithreading instead of forking.
- 3.0: September 2004. SSL support.
- 4.0: December 2005. A CGI-wrapper for improved security was included.
- 5.0: October 2006. FastCGI support for improved CGI speed.
- 5.2: November 2006. First-time integration to the FreeBSD Ports system at Version 5.2 in December 2006, to the OpenBSD ports tree at Version 5.7 in March 2007.
- 5.12: August 2007. URL rewriting support.
- 6.0: October 2007. IPv6 support.
- 6.6: April 2008. XSLT support.
- 6.10 : October 2008. Prevent cross-site request forgery added.
- 7.0: February 2010. Remote monitoring support.
- 8.0: January 2012. Autoconf replaced with CMake, OpenSSL replaced with PolarSSL.
Hiawatha webserver implements all important functions of a modern webserver, such as:
Hiawatha has many security features that no other webserver has, like preventing SQL-injection, cross-site scripting (XSS), Cross-site request forgery (CSRF) prevention, Denial-of-service protection, control external image linking, banning of potential hackers and limiting the runtime of CGI applications. The author worked on RFC3546 support, but "the OpenSSL documentation [on this subject] is just extremely poor" so progress was difficult.
Although security is the main focus, Hiawatha is also doing quite well in terms of speed and performance. According to a performance test carried out by an independent researcher (SaltwaterC), Hiawatha beats others for static content. Hiawatha supports load-balanced FastCGI, which makes it fast and scalable for handling dynamic content.
Usage statistics of Hiawatha webserver is often underestimated. Due to its security traits, Hiawatha webserver may reject unknown web crawlers not from Web search engines, which may include some from web survey agencies.
↑ About page of Hiawatha webserver
↑ FreeBSD Ports of Hiawatha
↑ OpenBSD Ports of Hiawatha
↑ List of features
↑ Benchmark of webservers
↑ Security measures suggested for defining websites
de:Hiawatha Webserver nl:Hiawatha (webserver)