Setup Certification Authority dengan EJBCA,OCSP,JBOSS,Java,OpenLDAP

Jika diminta membuat Public Key Infrastruktur(PKI) maka saya akan pakai EJBCA(Enterprise Java Bean Certificate Authority) sebagai alternatif pertama dan Dog Tag sebagai alternatif kedua, karena berbasis open sources dapat digunakan pada sistem operasi Linux.  PKI yang berbasis Windows seperti PKI Windows 2003 Server, juga memiliki kelebihan, tapi masih lebih unggul EJBCA karena EJBCA memiliki kelebihan di sisi multiplatform operating system, aspek kriptografis maupun administrasi.

Kali ini tutorial pada salah satu mesin produksi menggunakan EJBCA pada Linux Debian. Adapun requirement yang dibutuhkan dalam instalasi ini adalah :

-Linux Debian 5.0.4
EJBCA 3.9.6, CA dan OCSP deploy.
JBOSS 5.1.0
Java jdk 6 update 19
JCE Unlimited Strength Jurisdiction Policy Files 6
-Apache Ant 1.7.0
-OpenLDAP: slapd 2.4.11

Instalasi dan Konfigurasi :

Linux Debian 5.0.4 dengan kode Lenny sudah terinstall dengan standart system. EJBCA,JBOSS,JAVA JDK,JCE harus didownload dari situs nya dan diinstall manual di Debian, Untuk Ant,OpenLDAP menggunakan apt-get.

svr:/home/gtoms# wget  http://cds.sun.com/is-bin/INTERSHOP.enfinity/WFS/CDS-CDS_Developer-Site/en_US/-/USD/VerifyItem-Start/jdk-6u19-linux-i586.bin?BundledLineItemUUID=0AdIBe.liu0AAAEnpPtoLfW6&OrderID=kExIBe.lavIAAAEnmftoLfW6&ProductID=8ihIBe.nLjEAAAEnh3cZVnKo&FileName=/jdk-6u19-linux-i586.bin

svr:/home/gtoms# sh jdk-6u19-linux-i586.bin

svr:/home/gtoms# nano /root/.bashrc
export JAVA_HOME=/home/gtoms/jdk1.6.0_19
export PATH=$PATH:$JAVA_HOME/bin

exit dan login lagi :

svr:/home/gtoms# java -version
java version “1.6.0_19”
Java(TM) SE Runtime Environment (build 1.6.0_19-b04)
Java HotSpot(TM) Server VM (build 16.2-b04, mixed mode)

svr:/home/gtoms# apt-get install ant

svr:/home/gtoms# ant -version
Apache Ant version 1.7.0 compiled on April 29 2008

svr:/home/gtoms# wget  http://sourceforge.net/projects/jboss/files/JBoss/JBoss-5.1.0.GA/jboss-5.1.0.GA.zip/download

svr:/home/gtoms# unzip jboss-5.1.0.GA.zip

– pindahkan folder /home/gtoms/jboss-5.1.0.GA  ke  /jboss

svr:/home/gtoms# nano /root/.bashrc

export JBOSS_HOME=/jboss
export PATH=$PATH:$JBOSS_HOME/bin

export APPSRV_HOME=/jboss
export PATH=$PATH:$APPSRV_HOME/bin

svr:/home/gtoms# chmod -R 754 /jboss/bin

svr:/home/gtoms# wget  ftp://ftp.pku.edu.cn/open/binary/java/other/jce_policy-6.zip

svr:/home/gtoms# unzip jce_policy-6.zip

svr:/home/gtoms# cd  /home/gtoms/jdk1.6.0_19/jre/lib/security/

cp local_policy.jar local_policy.jar.dist
cp US_export_policy.jar US_export_policy.jar.dist

pindahkan file local_policy.jar dan US_export_policy.jar dari  /home/gtoms/jce_policy-6  ke /home/gtoms/jdk1.6.0_19/jre/lib/security/

svr:/home/gtoms# wget  http://sourceforge.net/projects/ejbca/files/ejbca3/ejbca_3_9_6/ejbca_3_9_6.zip/download

– unzip ejbca_3_9_6.zip

– pindahkan folder /home/gtoms/ejbca_3_9_6 ke  /ejbca

cp catoken.properties.sample catoken.properties
cp cmp.properties.sample cmp.properties
cp custom.properties.sample custom.properties
cp database.properties.sample database.properties
cp ejbca.properties.sample ejbca.properties
cp externalra.properties.sample externalra.properties
cp jaxws.properties.sample jaxws.properties
cp log4j.properties.sample log4j.properties
cp log.properties.sample log.properties
cp mail.properties.sample mail.properties
cp ocsp.properties.sample ocsp.properties
cp protection.properties.sample protection.properties
cp web.properties.sample web.properties
cp xkms.properties.sample xkms.properties

#nano /root/.bashrc

export JAVA_HOME=/home/gtoms/jdk1.6.0_19
export PATH=$PATH:$JAVA_HOME/bin

export ANT_HOME=/usr/share/ant
export PATH=$PATH:$ANT_HOME/bin

export JBOSS_HOME=/jboss
export PATH=$PATH:$JBOSS_HOME/bin

export APPSRV_HOME=/jboss
export PATH=$PATH:$APPSRV_HOME/bin

Setup EJBCA :

svr:/ejbca# ant bootstrap
svr:/jboss# bin/run.sh -b 0.0.0.0
svr:/ejbca# ant install
stop jboss
svr:/ejbca# ant deploy
start jboss

EJBCA : https://localhost:8443/ejbca/

JBOSS : https://localhost:8443/

OpenLDAP :

svr:/home/gtoms# apt-get install slapd ldap-utils libdb4.6 libldap-2.4-2
svr:/home/gtoms# nano /etc/ldap/slapd.conf
database        hdb
suffix          “dc=gultom,dc=or,dc=id”

https://localhost:8443/ejbca/adminweb/index.jsp

EJBCA Adminweb select Edit Publishers :

-Publisher Type: Instructs EJBCA to use either LDAP V3 Publisher, LDAP V3 Search Publisher and Custom Publisher
-Hostname: IP address or DNS name of the host residing the Directory Service
-Port: The port the Directory Server listens to.
-Use SSL: Check this box to use SSL to connect to the Publisher
-Base DN: Appended to location fields to form an LDAP DN. Write on form: dc=example, dc=com
-Login DN: DN describing a user with administrator rights on the Publishers. Write on form: cn=admin, dc=example, dc=com
-Login Password: The admin users password
-Confirm Password: You need to confirm the password

Input :

Publisher Type : LDAP V3 Publisher
Hostname : 192.168.1.1
Port : 389
Base DN : dc=gultom, dc=or, dc=id
Login Password :
Confirm Password :
LDAP location fields from cert DN
DC, O, ST and C fields should be defined in BaseDN : DC,Domain Component

Save and Test Conection. Jika muncul Connection Tested Successfully berarti EJBCA Publisher ke LDAP sudah terkoneksi.

Ada 2 interface yang perlu dikuasai dalam mengadminister Certification Authority yaitu EJBCA Adminweb dan EJBCA Userweb. Dengan ini kita dapat mengatur rootCA, subCA,OCSP,Registration Authority,End Entity.  Dan tentunya menerbitkan dan menonaktifkan certificate untuk router,server,smartcard.

Berlanjut, Seting OCSP External,penggunaan CA pada user-user LDAP.

4 thoughts on “Setup Certification Authority dengan EJBCA,OCSP,JBOSS,Java,OpenLDAP

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.