En esta ocasión os traigo como instalar OpenCA sobre CentOS 6.3 para tener vuestra entidad certificadora privada, y digo privada por que de poco os va a servir "en mundo abierto" a no ser que paguéis los cánones estipulados para que tal o tal empresa diga que sois una entidad certificadora de confianza....
En mi caso usare CentOS 6.3 32b sobre una VM (en VirtualBox).
Pasos previos
- Editamos el archivo "/etc/selinux/config" => #nano /etc/selinux/config
- Este archivo es el encargado nativo de la seguridad en este sistema.
- Cambiamos el parámetro "SELINUX=enforcing" por "SELINUX=disable"
- Instalamos unos paquetes (desde la terminal y como superusuario):
- #yum install gcc openssl mysql-server mysql-client4 perl libauthen-sasl-perl libdbd-mysql-perl libberkeleydb-perl wget mod_ssl make
- *Aconsejo comprobar con "dpkg -l nombredelpaquete" para comprobar si está o no instalado.
- Ejecutamos el siguiente comando para que el mysql se inicie automáticamente con el sistema:
- #chkconfig mysqld on
- Nos conectamos al mysql:
- #mysql -u root -p
- Nos preguntará la password del root que introducimos anteriormente en la instalación de mysql.
- Creamos una nueva base de datos:
- mysql> create database openca;
- Damos permisos a la base de datos:
- mysql> grant all privileges on openca.* openca@localhost identified by 'openca';
- Hacemos un "Reload" sobre la tabla de privilegios:
- mysql> flush privileges;
Instalación de OpenCa Tools y su posterior compilado
- Descargamos el paquete de la web de OpenCA y lo descomprimimos y desempaquetamos (en un directorio que no sea "/root" , ya que sino arrastraremos problemas de permisos.
- Movemos la carpeta resultante a "/opt" con la utilidad "mv" (recuerdo que lo estamos haciendo desde la terminal) si tienes dudas de como usarlo escribe en la terminal "man mv".
- Ejecutamos los siguientes comandos dentro de la carpeta del OpenCA "/opt/openca.....":
- #./configure
- #make clean
- #make
- #make install
- Descargamos el paquete de la web de OpenCA y lo descomprimimos y desempaquetamos (en un directorio que no sea "/root" , ya que sino arrastraremos problemas de permisos.
- Movemos la carpeta resultante a "/opt" con la utilidad "mv" (recuerdo que lo estamos haciendo desde la terminal) si tienes dudas de como usarlo escribe en la terminal "man mv".
- Creamos el script dentro de la carpeta:
- #nano script.sh
./configure --prefix=/opt/openca-base-1.1.1 \
--with-ca-organization="Nombre de tu organizacion" \
--with-httpd-fs-prefix=/var/www/ \
--with-httpd-main-dir=pki \
--with-db-name=openca \
--with-db-host=localhost \
--with-db-user=openca \
--with-db-passwd=openca \
--with-db-type=mysql \
--with-db-port=3306 \
--with-service-mail-account="tuemail@gmail.com"
- Ejecutamos los siguientes comandos dentro de la carpeta:
- #make
- #make clean
- #make install-offline
- #make install-online
- Creamos un enlace simbólico para que el servicio se arranque automáticamente:
- #ln -s /opt/openca-base-1.1.1/etc/init.d/openca /etc/init.d/openca
- Descargamos los siguientes fixes:
- #wget http://ftp.openca.org/openca-base/fixes/v1.1.1/err_user_unknown/User.pm
- #wget http://ftp.openca.org/openca-base/fixes/v1.1.1/err_user_unknown/initServer
- #mv User.pm lib/openca/perl_modules/perl5/OpenCA/User.pm
- #mv initServer lib/openca/functions/initServer
- #/etc/init.d/httpd start
- #/etc/init.d/openca restart
Generamos la clave de privacidad publica:
- #openssl genrsa -des3 -out clave.key
Peticion del certificado:
- #openssl req -new -key clave.key -out peticion.csr
- #openssl x509 -req -days 365 -sha256 -in peticion.csr -signkey clave.key -out certificado.crt
- #mv certificado.crt peticion.csr clave.key /etc/httpd
Directorio contenedora de la web
- #ls /var/www/
- cgi-bin html error icons
Accedemos desde el navegador a "https://localhost/pki/ca"
- Login: "admin"/password que pusiste
Podrias, enviarme los archivos fixes(User.pm y InitServer), no los encuentro en ninguna pagina
ResponderEliminarAlguien tiene los archivos User.ini y initServer no los encuentro en ningun lado.
ResponderEliminarGracias
Hi, http://ftp.openca.org/openca-base/fixes/v1.1.1/err_user_unknown/User.pm and
ResponderEliminarhttp://ftp.openca.org/openca-base/fixes/v1.1.1/err_user_unknown/initServer are die
You can share me a link you or a way to fix it
Thanks you very much.I install openca on centos 5.5 but I has a error
OpenCA Error: Server is not online or does not accept requests (/opt/openca/var/openca/tmp/openca_socket - /opt/openca/var/openca/tmp/openca_socket). 0
Can you help me?What your mail which I contact.
Dear Phuong,
ResponderEliminarI have error same you. I don't know to fix them how. If you have solution with it, please share to help me!
My email: nguyendokhanh@gmail.com
Thanks
KhanhND
Hello I have same error as you. Did you finally get it? my mail: magasuan1@gmail.com
ResponderEliminar