Buenas a todos , esta será mi primera aportación a esta comunidad . Este es uno de los temas que se tratan en los cursos de preparación para el LPI .
En este tutorial se va a compilar Apache con soporte SSL, PHP, MySQL.
Tendrá una segunda parte que será la creación de los paquete RPM de los programas compilados por nosotros mismos y una tercera para hacer los mismos con .DEB. Vamos con la primera parte .
Compilamos todo dentro del directorio /opt , crearemos cuatro carpetas dentro por ejemplo :
mkdir -p ssl apache2 php5 ssh
Vamos a empezar primero por el OpenSSL .
cd /opt/ssl
Descargamos la última vesión a dia de hoy que es http://www.openssl.org/source/openssl-1.0.0e.tar.gz y descomprimimos.
unp openssl-1.0.0e.tar.gz ( unp descomprime todo o casi ) . cd openssl-1.0.0e ./config --prefix=/opt/ssl --shared && make && make install cd ../../apache2
Podemos usar make test después de make para ver que todo va bien .
Seguimos con la última versión de apache , y descargamos wget http://apache.rediris.es//httpd/httpd-2.2.20.tar.gz , el mismo proceso para descomprimir y para compilar fijaros bien en los modificares que estoy usando .
unp httpd-2.2.20.tar.gz cd httpd-2.2.20 ./configure --prefix=/opt/apache2 --enable-ssl --with-ssl=/opt/ssl/ --enable-so make make install cd ../../php5
Seguimos con el PHP5 descargo desde aquí http://www.php.net/get/php-5.3.8.tar.gz/from/a/mirror la última versión descomprimo y a compilar :
unp php-5.3.8.tar.gz cd php-5.3.8 ./configure --prefix=/opt/php5 --with-openssl-dir=/opt/ssl --with-apxs2=/opt/apache2/bin/apxs --with-mysql --with-libdir=lib64 --with-gd --with-jpeg-dir=/usr/lib64/ --enable-zip --with-curl --with-mysqli=/usr/bin/mysql_config --with-config-file-path=/opt/php5/ make test ( opcional ) make && make install cd ../../ssh
Me han saltado algunos errores haciendo el ./configure y he tenido que instalar algunos paquetes de desarrollo que me faltaban :
libcurl4-gnutls-dev libxml2-devel libpng++-dev
EL siguente el Openssh descargo desde wget http://mirror.cdmon.com/pub/OpenBSD/OpenSSH/portable/openssh-5.9p1.tar.gz y el mismo proceso para descomprirmir y compilar .
cd openssh-5.9p1 ./configure --prefix=/opt/ssh/ --with-ssl-dir=/opt/ssl/ --with-md5-passwords make && make install
Ahora toca comprobar que todo funciona bien .
Primero copiar el fichero de configuración :
cd /opt/php5/php-5.3.8/php.ini-development cp php.ini-development /opt/php5/php.ini
Antes de arrancar el apache comentamos esta linea en el archivo de configuración ( httpd.conf) .
#LoadModule ssl_module modules/mod_ssl.so
cd /opt/apache2/bin/ ./apachectl start
Creamos un fichero info.php dentro de /opt/apacha2/htdocs con este codigo .
<?php phpinfo();
phpinfo(INFO_MODULES);
?>
Y si aparece una pantalla como esta el php esta funcionando sobre el apache que hemos compilado .
Ahora hay que comprar si funciona el SSL , editamos el fichero /ept/apache2/conf/htttp.conf y descomentamos las líneas :
<IfModule ssl_module> SSLRandomSeed startup builtin SSLRandomSeed connect builtin </IfModule>
Y añadimos esta : Include conf/httpd-ssl.conf
Antes de continuar tenemos que crear el certificado SSL aqui hay una entrada donde lo explica : http://www.habitacion511.eu/index.php/crear-certificado-ssl-para-apache/
Luego editamos el archivo /opt/apache2/conf/extra/httpd-ssl.conf y hay que descomentar y modifcar las rutas y los nombres de donde tengamos nuestros certificados creados .
SSLEngine on
DocumentRoot "/opt/apache2/htdocs" ServerName 192.168.1.90:443 ServerAdmin you@example.com ErrorLog "/opt/apache2/logs/error_log" TransferLog "/opt/apache2/logs/access_log"
SSLCertificateFile SSLCertificateKeyFile "/opt/apache2/conf/cert.key" SSLCertificateKeyFile "/opt/apache2/conf/cert.key" SSLCACertificatePath "/opt/apache2/conf/" SSLCACertificateFile "/opt/apache2/conf/cert.crt"
Comprobamos si funciona :
Hasta aqui todo. Y si veis algo que no esta bien pues corregidme :)) .
En la proxima entrada : Creación de paquetes RPM de lo que se ha compilado .
Fuente : http://www.habitacion511.eu/index.php/compilar-apache-con-soporte-ssl-php-mysql/
Un saludo.
Por b4d
Fuente: Compilar Apache con soporte SSL, PHP, MySQL.


Comentarios