Hello All, I am newbie with installing Apache. I am installing an older version, because I am interested in learning more about specific vulnerabilities in this version, specifically CVE-2004-0942<http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2004-0942>, CVE-2004-0493 <http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2004-0493> , CVE-2004-0113<http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2004-0113> , CVE-2003-0132<http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2003-0132> . I am a student and am doing some research on how resource leaks can be detected. Using Apache I intended to learn how these leaks are manifested in a real application.
I am running Apache on a Xen domU (Ubuntu). These are my OS details: u...@apachedom:~/apache/install/2_0_44$ uname -a Linux apachedom 2.6.32-25-generic #45-Ubuntu SMP Sat Oct 16 19:52:42 UTC 2010 x86_64 GNU/Linux My gcc version: u...@apachedom:~/apache/install/2_0_44$ gcc -v gcc version 4.4.3 (Ubuntu 4.4.3-4ubuntu5) I downloaded the Apache 2.0.44 version from http://archive.apache.org/dist/httpd/httpd-2.0.44.tar.gz I did not make any changes to the httpd.conf, since I am looking for a really basic install and couldn't find (and am not yet aware of) any changes I might need. After several attempts (and some fixes), I was able to install (configure + make + make install) successfully (without any error messages). My configure statement looked like this: ./configure --prefix=/<path>/apache/install/2_0_44 --enable-ssl But when I try to start using "sudo bin/apachectl start", I get a simple error message "Illegal Instruction" I get a little more information when I try "sudo bin/apachectl status" u...@apachedom:~/apache/install/2_0_44$ sudo bin/apachectl status Looking up localhost Making HTTP connection to localhost Alert!: Unable to connect to remote host. lynx: Can't access startfile http://localhost/server-status Directly starting httpd also gives me the same error: u...@apachedom:~/apache/install/2_0_44$ sudo bin/httpd Illegal instruction No logs are produced in the "logs" directory under the install location. I was wondering if someone could provide me with suggestions, on how I could begin to troubleshoot the issue. In order to ensure that the problem is not because of the SSL module I am enabling, I repeated the Apache install without --enable-ssl option, followed by make and make install. But I see the same "Illegal Instruction" error message. At the end of this email, I have provided a detailed description of the steps I followed to get the Apache install up - issues I faced and solutions that were used to fix this. In case any of this may be relevant to what I am seeing. Thanks! -Selvi *************************** I began my installation with $ sudo aptitude install build-essential $ ./configure --prefix=/<path>/install/2_0_44 --enable-ssl I was getting an OpenSSL error, like this: "checking whether to enable mod_ssl... checking dependencies checking for SSL/TLS toolkit base... /usr checking for SSL/TLS toolkit version... OpenSSL 0.9.8k 25 Mar 2009 checking for SSL/TLS toolkit includes... configure: error: OpenSSL headers not found" So I did this: sudo apt-get install libssl-dev Make ended with this error: "sockopt.c: In function 'apr_socket_opt_set': sockopt.c:241: error: 'SCTP_NODELAY' undeclared (first use in this function) sockopt.c:241: error: (Each undeclared identifier is reported only once" Based on a solution suggested here: http://tech.groups.yahoo.com/group/new-httpd/message/46095 I did this: sudo apt-get install libsctp-dev lksctp-tools Then I saw this error: ssl_engine_pphrase.c:707: error: 'PEM_F_DEF_CALLBACK' undeclared (first use in this function) Based on a solution suggested here: https://bugs.launchpad.net/ubuntu/+source/apache2/+bug/23493 I added these lines to the file modules/ssl/ssl_toolkit_compat.h: #if (OPENSSL_VERSION_NUMBER >= 0x0090800fL) #ifndef PEM_F_DEF_CALLBACK #define PEM_F_DEF_CALLBACK PEM_F_PEM_DEF_CALLBACK #endif #endif After this I repeated configure, make and make install. And it all proceeds without any errors. Next when I tried to start apache, I simply get this u...@apachedom:~/apache/install/2_0_44$ sudo bin/apachectl start Illegal instruction I then tried the status command which game a little more information: u...@apachedom:~/apache/install/2_0_44$ bin/apachectl status bin/apachectl: 87: lynx: not found I then installed lynx like this: u...@apachedom:~/apache/install/2_0_44$ sudo apt-get install lynx Even after lynx was installed, I see a different error message. u...@apachedom:~/apache/install/2_0_44$ sudo bin/apachectl status Looking up localhost Making HTTP connection to localhost Alert!: Unable to connect to remote host. lynx: Can't access startfile http://localhost/server-status To check if I can resolve "localhost" I tried this: u...@apachedom:~/apache/install/2_0_44$ ping localhost PING localhost (127.0.0.1) 56(84) bytes of data. 64 bytes from localhost (127.0.0.1): icmp_seq=1 ttl=64 time=0.026 ms To check if lynx is working I tried to "lynx www.google.com" and am able to view the Google home page. But when I try "lynx localhost" I get "Alert! Unable to connect to remote host"
