Inicio > Linux > Crear en SuSE nuestro propio CERTIFICADO SSL

Crear en SuSE nuestro propio CERTIFICADO SSL

Visitado: 21 veces.
Viernes, 2 de noviembre de 2007 Dejar un comentario Ir a comentarios

Crear en SuSE nuestro propio CERTIFICADO SSL Certificado SSL para Apache2.

Cómo crear nuestro propio CERTIFICADO SSL firmado por nosotros.

Lo primero que necesitamos es tener instalado el paquete OpenSSL. Si no lo tenemos instalado, lo podemos instalar sin complicaciones con YaST.

Luego desde consola tecleamos lo siguiente:

#cd /etc/apache2
#rm ssl.key/server.key (borra anterior server.key)
#rm ssl.crt/server.crt (borra anterior server.crt)

Creamos la clave del servidor

#/usr/bin/openssl genrsa -des3 -rand /etc/services:/etc/passwd -out server.key 1024

-> ahora nos pide password phrase

Enter PEM pass phrase: MiContraSeña

#/usr/bin/openssl rsa -in server.key -out server.pem

-> nos sirver para que no nos pida el password.

Creamos el certificado

#/usr/bin/openssl req -new -key server.pem -out server.csr

—-> Después de esto nos saldrá un formulario que deberemos cumplimentar. Pongo algún dato de ejemplo, debiendo poner los tuyos.

Country Name : ES
Población
Provincia
Tronk.Net Tu Portal Útil
Tronk.Net
ssl.tronk.net
admin@tronk.net
intro <-|
intro <-|

Firmamos el certificado

#/usr/bin/openssl x509 -req -days 365 -in server.csr -signkey server.pem -out server.crt

el 365 seria el tiempo de duración en días de duración de nuestro certificado y equivale a 1 año.

Un certificado sirve para una sola IP, y una IP solo puede tener un certificado. Es decir, que si tenemos dos dominios que apuntan a una misma IP y creamos un certificado para cada dominio, no nos sirve. Solo valdría el primer certificado. El segundo se ignoraría. Para tener un certificado en cada dominio, deben apuntar a IP's diferentes.

Copiamos los ficheros al directorio correspondiente

#cp server.crt /etc/apache2/ssl.crt/

#cp server.key /etc/apache2/ssl.key/

#cp server.pem /etc/apache2/ssl.key/

Una vez hecho esto tenemos que añadir unas líneas en 2 ficheros de configuración de nuestro Apache2.

Entramos en : /etc/apache2/listen.conf

Y añadimos esta línea : NameVirtualHost _default_:80

Donde_default_ puede ser, bien un nombre de host : ejemplo.com o bien tu ip si es que la tienes fija.

 

Luego añadimos o descomentamos las siguientes líneas : /etc/apache2/vhosts.d/vhost-ssl.conf

<VirtualHost _default_:443>
    # General setup for the virtual host
    DocumentRoot "/srv/www/htdocs"
    ServerName new.ejemplo.com:443
    ServerAdmin webmaster@ejemplo.com
    ErrorLog /var/log/apache2/error_log
    TransferLog /var/log/apache2/access_log

 

*** Y reiniciar el servidor apache

#/usr/sbin/apache2ctl stop

#/usr/sbin/apache2ctl startssl

Entramos en el servidor mediante un navegador web, pero esta vez no usaremos http, sino https. Con una 's' al final. Por ejemplo: https://ssl.tronk.net

Si todo ha ido bien nos informará de que el certificado ha fallado. Esto es normal, ya que lo hemos firmado nosotros mismos y no una autoridad certificadora. Aceptamos el certificado y nos fijamos en la parte inferior del navegador. Deberíamos ver un candado. Si pinchamos en él podremos ver la información del certificado.

Recordar después mapear el puerto 443, que usamos para la conexión SSL, en vuestro router y permitir el acceso desde el exterior configurando vuestro firewall/cortafuegos.

Categories: Linux Tags:
  1. Sin comentarios aún.
  1. Sin trackbacks aún.
Debes estar registrado para dejar un comentario.