Return-Path: Delivered-To: apmail-httpd-modules-dev-archive@minotaur.apache.org Received: (qmail 3273 invoked from network); 15 Nov 2010 18:50:18 -0000 Received: from unknown (HELO mail.apache.org) (140.211.11.3) by 140.211.11.9 with SMTP; 15 Nov 2010 18:50:18 -0000 Received: (qmail 39740 invoked by uid 500); 15 Nov 2010 18:50:50 -0000 Delivered-To: apmail-httpd-modules-dev-archive@httpd.apache.org Received: (qmail 39710 invoked by uid 500); 15 Nov 2010 18:50:50 -0000 Mailing-List: contact modules-dev-help@httpd.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: modules-dev@httpd.apache.org Delivered-To: mailing list modules-dev@httpd.apache.org Received: (qmail 39702 invoked by uid 99); 15 Nov 2010 18:50:50 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 15 Nov 2010 18:50:50 +0000 X-ASF-Spam-Status: No, hits=0.7 required=10.0 tests=RCVD_IN_DNSWL_NONE,SPF_NEUTRAL X-Spam-Check-By: apache.org Received-SPF: neutral (athena.apache.org: 76.96.30.32 is neither permitted nor denied by domain of jim@jagunet.com) Received: from [76.96.30.32] (HELO qmta03.emeryville.ca.mail.comcast.net) (76.96.30.32) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 15 Nov 2010 18:50:41 +0000 Received: from omta02.emeryville.ca.mail.comcast.net ([76.96.30.19]) by qmta03.emeryville.ca.mail.comcast.net with comcast id XWkz1f0060QkzPwA3WqMkX; Mon, 15 Nov 2010 18:50:21 +0000 Received: from [10.150.232.175] ([72.254.182.110]) by omta02.emeryville.ca.mail.comcast.net with comcast id XWq91f00J2PKUSo8NWqCin; Mon, 15 Nov 2010 18:50:17 +0000 Content-Type: text/plain; charset=iso-8859-1 Mime-Version: 1.0 (Apple Message framework v1081) Subject: Re: Shared memory ? From: Jim Jagielski In-Reply-To: Date: Mon, 15 Nov 2010 13:50:08 -0500 Content-Transfer-Encoding: quoted-printable Message-Id: <15A5E8E3-8ED8-43D4-A5E1-2D3A232D6DCF@jaguNET.com> References: To: modules-dev@httpd.apache.org X-Mailer: Apple Mail (2.1081) With 2.3/trunk you have mod_socache and/or mod_slotmem (with shared = memory). socache implements a shared memory based expiring cache and slotmem is a scoreboard-like shared memory impl. On Nov 15, 2010, at 11:12 AM, R=E9my Sanchez wrote: >=20 > Hi, >=20 > I'm coding a module to somehow replace/complement mod_security (it's = more a proof of concept than a real project for now). The first thing = that I'd like to have is a DNSBL, so that detected intruders are = instantly banned when added to the blacklist. Because doing a DNS query = for each HTTP request might be a bit heavy, I'd like to keep the results = in cache. >=20 > I guess that if I create something from the config pool, it will be = duplicated between processes. But another security I want is to check = URL against regexps commonly used by botnets/script kiddies. Then, if an = IP is blacklisted, I want its state to be changed instantly in all = caches. Which, if data is duplicated, is not possible. Would there be a = simple way to achieve this ? Or would it be more clever to move to = another solution, like using a common redis datastore for = blacklist/whitelist/rules lookup ? >=20 > Thanks, > R=E9my >=20