martes, 6 de mayo de 2008

PETICION DE CERTIFICADO EN LINUX PARA APACHE

Un certificado es un documento digital que da fe de la vinculacion entre una llave publica y un individuo o entidad. permiten verificar que una clave publica especifica pertenece a un individuo determinado. Los certificados ayudan a prevenir que alguien utilice una clave para hacerse pasar por otra persona.

Para obtener un certificado primero se debe generar un par de claves, se oculta una de las claves (llave privada) y se le enseña la otra al publico (llave publica).conociendo esa clave publica, la autoridad certificadora, luego de identificar a la persona o entidad, emite un certificado de clave publica a su favor.

Puedes encontrar mas informacion del tema en los siguientes enlaces
--como hacer una Peticion de certificado en Windows
--Entidad certificadora en windows 2003 server
--Peticion de un certificado desde un Browser

COMANDOS PARA CREAR LA PETICION DE CERTIFICADO.

openssl es la herramienta con la que podremos crear nuestros certificados digitales.
# apt-get install openssl
# apt-get install apache2
ahora instalamos las librerias de los modulos ssl
# apt-get install libapache2-mod-log-sql-ssl

Para poder crear un CSR primero tenemos que tener una CA (Autoridad Certificadora). Que es la que nos valida y confirma que nuestro certificado es valido.
Ahora procederemos a realizar la peticion de certificado.
# openssl req -new -nodes -out peticion-ana.pem -keyout keypriv.pem
luego enviamos a la entidad certificadora nuestra peticion llamada peticion-ana.pem, la keypriv.pem es nuestra llave privada y esa nunca la enviamos
en nuestro caso la enviamos por ssh.

#scp peticion-ana.pem sena@ip xxxxx:/tmp
luego la entidad nos regresa la peticion ya firmada.

procedemos a crear una pagina web de prueba
# cd /var/www
# pico index.html
y diseñas la pag.

en apache2.conf agregas las siguientes lineas al final.
# ServerName www.ana.com
# DirectoryIndex index.html(esta en prueba la pagina)

ahora procedemos a configurar el siguiente archivo.
# pico /etc/apache2/sites-avaliable/default

procederemos a configurar las lineas principales, las demas que se encuentran estan por defecto en el archivo.


Con estas lineas configuramos nuestro apache para que utilice ssl, recargamos el siguiente modulo y reiniciamos apache2
# a2enmod
# /etc/init.d/apache2 restart o start

con el comando $ netstat -an | less verificamos si el puerto por el que funciona ssl (443) esta corriendo.

verificamos si nuestra pagina corre bajo ssl, en el navegador colocas localhost y ahora tu pagina web debe estar bajo ssl, luego aceptas el certificado como veras en las siguientes imagenes.
ssl

No hay comentarios: