RE: stop accepting new connections on port 80

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



 

> -----Original Message-----
> From: netfilter-bounces@xxxxxxxxxxxxxxxxxxx 
> [mailto:netfilter-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Spam User
> Sent: Wednesday, December 07, 2005 5:18 PM
> To: netfilter@xxxxxxxxxxxxxxxxxxx
> Subject: RE: stop accepting new connections on port 80
> 
> >
> > I don't know exactly how you're determining the above: is it a long 
> > download that gets killed? HTTP opens at least (and usually 
> only) one 
> > connection per page so the problem may be that the connection is 
> > already closed even though the page is still being viewed. 
> Unless you 
> > are downloading something it's not likely your connection will last 
> > much longer than four or five seconds on a heavily 
> graphical page with 
> > broadband.
> 
> 
> I had sort of thought about this, but then I thought thats 
> what the related and established rules took care of.
> 
> I suppose it it would be more helpful if the end goal was 
> known.. to be more specific, I should have included that we 
> use PHP sessions and what I'd like to do is keep the session 
> open until all the currently open PHP sessions are closed 
> (serve active session, don't accept new connections).
> 
> I was hoping that the connection tracking would be associated 
> to the sessions (not by session id or anything, but by the 
> relationship of the established connections from the caller), 
> so if user a looked at page X then 10 seconds later looked at 
> page y, netfilter would know because that client had had 
> established connections - I suppose I can see the flaws in 
> that logic though.  I thought that the callers connection 
> info being in a time_wait state would possibly mean something 
> to iptables.

Not knowing exactly how conntrack determines when a connection is
closing, I don't think I can help with explaining that. However each
page load is a different TCP connection (and the client may use a
different source port) so it would make sense to me that conntrack would
process it that way.

> I know this isnt an apache/php list, but maybe thats where I 
> should be headed?  Something like sending apache a usr1 
> signal, but instead of accepting new connections with the new 
> config, just don't accept new connections until the daemon is 
> restarted.
> 
> In any case, thanks for your speedy response.
> 

If you can get your hands on the PHP, I'd start there. You could (a)
have PHP check for the existence of some flag file (say,
/var/.STOP_SESSIONs) and deny new sessions or (b) do that in the
database to cut down on I/O if you've got a busy server.

I don't know enough about the inner workings of Apache to suggest a
solution with that.

Derick Anderson 



[Index of Archives]     [Linux Netfilter Development]     [Linux Kernel Networking Development]     [Netem]     [Berkeley Packet Filter]     [Linux Kernel Development]     [Advanced Routing & Traffice Control]     [Bugtraq]

  Powered by Linux