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

Bug#311968: apache2-common: can't be accessed from ipv4 clients in default configuration



Package: apache2-common
Severity: important
Tags: patch

    If I run apache2 using it's default config, it binds to the ipv6 address, even though 
I haven't set up an ipv6 connection (sit0 is down, only eth0, ppp0, and lo is up). 
    Thus a client who knows only ipv4 (i.e. a windows user), cannot connect to my server.
A possible fix to this problem is, that by default the file ports.conf should contain this:
    Listen 0.0.0.0:80
    However I don't know what effect will this have on IPV6 connections. But given the fact that 
most often people will use ipv4 addresses on their servers, or at home, I think that it would be
best to make the default configuration to bind to ipv4, and if somebody wishes to use ipv6
he'll just have to change the config file. Of course this opinion could be wrong.
    The best in my opinion would be if it would accept connections on both ipv4 and ipv6,
but that's not happening in the default config.
    In order for it to be accessed from ipv4, the postinstall script should be changed like this
Instead of: echo "Listen 80" >> /etc/apache2/ports.conf
Should be:  echo "Listen 0.0.0.0:80" >> /etc/apache2/ports.conf
    
    So here is the patch file:
----------------BEGIN PATCH--------------------
--- apache2-common.postinst	2005-06-04 17:02:23.919988360 +0300
+++ ../../fix/apache2-2.0.54/debian/apache2-common.postinst	2005-06-04 17:04:06.111452896 +0300
@@ -17,7 +17,7 @@
 	NO_PORT_80=`$NETSTAT -lnt | awk '{print $4}' | grep ':80$'` || true
 	if [ -n "$NO_AF_INET" -o -n "$NO_PORT_80" ]; then
 		echo "NO_START=1" >> /etc/default/apache2
-		echo "Listen 80" >> /etc/apache2/ports.conf
+		echo "Listen 0.0.0.0:80" >> /etc/apache2/ports.conf
 		if [ -n "$NO_AF_INET" ]; then
 			echo "netstat is unable to query the state of your listening TCP ports.  This could be because you don't have TCP support in your kernel (unlikely), or because you do not have the /proc filesystem mounted.  To be on the safe side, we're assuming that port 80 is in use."
 		fi

----------------CUT HERE-----------------------
    
-- System Information:
Debian Release: 3.1
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: i386 (i686)
Kernel: Linux 2.6.8-2-k7
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1)



Reply to: