Jesred is a very fast and highly configurable redirector for the Squid
Internet Object Cache. It was derived from Chris Foote's and Wayne
Piekarski's Squirm 1.0 betaB and some code from Squid itself, but is
about 2-3x faster than the original version and has some additional
features.
mod_auth_mysql provides an MySQL-based authentication for apache2.
It's also designed to support multiple virtualhosts using only one
database.
mod_dosevasive is an evasive maneuvers module for Apache to provide evasive
action in the event of an HTTP DoS or DDoS attack or brute force attack.
It is also designed to be a detection and network management tool, and can be
easily configured to talk to ipchains, firewalls, routers, and etcetera.
mod_dosevasive presently reports abuses via email and syslog facilities.
Detection is performed by creating an internal dynamic hash table of IP
Addresses and URIs, and denying any single IP address from any of the
following:
* Requesting the same page more than a few times per second
* Making more than 50 concurrent requests on the same child per second
* Making any requests while temporarily blacklisted (on a blocking list)
This method has worked well in both single-server script attacks as well as
distributed attacks, but just like other evasive tools, is only as useful to
the point of bandwidth and processor consumption (e.g. the amount of bandwidth
and processor required to receive/process/respond to invalid requests), which
is why it's a good idea to integrate this with your firewalls and routers for
maximum protection.
This module instantiates for each listener individually, and therefore has a
built-in cleanup mechanism and scaling capabilities. Because of this per-child
design, legitimate requests are never compromised (even from proxies and NAT
addresses) but only scripted attacks. Even a user repeatedly clicking on
'reload' should not be affected unless they do it maliciously. mod_dosevasive
is fully tweakable through the Apache configuration file, easy to incorporate
into your web server, and easy to use.
mod_geoip2 is an Apache2 module that looks up the country code for the
IP address making the request without using reverse DNS.
This is a very small (7 Kb) HTTP server. It runs from inetd, which means
its performance is poor. But for low-traffic sites, it's quite adequate.
It implements all the basic features of an HTTP server.
The crawl utility starts a depth-first traversal of the web at the
specified URLs. It stores all JPEG images that match the configured
constraints. Crawl is fairly fast and allows for graceful termination.
After terminating crawl, it is possible to restart it at exactly
the same spot where it was terminated. Crawl keeps a persistent
database that allows multiple crawls without revisiting sites.
The main reason for writing crawl was the lack of simple open source
web crawlers. Crawl is only a few thousand lines of code and fairly
easy to debug and customize.
Some of the main features:
- Saves encountered JPEG images
- Image selection based on regular expressions and size contrainsts
- Resume previous crawl after graceful termination
- Persistent database of visited URLs
- Very small and efficient code
- Supports robots.txt
This add-on module allows the apache web server to use a PostgreSQL
database for user and/or group authentication. For large user lists this
can offer a significate speed up over apache's standard flat file
format.
mod_extract_forwarded hooks itself into Apache's header parsing phase and looks
for the X-Forwarded-For header which some (most?) proxies add to the proxied
HTTP requests. It extracts the IP from the X-Forwarded-For and modifies the
connection data so to the rest of Apache the request looks like it came from
that IP rather than the proxy IP.
mod_extract_forwarded can be dangerous for host based access control because
X-Forwarded-For is easily spoofed. Because of this you can configure which
proxies you trust or don't trust.
mod_fileiri implements http IRIs for directories/files, i.e.
if accepts URIs with non-ASCII characters encoded in UTF-8 and
converts them to the legacy encoding used in the file system
(which can be specified per directory, or even finer if necessary
(although that's a real hack)).
What is more, it continues to accept requests in the legacy
encoding specified, and redirects them to the correct UTF-8
form, which then returns the actual document (without looping).
There is also a backwards mode, which does redirects from
URIs in a specified legacy encoding to UTF-8 if the directory/
filenames are in UTF-8.
mod_hosts_access allows you to use the hosts.allow and hosts.deny
files to configure access to your Apache webserver. This is the
stable version 1.0.0. Nothing has changed apart from the homepage
and some documentation glitches.