Linux counter

Cisco User Group

Accessi

TodayToday457
YeserdayYeserday565
This WeekThis Week4107
This MonthThis Month13755
All DaysAll Days520425
38.107.179.219
Guests 7
Registered Users 1
Registered Today 0

Mappa visitatori

Installazione di OpenCA su Debian PDF Stampa E-mail
(0 - user rating)
Scritto da Alessandro Pensato   
Venerdì 31 Dicembre 2010 18:03

Dopo le svariate prove d’installazione effettuate, seguendo varie guide trovate in rete, da un paio di queste sono riuscito a farne una che come risultato finale portasse ad una installazione valida.

Tutte le prove sono state condotte su una macchina VMware con la distribuzione Debian 4r0 scaricabile da questo link

I repository dei pacchetti che ho usato sono quelli disponibili nella distribuzione. Occorre effettuare un aggiornamento degli stessi prima di cominciare con l’installazione dei pacchetti necessari, utilizzando il comando apt-get update.
Dato che alcuni software saranno compilati da sorgenti, dobbiamo predisporre il sistema con i pacchetti adeguati:

apt-get install g++ gcc make libssl-dev ncftp ftp unzip bzip2 zip nmap ssh

OpenCA richiede come prerequisiti alcuni pacchetti perl, necessari per il suo funzionamento:

apt-get install libwww-perl libxml-perl libxml-regexp-perl libdbi-perl \
perl perl-modules libldap2 libldap2-dev libdbd-mysql-perl \
libauthen-sasl-perl libx500-dn-perl libcgi-session-perl \
libconvert-asn1-perl libdigest-md2-perl libdigest-md4-perl \
libdigest-sha1-perl libio-socket-ssl-perl libio-stringy-perl \
libmime-lite-perl libmime-perl libmailtools-perl libnet-server-perl \
liburi-perl libxml-twig-perl libintl-perl libnet-ldap-perl \
libdigest-hmac-perl libgssapi-perl dbishell libintl-xs-perl \
libxml-sax-perl libcompress-zlib-perl libunicode-map8-perl \
libunicode-string-perl libterm-readline-gnu-perl \
libterm-readline-perl-perl libhtml-format-perl libtie-ixhash-perl \
libxml-xpath-perl perl-doc

Dato che la gestione/configurazione/richiesta dei certificati avverrà tramite interfaccia web, occorre installare anche un webserver (Apache) e per sicurezza dei dati scambiati, abiliteremo il protocollo SSL. Per comodità mia ho aggiunto anche il modulo php5, che non è comunque necessario al funzionamento di OpenCA.

apt-get install libapache-mod-perl libapache-mod-ssl libapache-mod-php5 \
php5-mysql php5-gd php-pear xml-core libft-perl php5-dev libgd-tools

Dobbiamo installare e configurare Apache in maniera tale da usare i moduli citati prima.

apt-get install apache
dpkg-reconfigure apache (Selezioniamo i moduli mod_ssl, mod_perl, mod_php5)

Per la registrazione delle informazioni personali e dei certificati, ci appoggiamo ad un db MySQL.

apt-get install mysql-server

Adesso possiamo procedere con l’installazione di OpenCA, che avverrà tramite i suoi sorgenti, Pertanto occorre scaricarli ed estrarli. Per comodità saranno creati due file eseguibili per automatizzare le procedure di installazione.

cd /tmp
wget https://www.openca.org/alby/download?target=openca-0.9.3-rc1.tar.gz --no-check-certificate
tar xvfz openca-0.9.3-rc1.tar.gz
cd openca-0.9.3-rc1
touch config_ra
touch config_ca
chmod 755 config_ra
chmod 755 config_ca

Creiamo il primo file per automatizzare l’installazione.

nano config_ra

e, all’interno di esso, inseriamo:

#!/bin/sh
./configure --prefix=/usr/local/openca --with-web-host=localhost \
--with-httpd-user=www-data --with-httpd-group=www-data \
--with-ext-prefix=/usr/local/openca.0.9.3 --with-htdocs-fs-prefix=/var/www/ \
--with-cgi-fs-prefix=/usr/lib/cgi-bin --with-ca-organization=TEST \
--with-ca-locality=Palermo --with-ca-country=IT \
--with-module-prefix=/usr/local/openca/modules --enable-dbi --disable-db \
--disable-rbac --with-hierarchy-level=ra \
--with-service-email-account= Questo indirizzo e-mail è protetto dallo spam bot. Abilita Javascript per vederlo. \
--with-db-type=mysql --with-db-name=openca --with-db-port=3306 \
--with-db-user=openca --with-db-passwd=openca
make
make install-ra
make install-pub
make install-node

Ora possiamo eseguirlo.

./config_ra

Creiamo il secondo file per automatizzare l’installazione.

nano config_ca

con all’interno:

#!/bin/sh
./configure --prefix=/usr/local/openca --with-web-host=localhost \
--with-httpd-user=www-data --with-httpd-group=www-data \
--with-ext-prefix=/usr/local/openca.0.9.3 --with-htdocs-fs-prefix=/var/www/ \
--with-cgi-fs-prefix=/usr/lib/cgi-bin --with-ca-organization=TEST \
--with-ca-locality=Palermo --with-ca-country=IT \
--with-module-prefix=/usr/local/openca/modules --enable-dbi --disable-db \
--disable-rbac --with-hierarchy-level=ca \
--with-service-email-account= Questo indirizzo e-mail è protetto dallo spam bot. Abilita Javascript per vederlo. \
--with-db-type=mysql --with-db-name=openca --with-db-host=localhost \
--with-db-port=3306 --with-db-user=openca --with-db-passwd=openca
make
make install-ca
make install-node

Eseguiamo anche questo:

./config_ca

Come detto in precedenza, useremo MySQL per memorizzare i dati personali e dei certificati, quindi occorre creare i database.

mysql -uroot -p
create database openca;
create database openra;
grant all privileges on openca.* to openca@localhost identified by 'openca';
grant all privileges on openra.* to openra@localhost identified by 'openra';
exit;

Modifichiamo il file di configurazione di OpenCA. I relativi campi devono essere come i seguenti.

nano /usr/local/openca/OpenCA/etc/config.xml
ca_organization TEST
ca_locality Palermo
ca_country IT
service_mail_account Questo indirizzo e-mail è protetto dallo spam bot. Abilita Javascript per vederlo.
httpd_host localhost
httpd_port :443
dbmodule DBI
db_type mysql
db_name openca
db_host localhost
db_port 3306
db_user openca
db_passwd openca

Finaliziamo la configurazione di OpenCA e predisponiamo il sistema alla sua esecuzione ad ogni boot.

cd /usr/local/openca/OpenCA/etc/
./configure_etc.sh
cp /usr/local/openca/OpenCA/etc/openca_rc /etc/init.d/
cd /etc/init.d/
update-rc.d openca_rc defaults
./openca_rc start

Configuriamo Apache per utilizzare i certificato SSL e riavviamolo

mkdir /etc/apache/ssl
cd /etc/apache/ssl
openssl req -x509 -newkey rsa:2048 -keyout cakey.pem -days 3650 -out cacert.pem -nodes
nano /etc/apache/httpd.conf
Port 443
SSLEngine On
SSLOptions +StdEnvVars
SSLCertificateFile /etc/apache/ssl/cacert.pem
SSLCertificateKeyFile /etc/apache/ssl/cakey.pem
/etc/init.d/apache stop
/etc/init.d/apache start
rm /var/www/index.html

Adesso possiamo accedere all’inidizizzo https://localhost/ca per inizializzare la nostra CA. I dati per il login sono:

  • username: root
  • password: root

icon Installazione di OpenCA su Debian

 

Aggiungi commento


Codice di sicurezza
Aggiorna