<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>LUNA HSM - GoBlog</title>
	<atom:link href="https://blog.goreinnamah.com/blog/tag/luna-hsm/feed/" rel="self" type="application/rss+xml" />
	<link>https://blog.goreinnamah.com</link>
	<description>LOG ALL LOGS</description>
	<lastBuildDate>Wed, 05 Jan 2022 04:28:39 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://blog.goreinnamah.com/wp-content/uploads/2017/01/cropped-1-150x150.jpg</url>
	<title>LUNA HSM - GoBlog</title>
	<link>https://blog.goreinnamah.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Cara Melakukan Restore Backup HSM Luna Network</title>
		<link>https://blog.goreinnamah.com/blog/2021/11/30/restore-backup-hsm-luna-network/</link>
		
		<dc:creator><![CDATA[Darius Go Reinnamah]]></dc:creator>
		<pubDate>Tue, 30 Nov 2021 09:48:44 +0000</pubDate>
				<category><![CDATA[Information Technology]]></category>
		<category><![CDATA[Backup HSM]]></category>
		<category><![CDATA[HSM backup]]></category>
		<category><![CDATA[LUNA HSM]]></category>
		<category><![CDATA[Luna HSM backup]]></category>
		<guid isPermaLink="false">https://blog.goreinnamah.com/?p=5498</guid>

					<description><![CDATA[<p>Setelah melakukan backup, entah itu segera atau nanti, tentunya kalian akan melakukan restore backup dari hasil backup yang kalian lakukan (cara melakukan[...]</p>
<p>The post <a href="https://blog.goreinnamah.com/blog/2021/11/30/restore-backup-hsm-luna-network/">Cara Melakukan Restore Backup HSM Luna Network</a> first appeared on <a href="https://blog.goreinnamah.com">GoBlog</a>.</p>]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">Setelah melakukan <em>backup,</em> entah itu segera atau nanti, tentunya kalian akan melakukan <em>restore backup </em>dari hasil <em>backup</em> yang kalian lakukan (cara melakukan <em>backup</em> HSM bisa dibaca <a href="https://blog.goreinnamah.com/blog/2021/10/29/backup-hsm-luna-network/"><strong>DI SINI</strong></a>). Alasan melakukan <em>restore-</em>pun bisa bermacam-macam. Mungkin saja data di-<em>production </em>terhapus secara tidak sengaja, bencana alam, <em>hardware </em>mati, atau banyak lagi.</p>
<p style="text-align: justify;">Karena pada tulisan sebelumnya saya sudah memberitahu cara melakukan <em>Backup</em> HSM Luna Network, maka pada kesempatan kali ini saya akan memberitahu bagaimana cara melakukan <em>restore-</em>nya. Langsung saja ya!</p>
<p style="text-align: justify;"><strong>Alat dan Bahan</strong></p>
<ol style="text-align: justify;">
<li>PC untuk melakukan backup dengan minimal 2 USB Port)</li>
<li>HSM Backup G5 yang sudah berisi <em>backup-</em>an</li>
<li>HSM Luna Network yang akan di<em>-restore</em></li>
<li>1 token orange, 1 token hitam (CO), dan 1 token merah (domain) milik HSM Luna Network.</li>
<li>1 token biru (admin) dan 1 token orange milik HSM Backup</li>
</ol>
<h3 style="text-align: justify;"><strong>Catatan</strong></h3>
<ul style="text-align: justify;">
<li>Token merah (domain) yang digunakan untuk backup dan restore haruslah token yang sama. Jadi saat inisialisasi di HSM yang ada di DRC misalnya, pastikan kalian meng-<em>copy</em> domainnya. Kalau tidak sama, proses restore tidak akan bisa dilakukan.</li>
<li>Token orange digunakan untuk melakukan remote terhadap ped, sehingga PED tidak harus tercolok ke HSM. Untuk token <em>orange</em> ini, kalian bisa menggunakan token yang sama (<em>copy) </em>baik disisi HSM maupun HSM Backup.</li>
<li>Banyaknya M of N untuk setiap token saya serahkan kepada kalian. Dalam contoh kali ini, saya hanya akan menggunakan 1 token untuk setiap aktornya.</li>
<li>Token hitam (CO) ini bisa juga berupa password. jadi untuk kalian yang sudah mengganti peran token hitam menjadi <em>password</em>, kalian tidak memerlukan token hitam ini.</li>
</ul>
<h3 style="text-align: justify;"><strong>Membuat Partisi di HSM Restore</strong></h3>
<p style="text-align: justify;">Sebelum bisa di-<em>restore, </em>di dalam HSM harus dibuat dulu partisinya dan partisi tersebut harus diinisalisasi. Caranya:</p>
<ol style="text-align: justify;">
<li>Untuk membuat partisi, ssh ke dalam HSM dan login sebagai HSM SO Admin dengan perintah:
<pre><span style="color: #ff0000;"><strong>hsm login</strong></span></pre>
<p>Kalian akan diminta memasukkan token biru SO Admin untuk bisa login. Pastikan kalian memasukkan PIN-nya dengan tepat</li>
<li>Usai login, buat sebuah partisi dengan perintah:
<pre><strong><span style="color: #ff0000;">partition create -partition</span> &lt;nama_partisi&gt;</strong></pre>
</li>
</ol>
<h3 style="text-align: justify;"><strong>Tahapan Restore</strong></h3>
<figure id="attachment_5456" class="wp-caption alignnone" style="text-align: justify;" aria-describedby="caption-attachment-5456"><img fetchpriority="high" decoding="async" class="size-full wp-image-5456" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1.png" sizes="(max-width: 3128px) 100vw, 3128px" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1.png 3128w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1-300x105.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1-1024x357.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1-768x268.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1-1536x535.png 1536w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1-2048x714.png 2048w" alt="" width="3128" height="1090" /><figcaption id="caption-attachment-5456" class="wp-caption-text">Metode Restore HSM Luna</figcaption></figure>
<p style="text-align: justify;">Sebagai catatan, ada 2 metode <em>restore</em> yang bisa dilakukan, yaitu dengan mencolokkan Luna PED ke HSM langsung dan mencolokkan Luna PED ke PC yang akan digunakan untuk melakukan <em>restore. </em>Metode yang saya gunakan disini adalah yang mencolokkan Luna PED ke PC yang saya gunakan untuk <em>restore.</em></p>
<ol style="text-align: justify;">
<li>Nyalakan Backup HSM <a href="https://thalesdocs.com/gphsm/luna/7.4/docs/pci/Content/administration/backup_restore/g5/about_g5.htm"><strong>G5</strong> </a>dan colokkan via USB ke PC yang kalian gunakan untuk melakukan <em>restore.</em></li>
<li>Colokkan juga Luna PED via USB ke PC tersebut.</li>
<li>Pada PC yang kalian gunakan, buka CMD sebagai Administrator, masuk ke dalam direktori LunaClient dan jalankan perintah:
<pre><span style="color: #ff0000;"><strong>pedserver -m start</strong></span></pre>
<figure id="attachment_5461" class="wp-caption alignnone" aria-describedby="caption-attachment-5461"><img decoding="async" class="size-full wp-image-5461" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/3-1.png" sizes="(max-width: 811px) 100vw, 811px" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/3-1.png 811w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/3-1-300x49.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/3-1-768x126.png 768w" alt="" width="811" height="133" /><figcaption id="caption-attachment-5461" class="wp-caption-text">Menghubungkan PED dengan PC</figcaption></figure>
<p>perintah ini adalah untuk menghubungkan Luna PED via PC dan pastikan tidak ada <em>error </em>pada saat mengeksekusi perintah tersebut</li>
<li>Untuk melihat statusnya, apakah sudah benar terhubung antara Luna PED dengan PC, pada direktori LunaClient, jalankan perintah:
<pre><span style="color: #ff0000;"><strong>pedserver mode show</strong></span></pre>
<figure id="attachment_5462" class="wp-caption alignnone" aria-describedby="caption-attachment-5462"><img decoding="async" class="size-full wp-image-5462" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/4-1.jpg" sizes="(max-width: 805px) 100vw, 805px" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/4-1.jpg 805w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/4-1-300x167.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/4-1-768x427.jpg 768w" alt="" width="805" height="448" /><figcaption id="caption-attachment-5462" class="wp-caption-text">connection status: connected</figcaption></figure>
</li>
<li>Berikutnya, masih di PC yang digunakan untuk <em>restore</em><em>, </em>buka lunacm dan hubungkan PC yang kalian gunakan dengan HSM. Perintahnya:
<pre><span style="color: #ff0000;"><strong>ccfg dp -client <span style="color: #000000;">&lt;IP_PC&gt;</span> -server <span style="color: #000000;">&lt;IP_HSM&gt;</span> -par <span style="color: #000000;">&lt;Partisi_pada_HSM&gt;</span></strong></span></pre>
<figure id="attachment_5458" class="wp-caption alignnone" aria-describedby="caption-attachment-5458"><img loading="lazy" decoding="async" class="size-full wp-image-5458" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/1.png" sizes="auto, (max-width: 1000px) 100vw, 1000px" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/1.png 1000w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/1-300x78.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/1-768x199.png 768w" alt="" width="1000" height="259" /><figcaption id="caption-attachment-5458" class="wp-caption-text">Menghubungkan PC dengan HSM</figcaption></figure>
</li>
<li>Keluar dari lunacm dan masuk kembali. Dalam tampilan Lunacm kali ini, seharusnya sudah ada 2 slot: slot 1 milik HSM yang mau <em>di-restore (yang</em> selanjutnya akan disebut slot X) dan slot 2 milik HSM Backup G5 (yang selanjutnya akan disebut dengan slot Y).<br />
<figure id="attachment_5459" class="wp-caption alignnone" aria-describedby="caption-attachment-5459"><figcaption id="caption-attachment-5459" class="wp-caption-text">
<figure id="attachment_5518" aria-describedby="caption-attachment-5518" style="width: 800px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-5518" src="https://blog.goreinnamah.com/wp-content/uploads/2021/11/seria1.jpg" alt="" width="800" height="306" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/11/seria1.jpg 800w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/seria1-300x115.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/seria1-768x294.jpg 768w" sizes="auto, (max-width: 800px) 100vw, 800px" /><figcaption id="caption-attachment-5518" class="wp-caption-text">Atas: slot HSM (slot X) Bawah: slot HSM Backup G5 (slot Y)</figcaption></figure>
</figcaption></figure>
</li>
<li>Untuk melihat informasi dari HSM Backup, pada Lunacm, jalankan perintah:
<pre><span style="color: #ff0000;"><strong>par ar list -slot &lt;slot_Y&gt;</strong></span></pre>
<figure id="attachment_5464" class="wp-caption alignnone" aria-describedby="caption-attachment-5464"><img loading="lazy" decoding="async" class="size-full wp-image-5464" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/5-1.jpg" sizes="auto, (max-width: 938px) 100vw, 938px" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/5-1.jpg 938w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/5-1-300x176.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/5-1-768x451.jpg 768w" alt="" width="938" height="551" /><figcaption id="caption-attachment-5464" class="wp-caption-text">Informasi HSM backup</figcaption></figure>
<p>Dari info di atas, kalian dapat melihat berapa total storage dari HSM backup, ada berapa slot yang tersedia, dan sudah ada berapa partisi yang terbuat untuk menampung hasil <em>backup.</em></li>
<li>Sebelum melakukan <em>restore, </em>kalian harus terlebih dahulu menginisiasi partisi pada HSM Restore yang kalian buat. Masih di lunacm, jalankan perintah:
<pre><strong><span style="color: #ff0000;">slot set -slot</span> &lt;slot_x&gt;</strong></pre>
</li>
<li>Hubungkan PED dengan HSM via PC. Di Lunacm, jalankan perintah:
<pre><strong><span style="color: #ff0000;">ped connect -ip</span> &lt;IP_PC/Laptop&gt;</strong></pre>
<p><img loading="lazy" decoding="async" class="size-full wp-image-5470" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/8.png" sizes="auto, (max-width: 770px) 100vw, 770px" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/8.png 770w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/8-300x62.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/8-768x160.png 768w" alt="" width="770" height="160" />ped connect</li>
<li>Untuk melihat status koneksi PED, jalankan perintah:
<pre><span style="color: #ff0000;"><strong>ped get</strong></span></pre>
<p><figure id="attachment_5505" aria-describedby="caption-attachment-5505" style="width: 820px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5505" src="https://blog.goreinnamah.com/wp-content/uploads/2021/11/pedget.png" alt="" width="820" height="154" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/11/pedget.png 820w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/pedget-300x56.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/pedget-768x144.png 768w" sizes="auto, (max-width: 820px) 100vw, 820px" /><figcaption id="caption-attachment-5505" class="wp-caption-text">ped get</figcaption></figure></li>
<li>Lakukan inisiasi dengan perintah :
<pre><strong><span style="color: #ff0000;">partition init -label</span> &lt;nama_label&gt;</strong></pre>
<figure id="attachment_5506" aria-describedby="caption-attachment-5506" style="width: 900px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5506" src="https://blog.goreinnamah.com/wp-content/uploads/2021/11/inisialisasi.jpg" alt="" width="900" height="291" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/11/inisialisasi.jpg 900w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/inisialisasi-300x97.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/inisialisasi-768x248.jpg 768w" sizes="auto, (max-width: 900px) 100vw, 900px" /><figcaption id="caption-attachment-5506" class="wp-caption-text">inisialisasi partisi</figcaption></figure>
<p>Saat mengeksekusi perintah ini, kalian akan diminta untuk memasukkan token ke dalam ped. Masukkan token untuk PO (<em>Partition Owner</em>) dan Domain. Pastikan kalian menggunakan <em>domain </em>yang sama dengan <em>domain </em>pada HSM sebelumnya dan juga yang ada pada Luna Backup G5.</li>
<li>Jika sudah, login ke dalam partisi sebagai user PO (<em>Partition Owner</em>). Perintahnya:
<pre><strong><span style="color: #ff0000;">role login -n po</span></strong></pre>
<figure id="attachment_5507" aria-describedby="caption-attachment-5507" style="width: 684px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5507" src="https://blog.goreinnamah.com/wp-content/uploads/2021/11/pologin.png" alt="" width="684" height="140" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/11/pologin.png 684w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/pologin-300x61.png 300w" sizes="auto, (max-width: 684px) 100vw, 684px" /><figcaption id="caption-attachment-5507" class="wp-caption-text">po login</figcaption></figure>
<p>Masukkan token biru PO ke dalam PED untuk login sebagai PO.</li>
<li>Inisialisasi user CO dengan perintah:
<pre><span style="color: #ff0000;"><strong>role init -name co</strong></span></pre>
<figure id="attachment_5510" aria-describedby="caption-attachment-5510" style="width: 826px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5510" src="https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture1.png" alt="" width="826" height="156" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture1.png 826w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture1-300x57.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture1-768x145.png 768w" sizes="auto, (max-width: 826px) 100vw, 826px" /><figcaption id="caption-attachment-5510" class="wp-caption-text">Inisiasi CO di HSM</figcaption></figure>
<p>Saat mengeksekusi perintah ini, kalian akan diminta untuk memasukkan token ke dalam ped. Masukkan token hitam untuk user CO. Untuk M of N-nya, kalian bisa mengaturnya sendiri.</li>
<li>Untuk kalian yang menginginkan <em>activation </em>dan <em>auto-activation </em>aktif di dalam partisi tersebut, kalian harus melakukan perubahan pada <em>partition policy-</em>nya. Perintahnya:
<pre><span style="color: #ff0000;"><strong>par changepolicy -p 22 -value 1</strong></span>
<span style="color: #ff0000;"><strong>par changepolicy -p 23 -value 1</strong></span></pre>
<p><figure id="attachment_5513" aria-describedby="caption-attachment-5513" style="width: 904px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5513" src="https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture2.png" alt="" width="904" height="234" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture2.png 904w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture2-300x78.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture2-768x199.png 768w" sizes="auto, (max-width: 904px) 100vw, 904px" /><figcaption id="caption-attachment-5513" class="wp-caption-text">change policy</figcaption></figure></li>
<li>Bagi kalian yang ingin mengubah autentikasi CO, dari PIN menjadi <em>challenge secret, </em>jalankan perintah:
<pre><span style="color: #ff0000;"><strong>role cc -n co</strong></span></pre>
<figure id="attachment_5514" aria-describedby="caption-attachment-5514" style="width: 904px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5514" src="https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture3.png" alt="" width="904" height="234" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture3.png 904w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture3-300x78.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture3-768x199.png 768w" sizes="auto, (max-width: 904px) 100vw, 904px" /><figcaption id="caption-attachment-5514" class="wp-caption-text">mengubah PIN co menjadi challenge secret</figcaption></figure>
<p>Silakan masukkan <em>challenge secret </em>yang kalian inginkan dan kembali masukkan <em>secret </em>tersebut pada bagian <em>re-entering. </em>Pastikan <em>secret </em>yang kalian masukkan ini sama ya.</li>
<li>Bagi yang melakukan perubahan dari PIN ke <em>challenge secret, </em>untuk memastikan kalau proses autentikasinya sudah berubah, jalankan perintah:
<pre><span style="color: #ff0000;"><strong>role logout</strong></span>
<span style="color: #ff0000;"><strong>role login -name co</strong></span></pre>
<figure id="attachment_5516" aria-describedby="caption-attachment-5516" style="width: 792px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5516" src="https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture4.png" alt="" width="792" height="270" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture4.png 792w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture4-300x102.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture4-768x262.png 768w" sizes="auto, (max-width: 792px) 100vw, 792px" /><figcaption id="caption-attachment-5516" class="wp-caption-text">login co menggunakan password, bukan PIN</figcaption></figure>
<p>Apabila kalian diminta untuk memasukkan <em>password, </em>itu tandanya proses autentikasinya sudah berubah. Namun bila masih diminta untuk memasukkan token, itu tandanya proses perubahan autentikasi belum terjadi.</li>
<li>Untuk melihat detil slot yang ada, jalankan perintah:
<pre><span style="color: #ff0000;"><strong>slot list</strong></span></pre>
</li>
<li>Selanjutnya kalian akan memilih slot yang akan digunakan untuk direstore, yaitu slot X alias slot 1. Perintahnya:
<pre><span style="color: #ff0000;"><strong>slot set -slot 1</strong></span></pre>
<p><figure id="attachment_5519" aria-describedby="caption-attachment-5519" style="width: 904px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5519" src="https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture5.png" alt="" width="904" height="126" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture5.png 904w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture5-300x42.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture5-768x107.png 768w" sizes="auto, (max-width: 904px) 100vw, 904px" /><figcaption id="caption-attachment-5519" class="wp-caption-text">memilih slot</figcaption></figure></li>
<li>Ketika sudah memilih slot itu, berikutnya kalian harus login sebagai <em>user </em>CO. Caranya:
<pre><span style="color: #ff0000;"><strong>role login -name co</strong></span></pre>
<figure id="attachment_5520" aria-describedby="caption-attachment-5520" style="width: 900px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5520" src="https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture6.png" alt="" width="900" height="158" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture6.png 900w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture6-300x53.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/Picture6-768x135.png 768w" sizes="auto, (max-width: 900px) 100vw, 900px" /><figcaption id="caption-attachment-5520" class="wp-caption-text">login sebagai user CO</figcaption></figure>
<p>Pastikan kalian memasukkan PIN (bila menggunakan PIN) atau <em>Password</em> (bila menggunakan password) dengan benar</li>
<li>Hubungkan PED dengan HSM Backup melalui PC/laptop yang kalian gunakan. Caranya:
<pre><span style="color: #ff0000;"><strong>ped connect -ip &lt;IP_Laptop&gt; -slot &lt;slot_Y&gt;</strong></span></pre>
<p>Dalam hal ini slot yang saya contohkan adalah slot 2 dan pastikan hasilnya adalah <em>no error.</em></li>
<li>Jika sudah, sekarang kalian bisa melakukan proses <em>restore </em>dengan perintah:
<pre><span style="color: #ff0000;"><strong>partition archive restore -slot &lt;slot_Y&gt; -partition &lt;nama_partisi_backup&gt;</strong></span></pre>
<p><figure id="attachment_5521" aria-describedby="caption-attachment-5521" style="width: 700px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5521" src="https://blog.goreinnamah.com/wp-content/uploads/2021/11/keys.jpg" alt="" width="700" height="530" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/11/keys.jpg 700w, https://blog.goreinnamah.com/wp-content/uploads/2021/11/keys-300x227.jpg 300w" sizes="auto, (max-width: 700px) 100vw, 700px" /><figcaption id="caption-attachment-5521" class="wp-caption-text">proses restore</figcaption></figure></li>
</ol>
<p style="text-align: justify;">Ya, itu tadi cara melakukan proses <em>restore </em>pada HSM Luna Network. Semoga informasinya bisa berguna ya.</p><p>The post <a href="https://blog.goreinnamah.com/blog/2021/11/30/restore-backup-hsm-luna-network/">Cara Melakukan Restore Backup HSM Luna Network</a> first appeared on <a href="https://blog.goreinnamah.com">GoBlog</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Cara Melakukan Backup HSM Luna Network</title>
		<link>https://blog.goreinnamah.com/blog/2021/10/29/backup-hsm-luna-network/</link>
		
		<dc:creator><![CDATA[Darius Go Reinnamah]]></dc:creator>
		<pubDate>Fri, 29 Oct 2021 16:35:13 +0000</pubDate>
				<category><![CDATA[Information Technology]]></category>
		<category><![CDATA[Backup HSM]]></category>
		<category><![CDATA[Backup Luna HSM]]></category>
		<category><![CDATA[Backup Luna HSM Network]]></category>
		<category><![CDATA[LUNA HSM]]></category>
		<category><![CDATA[Luna HSM Network]]></category>
		<category><![CDATA[Luna Network]]></category>
		<guid isPermaLink="false">https://blog.goreinnamah.com/?p=5452</guid>

					<description><![CDATA[<p>Tidak ada pabrikan yang bisa menggaransi 100% kalau produk yang dikeluarkan akan selalu berfungsi 100% tanpa ada kerusakan sedikitpun. Begitu[...]</p>
<p>The post <a href="https://blog.goreinnamah.com/blog/2021/10/29/backup-hsm-luna-network/">Cara Melakukan Backup HSM Luna Network</a> first appeared on <a href="https://blog.goreinnamah.com">GoBlog</a>.</p>]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">Tidak ada pabrikan yang bisa menggaransi 100% kalau produk yang dikeluarkan akan selalu berfungsi 100% tanpa ada kerusakan sedikitpun. Begitu pula dengan HSM Luna Network. Untuk itulah mereka pun mengeluarkan yang namanya Backup HSM. Sehingga suatu ketika terjadi kegagalan dari sisi <em><a href="https://idcloudhost.com/pengertian-hardware-fungsi-jenis-spesifikasi-dan-contoh-hardware/"><strong>hardware</strong></a>, </em>diharapkan pengguna HSM Luna Network sudah melakukan <em>backup </em>rutin dan isi di dalam HSM Luna Network bisa diselamatkan.</p>
<p style="text-align: justify;">Lantas bagaimana cara melakukan <em>backup</em> HSM Luna Network?  Berikut ini detilnya:</p>
<p style="text-align: justify;"><strong>Alat dan Bahan</strong></p>
<ol style="text-align: justify;">
<li>PC untuk melakukan backup dengan minimal 2 USB Port)</li>
<li>HSM Backup G5 yang sudah diinisiasi</li>
<li>HSM Luna Network</li>
<li>1 token orange, 1 token hitam (CO), dan 1 token merah (domain) milik HSM Luna Network.</li>
<li>1 token biru (admin) dan 1 token orange milik HSM Backup</li>
</ol>
<h3 style="text-align: justify;"><strong>Catatan</strong></h3>
<ul style="text-align: justify;">
<li>Token merah (domain) yang digunakan untuk backup dan restore haruslah token yang sama. Jadi saat inisialisasi di HSM yang ada di DRC misalnya, pastikan kalian meng-copy domainnya. Kalau tidak sama, proses restore tidak akan bisa dilakukan.</li>
<li>Token orange digunakan untuk melakukan remote terhadap ped, sehingga PED tidak harus tercolok ke HSM. Untuk token orange ini, kalian bisa menggunakan token yang sama (<em>copy) </em>baik disisi HSM maupun HSM Backup.</li>
<li>Banyaknya M of N untuk setiap token saya serahkan kepada kalian. Dalam contoh kali ini, saya hanya akan menggunakan 1 token untuk setiap aktornya.</li>
<li>Token hitam (CO) ini bisa juga berupa password. jadi untuk kalian yang sudah mengganti peran token hitam menjadi <em>password</em>, kalian tidak memerlukan token hitam ini.</li>
</ul>
<h3 style="text-align: justify;"><strong>Tahapan</strong></h3>
<figure id="attachment_5456" aria-describedby="caption-attachment-5456" style="width: 3128px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5456" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1.png" alt="" width="3128" height="1090" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1.png 3128w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1-300x105.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1-1024x357.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1-768x268.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1-1536x535.png 1536w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/Picture1-2048x714.png 2048w" sizes="auto, (max-width: 3128px) 100vw, 3128px" /><figcaption id="caption-attachment-5456" class="wp-caption-text">Metode Backup HSM Luna</figcaption></figure>
<p style="text-align: justify;">Sebagai catatan, ada 2 metode backup yang bisa dilakukan, yaitu dengan mencolokkan Luna PED ke HSM langsung dan mencolokkan Luna PED ke PC yang akan digunakan untuk melakukan <em>backup. </em>Metode yang saya gunakan disini adalah yang mencolokkan Luna PED ke PC yang saya gunakan untuk <em>backup.</em></p>
<ul>
<li><em><strong>Baca Juga: <a href="https://blog.goreinnamah.com/blog/2020/09/23/high-availability-pada-luna-hsm-network-7-2-0/">Cara mengatur HA pada Luna HSM Network</a></strong></em></li>
</ul>
<ol style="text-align: justify;">
<li>Nyalakan Backup HSM G5 dan colokkan via USB ke PC yang kalian gunakan untuk melakukan <em>backup.</em></li>
<li>Colokkan juga Luna PED via USB ke PC tersebut.</li>
<li>Pada PC yang kalian gunakan, buka CMD sebagai Administrator, masuk ke dalam direktori LunaClient dan jalankan perintah:
<pre><span style="color: #ff0000;"><strong>pedserver -m start</strong></span></pre>
<figure id="attachment_5461" aria-describedby="caption-attachment-5461" style="width: 811px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5461" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/3-1.png" alt="" width="811" height="133" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/3-1.png 811w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/3-1-300x49.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/3-1-768x126.png 768w" sizes="auto, (max-width: 811px) 100vw, 811px" /><figcaption id="caption-attachment-5461" class="wp-caption-text">Menghubungkan PED dengan PC</figcaption></figure>
<p>perintah ini adalah untuk menghubungkan Luna PED via PC dan pastikan tidak ada <em>error </em>pada saat mengeksekusi perintah tersebut</li>
<li>Untuk melihat statusnya, apakah sudah benar terhubung antara Luna PED dengan PC, pada direktori LunaClient, jalankan perintah:
<pre><span style="color: #ff0000;"><strong>pedserver mode show</strong></span></pre>
<p><figure id="attachment_5462" aria-describedby="caption-attachment-5462" style="width: 805px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5462" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/4-1.jpg" alt="" width="805" height="448" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/4-1.jpg 805w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/4-1-300x167.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/4-1-768x427.jpg 768w" sizes="auto, (max-width: 805px) 100vw, 805px" /><figcaption id="caption-attachment-5462" class="wp-caption-text">connection status: connected</figcaption></figure></li>
<li>Berikutnya, masih di PC yang digunakan untuk <em>backup, </em>buka lunacm dan hubungkan PC yang kalian gunakan dengan HSM. Perintahnya:
<pre><strong><span style="color: #ff0000;">ccfg dp -client</span> &lt;IP_PC&gt;<span style="color: #ff0000;"> -server</span> &lt;IP_HSM&gt;<span style="color: #ff0000;"> -par</span> &lt;Partisi_pada_HSM&gt;</strong></pre>
<p><figure id="attachment_5458" aria-describedby="caption-attachment-5458" style="width: 1000px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5458" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/1.png" alt="" width="1000" height="259" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/1.png 1000w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/1-300x78.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/1-768x199.png 768w" sizes="auto, (max-width: 1000px) 100vw, 1000px" /><figcaption id="caption-attachment-5458" class="wp-caption-text">Menghubungkan PC dengan HSM</figcaption></figure></li>
<li>Keluar dari lunacm dan masuk kembali. Dalam tampilan Lunacm kali ini, seharusnya sudah ada 2 slot: slot 2 milik HSM (yang selanjutnya akan disebut slot X) dan slot 3 milik HSM Backup G5 (yang selanjutnya akan disebut dengan slot Y).
<p><figure id="attachment_5459" aria-describedby="caption-attachment-5459" style="width: 900px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5459" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/2.png" alt="" width="900" height="349" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/2.png 900w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/2-300x116.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/2-768x298.png 768w" sizes="auto, (max-width: 900px) 100vw, 900px" /><figcaption id="caption-attachment-5459" class="wp-caption-text">Atas: slot HSM (slot X)<br />Bawah: slot HSM Backup G5 (slot Y)</figcaption></figure></li>
<li>Untuk melihat informasi dari HSM Backup, pada Lunacm, jalankan perintah:
<pre><strong><span style="color: #ff0000;">par ar list -slot</span> &lt;slot_Y&gt;</strong></pre>
<figure id="attachment_5464" aria-describedby="caption-attachment-5464" style="width: 938px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5464" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/5-1.jpg" alt="" width="938" height="551" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/5-1.jpg 938w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/5-1-300x176.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/5-1-768x451.jpg 768w" sizes="auto, (max-width: 938px) 100vw, 938px" /><figcaption id="caption-attachment-5464" class="wp-caption-text">Informasi HSM backup</figcaption></figure>
<p>Dari info di atas, kalian dapat melihat berapa total storage dari HSM backup, ada berapa slot yang tersedia, dan sudah ada berapa partisi yang terbuat untuk menampung hasil <em>backup.</em></li>
<li>Masih di dalam Lunacm.  Sekarang waktunya untuk melakukan <em>backup. </em>Pilih Slot X sebagai slot yang ingin di-<em>backup. </em>Eksekusi perintah:
<pre><strong><span style="color: #ff0000;">slot set -slot</span> &lt;slot_X&gt;</strong></pre>
</li>
<li>Usai memilih slot X sebagai slot yang ingin di-<em>backup, </em>tahap selanjutnya adalah login sebagai <em>user </em>CO ke dalam partisi yang ingin di backup pada Slot X. Jalankan perintah:
<pre><span style="color: #ff0000;"><strong>role login -name co</strong></span></pre>
<figure id="attachment_5466" aria-describedby="caption-attachment-5466" style="width: 1067px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5466" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/6.jpg" alt="" width="1067" height="497" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/6.jpg 1067w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/6-300x140.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/6-1024x477.jpg 1024w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/6-768x358.jpg 768w" sizes="auto, (max-width: 1067px) 100vw, 1067px" /><figcaption id="caption-attachment-5466" class="wp-caption-text">login sebagai user CO ke dalam partisi dari Slot X</figcaption></figure>
<p>Karena saya sudah mengubah dari token menjadi <em>password </em>untuk aktor CO pada partisi di slot X, maka saya hanya perlu memasukkan <em>password </em>untuk login. Bila kalian masih menggunakan pengaturan <em>default, </em>kalian mungkin harus memasukkan token hitam dari CO ini dan menginput PIN-nya ke dalam Luna PED.</li>
<li>Dari Slot X, sekarang kita akan beralih ke slot Y. Untuk mengubah slot, jalankan perintah:
<pre><span style="color: #ff0000;"><strong>slot set -slot <span style="color: #000000;">&lt;Slot_Y&gt;</span></strong></span></pre>
<p><figure id="attachment_5467" aria-describedby="caption-attachment-5467" style="width: 1634px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5467" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/7-1.jpg" alt="" width="1634" height="240" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/7-1.jpg 1634w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/7-1-300x44.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/7-1-1024x150.jpg 1024w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/7-1-768x113.jpg 768w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/7-1-1536x226.jpg 1536w" sizes="auto, (max-width: 1634px) 100vw, 1634px" /><figcaption id="caption-attachment-5467" class="wp-caption-text">Pilih Slot Y, slot HSM Backup</figcaption></figure></li>
<li>Sekarang hubungkan Luna PED dengan HSM Backup via PC yang kalian gunakan. Perintahnya:
<pre><span style="color: #ff0000;"><strong>ped connect -ip &lt;IP_PC&gt;</strong></span></pre>
<p><figure id="attachment_5470" aria-describedby="caption-attachment-5470" style="width: 770px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5470" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/8.png" alt="" width="770" height="160" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/8.png 770w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/8-300x62.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/8-768x160.png 768w" sizes="auto, (max-width: 770px) 100vw, 770px" /><figcaption id="caption-attachment-5470" class="wp-caption-text">ped connect</figcaption></figure></li>
<li>Selanjutnya, pilih kembali slot yang akan di-<em>backup. </em>Caranya:
<pre><span style="color: #ff0000;"><strong>slot set -slot &lt;Slot_X&gt;</strong></span></pre>
<p><figure id="attachment_5471" aria-describedby="caption-attachment-5471" style="width: 1467px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5471" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/9-1.jpg" alt="" width="1467" height="178" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/9-1.jpg 1467w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/9-1-300x36.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/9-1-1024x124.jpg 1024w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/9-1-768x93.jpg 768w" sizes="auto, (max-width: 1467px) 100vw, 1467px" /><figcaption id="caption-attachment-5471" class="wp-caption-text">pilih Slot X</figcaption></figure></li>
<li>Tahap terakhir, eksekusi perintah <em>backup </em>berikut:
<pre><strong><span style="color: #ff0000;">partition archive backup -slot</span> &lt;Slot_Y&gt; <span style="color: #ff0000;">-partition</span> &lt;nama_partisi_backup&gt;</strong></pre>
<figure id="attachment_5472" aria-describedby="caption-attachment-5472" style="width: 931px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5472" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/10.jpg" alt="" width="931" height="466" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/10.jpg 931w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/10-300x150.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/10-768x384.jpg 768w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/10-840x420.jpg 840w" sizes="auto, (max-width: 931px) 100vw, 931px" /><figcaption id="caption-attachment-5472" class="wp-caption-text">backup HSM Luna Network</figcaption></figure>
<p>Usai mengeksekusi perintah tersebut, pertama kali kalian akan diminta untuk memasukkan token SO (biru) dari HSM Backup. Silakan tancapkan token biru ke dalam Luna PED dan masukkan PIN-nya.<br />
Berikutnya, kalian akan diminta untuk memasukkan token hitam dari HSM Backup. Silakan cabut token biru dan tancapkan token hitam ke dalam Luna PED dan masukkan PIN-nya.<br />
Usai memasukkan token warna hitam, kalian masih akan diminta kembali untuk login dengan menggunakan token hitam. Masukkan kembali PIN dari token hitam.<br />
Terakhir, kalian akan diminta untuk memasukkan token domain (merah) dari HSM Backup. Cabut token hitam dan tancapkan token merah ke dalam Luna PED dan masukkan PIN-nya.</li>
<li>Jika ke semua token yang kalian masukkan benar, maka proses <em>backup </em>HSM Luna Network akan berhasil dan semua objek yang berhasil di-<em>backup </em>akan tampil.
<p><figure id="attachment_5473" aria-describedby="caption-attachment-5473" style="width: 900px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5473" src="https://blog.goreinnamah.com/wp-content/uploads/2021/10/11-1.jpg" alt="" width="900" height="608" srcset="https://blog.goreinnamah.com/wp-content/uploads/2021/10/11-1.jpg 900w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/11-1-300x203.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/11-1-768x519.jpg 768w, https://blog.goreinnamah.com/wp-content/uploads/2021/10/11-1-120x80.jpg 120w" sizes="auto, (max-width: 900px) 100vw, 900px" /><figcaption id="caption-attachment-5473" class="wp-caption-text">backup berjalan dengan baik</figcaption></figure></li>
</ol>
<p style="text-align: center;"><strong>******</strong></p>
<p style="text-align: justify;">Itu tadi cara melakukan <em>backup </em>Luna HSM Network dengan menggunakan HSM Backup G5. Semoga informasinya berguna dan pastikan kalian melakukan <em>backup </em>rutin terhadap HSM yang kalian gunakan.</p><p>The post <a href="https://blog.goreinnamah.com/blog/2021/10/29/backup-hsm-luna-network/">Cara Melakukan Backup HSM Luna Network</a> first appeared on <a href="https://blog.goreinnamah.com">GoBlog</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Cara Mengaktifkan HA Log pada Luna HSM Network 7.2.0</title>
		<link>https://blog.goreinnamah.com/blog/2020/10/07/ha-log-luna-hsm-network/</link>
		
		<dc:creator><![CDATA[Darius Go Reinnamah]]></dc:creator>
		<pubDate>Wed, 07 Oct 2020 16:24:32 +0000</pubDate>
				<category><![CDATA[Information Technology]]></category>
		<category><![CDATA[HA Log Luna]]></category>
		<category><![CDATA[HA Log Luna HSM]]></category>
		<category><![CDATA[HA Log Luna HSM Network]]></category>
		<category><![CDATA[Log Luna HSM]]></category>
		<category><![CDATA[LUNA HSM]]></category>
		<category><![CDATA[Luna HSM Network]]></category>
		<guid isPermaLink="false">https://blog.goreinnamah.com/?p=5015</guid>

					<description><![CDATA[<p>Umumnya setiap aplikasi yang berjalan di atas sebuah server selalu memiliki log. Log merupakan sebuah atau beberapa file yang secara otomatis[...]</p>
<p>The post <a href="https://blog.goreinnamah.com/blog/2020/10/07/ha-log-luna-hsm-network/">Cara Mengaktifkan HA Log pada Luna HSM Network 7.2.0</a> first appeared on <a href="https://blog.goreinnamah.com">GoBlog</a>.</p>]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">Umumnya setiap aplikasi yang berjalan di atas sebuah server selalu memiliki log. Log merupakan sebuah atau beberapa file yang secara otomatis dibuat dan dikelola oleh aplikasi. File tersebut umumnya berisi daftar aktivitas yang terjadi pada aplikasi tersebut. Seperti halnya aplikasi lainnya, ketika <a href="https://cpl.thalesgroup.com/encryption/hardware-security-modules/network-hsms"><strong>Luna HSM</strong></a> Network 7.2.0 diaktifkan fitur HA (High Availability)-nya, ia pun menyalakan fitur log tersebut yang bernama HA Log. Namun sayangnya fitur HA Log tersebut belum berjalan sempurna. Ada beberapa konfigurasi lagi yang harus dikerjakan guna membuatnya berjalan dengan baik.</p>
<figure id="attachment_5054" aria-describedby="caption-attachment-5054" style="width: 538px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-5054" src="https://blog.goreinnamah.com/wp-content/uploads/2020/10/Screen-Shot-2020-10-02-at-22.12.28.png" alt="" width="538" height="208" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/10/Screen-Shot-2020-10-02-at-22.12.28.png 538w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/Screen-Shot-2020-10-02-at-22.12.28-300x116.png 300w" sizes="auto, (max-width: 538px) 100vw, 538px" /><figcaption id="caption-attachment-5054" class="wp-caption-text">Secara default sudah menyala, hanya saja belum ditentukan pathnya</figcaption></figure>
<p style="text-align: justify;">Berikut ini adalah cara untuk mengaktifkan HA Log pada Luna HSM Network 7.2.0. (Sebelumnya kalian bisa membaca cara mengaktifkan HA pada Luna HSM Network 7.2.0 <a href="https://blog.goreinnamah.com/blog/2020/09/23/high-availability-pada-luna-hsm-network-7-2-0/"><strong>DI SINI</strong></a>):</p>
<ol style="text-align: justify;">
<li>Melalui <em>lunacm, </em>jalankan perintah <em>hagroup listgroups </em>untuk melihat detil pengaturan HA yang dibuat. Bila baru pertama kali diaktifkan, biasanya: <em><em>ha logging disabled, maximum auto recovery retry 0, dan ha auto recovery disabled</em></em>
<p><figure id="attachment_5055" aria-describedby="caption-attachment-5055" style="width: 1084px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-5055" src="https://blog.goreinnamah.com/wp-content/uploads/2020/10/2.jpg" alt="" width="1084" height="1027" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/10/2.jpg 1084w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/2-300x284.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/2-1024x970.jpg 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/2-768x728.jpg 768w" sizes="auto, (max-width: 1084px) 100vw, 1084px" /><figcaption id="caption-attachment-5055" class="wp-caption-text">konfigurasi awal</figcaption></figure></li>
<li>Masih di <em>lunacm. </em>Untuk mengaktifkan <em>maximum auto recovery retry </em>dan sekaligus juga <em>had auto recovery, </em>jalankan perintah berikut:
<pre><span style="color: #ff0000;"><strong>hagroup retry -c -1</strong></span></pre>
<figure id="attachment_5056" aria-describedby="caption-attachment-5056" style="width: 894px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-5056" src="https://blog.goreinnamah.com/wp-content/uploads/2020/10/3.png" alt="" width="894" height="206" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/10/3.png 894w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/3-300x69.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/3-768x177.png 768w" sizes="auto, (max-width: 894px) 100vw, 894px" /><figcaption id="caption-attachment-5056" class="wp-caption-text">Mengaktifkan auto recovery</figcaption></figure>
<p>-1 digunakan untuk mengubah percobaan untuk <em>auto recovery </em>menjadi <em>infinite </em>alias tak terbatas. Jadi sistem akan terus mengulang sampai <em>recovery-</em>nya berjalan dengan normal.</li>
<li>Tahap berikutnya adalah menentukan lokasi dimana file HA Log akan ditempatkan. Kalau saya biasanya meletakkannya di dalam sebuah folder <em>halog </em>yang berada di dalam direktori <em>lunaclient. </em>Untuk menentukan foldernya, jalankan perintah:
<pre><span style="color: #ff0000;"><strong>hagroup halog -path &lt;lokasi_ingin_ditempatkan&gt;</strong></span></pre>
<p>Dan ketika lokasinya sudah ditetapkan, untuk memeriksa apakah lokasi tersebut tercatat dengan baik, jalankan perintah:</p>
<pre><span style="color: #ff0000;"><strong>hagroup halog -show</strong></span></pre>
<p><figure id="attachment_5057" aria-describedby="caption-attachment-5057" style="width: 1272px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5057" src="https://blog.goreinnamah.com/wp-content/uploads/2020/10/Screen-Shot-2020-10-02-at-22.12.42.png" alt="" width="1272" height="446" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/10/Screen-Shot-2020-10-02-at-22.12.42.png 1272w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/Screen-Shot-2020-10-02-at-22.12.42-300x105.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/Screen-Shot-2020-10-02-at-22.12.42-1024x359.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/Screen-Shot-2020-10-02-at-22.12.42-768x269.png 768w" sizes="auto, (max-width: 1272px) 100vw, 1272px" /><figcaption id="caption-attachment-5057" class="wp-caption-text">Pengaturan lokasi</figcaption></figure></li>
<li>Pada tahapan nomor 3, dapat terlihat kalau lokasi log sudah ditentukan. Namun masalahnya adalah ukuran <em>file-</em>nya masih terlalu kecil. Untuk mengubah ukuran file log tersebut, jalankan perintah:
<pre><span style="color: #ff0000;"><strong>hagroup halog -maxlength 500000</strong></span></pre>
<figure id="attachment_5058" aria-describedby="caption-attachment-5058" style="width: 1168px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5058" src="https://blog.goreinnamah.com/wp-content/uploads/2020/10/Screen-Shot-2020-10-02-at-22.11.08.png" alt="" width="1168" height="216" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/10/Screen-Shot-2020-10-02-at-22.11.08.png 1168w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/Screen-Shot-2020-10-02-at-22.11.08-300x55.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/Screen-Shot-2020-10-02-at-22.11.08-1024x189.png 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/Screen-Shot-2020-10-02-at-22.11.08-768x142.png 768w" sizes="auto, (max-width: 1168px) 100vw, 1168px" /><figcaption id="caption-attachment-5058" class="wp-caption-text">Mengubah ukuran file log</figcaption></figure>
<p>Satuan ukuran <em>log file </em>yang digunakan adalah <em>bytes</em></li>
<li>Setelah melakukan semua perubahan itu, kembali jalankan perintah <em>hagroup listgroups </em>untuk melihat perubahannya:
<pre><span style="color: #ff0000;"><strong>hagroup listgroups</strong></span></pre>
<figure id="attachment_5060" aria-describedby="caption-attachment-5060" style="width: 1084px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5060" src="https://blog.goreinnamah.com/wp-content/uploads/2020/10/6.jpg" alt="" width="1084" height="1025" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/10/6.jpg 1084w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/6-300x284.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/6-1024x968.jpg 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/10/6-768x726.jpg 768w" sizes="auto, (max-width: 1084px) 100vw, 1084px" /><figcaption id="caption-attachment-5060" class="wp-caption-text">Perubahan detil pada konfigurasi HA</figcaption></figure>
<p>Dapat terlihat jelas perubahan konfigurasi pada HA di Luna HSM ini. <em>ha auto recovery </em>sudah <em>enabled, maximum auto recovery retry </em>sudah <em>infinite, </em>lokasi HA Log file sudah terdefinisikan, dan besaran ukuran file log tersebut juga sudah jelas.</li>
<li>Bila suatu saat terjadi <em>error </em>pada HA, kalian dapat melihatnya pada file <em>haErrorLog.txt </em>yang tersimpan di direktori <em>/usr/safenet/lunaclient/halog</em>
<pre><span style="color: #ff0000;"><strong>tail -100f /usr/safenet/lunaclient/halog/haErrorLog.txt</strong></span></pre>
<p><figure id="attachment_5042" aria-describedby="caption-attachment-5042" style="width: 2005px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-5042" src="https://blog.goreinnamah.com/wp-content/uploads/2020/09/27.jpg" alt="" width="2005" height="231" srcset="https://blog.goreinnamah.com/wp-content/uploads/2020/09/27.jpg 2005w, https://blog.goreinnamah.com/wp-content/uploads/2020/09/27-300x35.jpg 300w, https://blog.goreinnamah.com/wp-content/uploads/2020/09/27-1024x118.jpg 1024w, https://blog.goreinnamah.com/wp-content/uploads/2020/09/27-768x88.jpg 768w, https://blog.goreinnamah.com/wp-content/uploads/2020/09/27-1536x177.jpg 1536w" sizes="auto, (max-width: 2005px) 100vw, 2005px" /><figcaption id="caption-attachment-5042" class="wp-caption-text">Contoh isi log pada file haErrorLog.txt</figcaption></figure></li>
</ol>
<p style="text-align: justify;">Ya, itu tadi sedikit cara untuk mengaktifkan HA Log di Luna HSM Network. Semoga informasi ini dapat berguna dan sampai jumpa di tutorial berikutnya.</p><p>The post <a href="https://blog.goreinnamah.com/blog/2020/10/07/ha-log-luna-hsm-network/">Cara Mengaktifkan HA Log pada Luna HSM Network 7.2.0</a> first appeared on <a href="https://blog.goreinnamah.com">GoBlog</a>.</p>]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>Instalasi EJBCA 6.3.1.1 dengan HSM LUNA PCIE pada CentOS 7</title>
		<link>https://blog.goreinnamah.com/blog/2017/12/01/instalasi-ejbca-6-3-1-1-dengan-hsm-luna-pcie-pada-centos-7/</link>
					<comments>https://blog.goreinnamah.com/blog/2017/12/01/instalasi-ejbca-6-3-1-1-dengan-hsm-luna-pcie-pada-centos-7/#comments</comments>
		
		<dc:creator><![CDATA[Darius Go Reinnamah]]></dc:creator>
		<pubDate>Fri, 01 Dec 2017 09:01:39 +0000</pubDate>
				<category><![CDATA[Information Technology]]></category>
		<category><![CDATA[ejbca]]></category>
		<category><![CDATA[EJBCA 6.3.1.1]]></category>
		<category><![CDATA[Hardware Security Modul]]></category>
		<category><![CDATA[HSM]]></category>
		<category><![CDATA[HSM LUNA]]></category>
		<category><![CDATA[Jboss 7.1.1]]></category>
		<category><![CDATA[JBOSS EJBCA]]></category>
		<category><![CDATA[LUNA HSM]]></category>
		<category><![CDATA[SafeNet]]></category>
		<category><![CDATA[SafeNet Luna HSM]]></category>
		<guid isPermaLink="false">http://blog.goreinnamah.com/?p=1572</guid>

					<description><![CDATA[<p>Kalau di postingan sebelumnya, DI SINI, saya membahas mengenai cara agar Sistem Operasi (CentOS 7) dapat mengenali LUNA HSM PCIe[...]</p>
<p>The post <a href="https://blog.goreinnamah.com/blog/2017/12/01/instalasi-ejbca-6-3-1-1-dengan-hsm-luna-pcie-pada-centos-7/">Instalasi EJBCA 6.3.1.1 dengan HSM LUNA PCIE pada CentOS 7</a> first appeared on <a href="https://blog.goreinnamah.com">GoBlog</a>.</p>]]></description>
										<content:encoded><![CDATA[<p style="text-align: justify;">Kalau di postingan sebelumnya, <a href="http://blog.goreinnamah.com/blog/2017/10/09/instalasi-driver-luna-client-pcie/"><strong>DI SINI</strong></a>, saya membahas mengenai cara agar Sistem Operasi (CentOS 7) dapat mengenali LUNA HSM PCIe v6.10.9. Pada kesempatan kali ini saya mau memberikan cara agar LUNA HSM PCIe v6.10.9 ini dapat mengobrol alias diintegrasikan dengan EJBCA 6.3.1.1.</p>
<p style="text-align: justify;">Integrasi ini bertujuan agar pasca melakukan instalasi EJBCA 6.3.1.1, LUNA HSM PCIe v6.10.9 ini dapat digunakan sebagai tempat dimana EJBCA 6.3.1.1 men-generate key yang nantinya akan digunakan oleh CA untuk CRL Signing dan Certificate.</p>
<h3 style="text-align: justify;"><strong>Konfigurasi SafeNet HSM PCIe</strong></h3>
<p style="text-align: justify;">Kita perlu melakukan <em>patch </em>berikut agar EJBCA 6.3.1.1 dapat bekerja dengan SafeNet HSM PCIe v6.10.9:</p>
<ol style="text-align: justify;">
<li>Lakukan instalasi driver untuk SafeNet Luna PCIe terlebih dahulu. Caranya bisa dilihat <a href="http://blog.goreinnamah.com/blog/2017/10/09/instalasi-driver-luna-client-pcie/"><strong>DI SINI</strong></a>.</li>
<li>Setelah selesai,  kita harus mengubah isi dari file <strong>Chrystoki.conf</strong> yang berada pada folder <strong>etc</strong>. Caranya:
<ol>
<li><strong>vi /etc/Chrystoki.conf</strong></li>
<li>Ubah menjadi seperti berikut:<br />
<strong>Chrystoki2 = {</strong><br />
<strong>LibUNIX64 = /usr/safenet/lunaclient/lib/libshim.so;</strong><br />
<strong>}</strong><br />
<strong>Shim2 = {</strong><br />
<strong>LibUNIX64 = /usr/safenet/lunaclient/lib/libCryptoki2_64.so;</strong><br />
<strong>}</strong><br />
<strong>Misc = {</strong><br />
<strong>:</strong><br />
<strong>ApplicationInstance=SA5_COMPATIBILITY;</strong><br />
<strong>FunctionBindLevel=2;</strong><br />
<strong>:</strong><br />
<strong>}</strong><br />
<strong>Presentation = {</strong><br />
<strong>OneBaseSlotId =1;</strong><br />
<strong>}</strong></li>
</ol>
</li>
</ol>
<h2 style="text-align: justify;">SafeNet LUNA HSM dengan EJBCA 6.3.1.1</h2>
<p style="text-align: justify;">Untuk mempersiapkan SafeNet LUNA HSM untuk EJBCA 6.3.1.1, beberapa langkah berikut perlu dipersiapkan:</p>
<h3 style="text-align: justify;"><strong>Alat dan Bahan:</strong></h3>
<ol style="text-align: justify;">
<li>EJBCA 6.3.1.1 → Download <a href="http://www.ejbca.org/download.html"><strong>DI SINI</strong></a></li>
<li>JBOSS AS 7.1.1 → Download <a href="http://download.jboss.org/jbossas/7.1/jboss-as-7.1.1.Final/jboss-as-7.1.1.Final.zip"><strong>DI SINI</strong></a></li>
<li>MariaDB 10.2 (Stable)→ Cara Install <a href="https://downloads.mariadb.org/mariadb/repositories/#mirror=datautama&amp;distro=CentOS&amp;distro_release=centos7-amd64--centos7&amp;version=10.2"><strong>DI SINI</strong></a></li>
<li>MariaDB Java Client 1.2.0→ Download <a href="http://central.maven.org/maven2/org/mariadb/jdbc/mariadb-java-client/1.2.0/mariadb-java-client-1.2.0.jar"><strong>DI SINI</strong></a></li>
<li>OpenJDK 7</li>
</ol>
<h3 style="text-align: justify;"><strong>Spek Server yang Saya Gunakan</strong></h3>
<ol style="text-align: justify;">
<li>RAM = 6GB</li>
<li>CPUs = 6</li>
<li>Harddisk = 50 GB</li>
</ol>
<h3 style="text-align: justify;">Pengaturan FQDN</h3>
<p style="text-align: justify;">Pertama kali yang kita dilakukan adalah Setting FQDN-nya terlebih dahulu, caranya:</p>
<pre><strong>vi /etc/hosts</strong></pre>
<figure id="attachment_28" aria-describedby="caption-attachment-28" style="width: 308px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-28" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/1-setting-hosts.png" alt="" width="308" height="38" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-setting-hosts.png 308w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-setting-hosts-300x37.png 300w" sizes="auto, (max-width: 308px) 100vw, 308px" /><figcaption id="caption-attachment-28" class="wp-caption-text">Setting IP, Nama Domain dan nama Host</figcaption></figure>
<h3 style="text-align: justify;"><strong>Konfigurasi Firewall</strong></h3>
<p style="text-align: justify;">EJBCA 6.3.1.1 menggunakan port 8080, 8442, 8443 untuk servis CA. Yang lainnya merupakan port internal (3306 untuk MySQL, 9990 untuk JBoss Admin, dll). Kita tidak perlu mengubah port tersebut pada aplikasi EJBCA 6.3.1.1 nya langsung.</p>
<p style="text-align: justify;">Jika kita mau menggunakan port standar yang digunakan WEB, silahkan atur Port Forwarding pada iptables. Kita bisa melakukannya dengan cara:</p>
<pre><strong>vi /etc/sysconfig/iptables</strong></pre>
<p style="text-align: justify;">kemudian masukkan:</p>
<h4 style="text-align: justify;">#### Start Iptables ####</h4>
<p style="text-align: justify;">*<strong>filter</strong><br />
<strong>:INPUT ACCEPT [0:0]</strong><br />
<strong>:FORWARD ACCEPT [0:0]</strong><br />
<strong>:OUTPUT ACCEPT [34:14652]</strong><br />
<strong>-A INPUT -p tcp -m tcp &#8211;dport 8008 -j ACCEPT</strong><br />
<strong>-A INPUT -m state &#8211;state RELATED,ESTABLISHED -j ACCEPT</strong><br />
<strong>-A INPUT -p icmp -j ACCEPT</strong><br />
<strong>-A INPUT -i lo -j ACCEPT</strong><br />
<strong>-A INPUT -i eth0 -p tcp -m state &#8211;state NEW -m tcp &#8211;dport 8080 -m mark &#8211;mark 0x64 -j ACCEPT</strong><br />
<strong>-A INPUT -p tcp -m state &#8211;state NEW -m tcp &#8211;dport 80 -j ACCEPT</strong><br />
<strong>-A INPUT -p tcp -m state &#8211;state NEW -m tcp &#8211;dport 8080 -j ACCEPT</strong><br />
<strong>-A INPUT -p tcp -m state &#8211;state NEW -m tcp &#8211;dport 8443 -j ACCEPT</strong><br />
<strong>-A INPUT -p tcp -m state &#8211;state NEW -m tcp &#8211;dport 8442 -j ACCEPT</strong><br />
<strong>-A INPUT -p tcp -m state &#8211;state NEW -m tcp &#8211;dport 443 -j ACCEPT</strong><br />
<strong>-A INPUT -p tcp -m state &#8211;state NEW -m tcp &#8211;dport 22 -j ACCEPT</strong><br />
<strong>-A INPUT -j REJECT &#8211;reject-with icmp-host-prohibited</strong><br />
<strong>-A FORWARD -j REJECT &#8211;reject-with icmp-host-prohibited</strong><br />
<strong>COMMIT</strong></p>
<p style="text-align: justify;"><strong>*nat</strong><br />
<strong>:PREROUTING ACCEPT [1928198:538190860]</strong><br />
<strong>:POSTROUTING ACCEPT [239877:14576705]</strong><br />
<strong>:OUTPUT ACCEPT [239877:14576705]</strong><br />
<strong>-A PREROUTING -i eth0 -p tcp -m tcp &#8211;dport 80 -m mark &#8211;mark 0x64 -j DNAT &#8211;to-destination :8080</strong><br />
<strong>COMMIT</strong></p>
<p style="text-align: justify;"><strong>*mangle</strong><br />
<strong>:PREROUTING ACCEPT [5793867:3540661671]</strong><br />
<strong>:INPUT ACCEPT [5504145:3514609021]</strong><br />
<strong>:FORWARD ACCEPT [0:0]</strong><br />
<strong>:OUTPUT ACCEPT [4546890:3055306048]</strong><br />
<strong>:POSTROUTING ACCEPT [4546890:3055306048]</strong><br />
<strong>-A PREROUTING -i eth0 -p tcp -m tcp &#8211;dport 80 -j MARK &#8211;set-xmark 0x64/0xffffffff</strong><br />
<strong>COMMIT</strong></p>
<figure id="attachment_1576" aria-describedby="caption-attachment-1576" style="width: 893px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-1576" src="http://blog.goreinnamah.com/wp-content/uploads/2017/11/500.png" alt="" width="893" height="637" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/11/500.png 893w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/500-300x214.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/500-768x548.png 768w" sizes="auto, (max-width: 893px) 100vw, 893px" /><figcaption id="caption-attachment-1576" class="wp-caption-text">Konfigurasi IPTables</figcaption></figure>
<p style="text-align: justify;">Setelah melakuan konfigurasi, untuk mengaktifkan iptables tersebut maka lakukan perintah berikut:</p>
<pre><strong>sh -c 'iptables-restore -t &lt; /etc/sysconfig/iptables'</strong></pre>
<h3 style="text-align: justify;">Instalasi beberapa paket</h3>
<p style="text-align: justify;">Seperti namanya <strong>EJBCA (Enterprise Java Bean Certification Authority)</strong>, maka kita membutuhkan java agar software ini dapat running. Versi OpenJDK yang harus diinstal adalah versi 7. Caranya:</p>
<pre><strong>yum install java-1.7.0-openjdk-devel.x86_64</strong></pre>
<figure id="attachment_1579" aria-describedby="caption-attachment-1579" style="width: 1351px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-1579" src="http://blog.goreinnamah.com/wp-content/uploads/2017/11/501.png" alt="" width="1351" height="460" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/11/501.png 1351w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/501-300x102.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/501-768x261.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/501-1024x349.png 1024w" sizes="auto, (max-width: 1351px) 100vw, 1351px" /><figcaption id="caption-attachment-1579" class="wp-caption-text">Instalasi Openjdk-7</figcaption></figure>
<p style="text-align: justify;">Setelah selesai melakukan instalasi <strong>openjdk-7</strong>, selanjutnya kita akan meng-install beberapa paket tambahan yaitu ant, ant-antlr, dan unzip. Caranya:</p>
<pre><strong>yum install ant ant-antlr unzip</strong></pre>
<figure id="attachment_1581" aria-describedby="caption-attachment-1581" style="width: 772px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-1581" src="http://blog.goreinnamah.com/wp-content/uploads/2017/11/502.png" alt="" width="772" height="321" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/11/502.png 772w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/502-300x125.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/502-768x319.png 768w" sizes="auto, (max-width: 772px) 100vw, 772px" /><figcaption id="caption-attachment-1581" class="wp-caption-text">instalasi ant ant-antlr unzip</figcaption></figure>
<p style="text-align: justify;">Setelah melakukan instalasi openjdk 7 dan beberapa paket lainnya, ada baiknya memeriksa versi java terlebih dahulu apakah sudah sesuai dengan yang kita inginkan atau belum. Caranya:</p>
<pre><strong>java -version</strong></pre>
<figure id="attachment_36" aria-describedby="caption-attachment-36" style="width: 485px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-36" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/6-cek-versi-java-kembali.png" alt="" width="485" height="79" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/6-cek-versi-java-kembali.png 485w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/6-cek-versi-java-kembali-300x49.png 300w" sizes="auto, (max-width: 485px) 100vw, 485px" /><figcaption id="caption-attachment-36" class="wp-caption-text">Sudah menggunakan java versi 7 sesuai yang diperlukan</figcaption></figure>
<p style="text-align: justify;">dari hasil di atas didapatkan kalau versi java yang terpasang adalah versi 7.</p>
<h3 style="text-align: justify;"><strong>Instalasi dan Konfigurasi MariaDB</strong></h3>
<p style="text-align: justify;">Tahap berikutnya kita harus melakukan instalasi Database kemudian konfigurasi. konfigurasi yang saya lakukan disini hanyalah konfigurasi biasa tanpa <em>Security </em>yang cukup baik (hanya untuk keperluan percobaan). Untuk kalian yang ingin mengimplementasikannya di production, pastikan mengamankan direktori mysql dan meng-<em>update </em>/etc/mysql/my.cnf sebelum menjalankan service database. Konfigurasi ini juga menggunakan utf-8 encoding yang menjadi syarat dari EJBCA 6.3.1.1. Mari kita mulai instalasinya terlebih dahulu:</p>
<p style="text-align: justify;">Untuk melakukan instalasi mariaDB 10.2 (stable) pada CentOS 7. Tambahkan dulu repositorinya dengan cara:</p>
<pre style="text-align: justify;"><strong><code>#</code> MariaDB 10.2 CentOS repository list - created 2017-11-24 07:32 UTC <code>#</code> <a href="http://downloads.mariadb.org/mariadb/repositories/">http://downloads.mariadb.org/mariadb/repositories/</a> </strong> <strong>[mariadb] </strong> <strong>name = MariaDB </strong> <strong>baseurl = <a href="http://yum.mariadb.org/10.2/centos7-amd64">http://yum.mariadb.org/10.2/centos7-amd64</a> </strong> <strong>gpgkey= <a href="https://yum.mariadb.org/RPM-GPG-KEY-MariaDB">https://yum.mariadb.org/RPM-GPG-KEY-MariaDB</a> </strong> <strong>gpgcheck=1</strong></pre>
<p style="text-align: justify;">Setelah itu update paket CentOS dan install MariaDB 10.2. Caranya:</p>
<pre><strong>yum update</strong>
<strong>yum install MariaDB-server MariaDB-client</strong></pre>
<p style="text-align: justify;">Setelah MariaDB selesai terinstal, tahap selanjutnya adalah mengubah beberapa konfigurasi yang ada pada <em>my.cnf.</em> Salah satunya adalah menambahkan <em>binlog_format=row. </em>Kalau menggunakan MariaDB, kemungkinan servicenya menolak untuk berjalan karena InnoDB tidak bisa memproses log binary-nya. Tambahkan <em>binlog_format=row </em>seperti konfigurasi di bawah untuk memecahkan masalah tersebut. Tambahkan juga beberapa item lain yang belum ada di <em>my.cnf  </em>kalian ya.</p>
<pre><strong>vi /etc/mysql/my.cnf</strong></pre>
<pre><strong>[client]
 port                    = 3306
 socket                  = /var/run/mysqld/mysqld.sock
 default-character-set   = utf8

[mysqld]
 user                    = mysql
 socket                  = /var/run/mysqld/mysqld.sock
 port                    = 3306
 basedir                 = /usr
 datadir                 = /var/lib/mysql
 tmpdir                  = /tmp
 lc_messages_dir         = /usr/share/mysql
 lc_messages             = en_US
 skip-external-locking

#UTF-8
 character-set-server    = utf8
 collation-server        = utf8_unicode_ci
 init-connect            = 'SET NAMES utf8'

bind-address             = 127.0.0.1
#Binary Logging
 log_bin                 = /var/log/mysql/mariadb-bin
 log_bin_index           = /var/log/mysql/mariadb-bin.index
 binlog_format           = ROW
 expire_logs_days        = 10
 max_binlog_size         = 100M
 server-id               = 1
 slow_query_log_file     = /var/log/mysql/mariadb-slow.log
 long_query_time         = 10</strong></pre>
<p style="text-align: justify;">Setelah beres, jangan lupa untuk mengubah kepemilikan my.cnf tersebut menjadi milik mysql. caranya:</p>
<pre><strong>sudo chown mysql:mysql /etc/mysql/my.cnf</strong></pre>
<p style="text-align: justify;">Pada konfigurasi <em>my.cnf </em>di atas, kita memasukkan lokasi untuk meletakkan log. Untuk mengamankan log tersebut (karena log tersebut mengandung data sertifikat kita), maka kita harus mengatur izin yang terbatas soal siapa yang bisa mengaksesnya. caranya:</p>
<pre><strong>chown -R mysql:mysql /var/log/mysql
chmod -R 750 /var/log/mysql/</strong></pre>
<p style="text-align: justify;">Setelah MariaDB terinstall dan konfigurasi dilakukan, tahap selanjutnya adalah merestart service database dan membuat database untuk EJBCA 6.3.1.1 dan juga sebuah user untuk mengakses database EJBCA 6.3.1.1 tersebut (jangan menggunakan user root untuk EJBCA 6.3.1.1 dalam mengakses database-nya). Caranya:</p>
<pre><strong>service mysql restart</strong></pre>
<pre><strong>mysql -u root -p
create database &lt;nama_db&gt;;
grant all privileges on &lt;nama_db&gt;.* to '&lt;user&gt;'@'&lt;ip&gt;' identified by '&lt;password&gt;';
flush privileges;
exit</strong></pre>
<figure id="attachment_57" aria-describedby="caption-attachment-57" style="width: 845px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-57" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/15-Create-user-dbca.png" alt="" width="845" height="333" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/15-Create-user-dbca.png 845w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/15-Create-user-dbca-300x118.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/15-Create-user-dbca-768x303.png 768w" sizes="auto, (max-width: 845px) 100vw, 845px" /><figcaption id="caption-attachment-57" class="wp-caption-text">Create db untuk ejbca 6.3.1.1 dan user untuk mengaksesnya</figcaption></figure>
<p style="text-align: justify;">kalau sudah, lakukan verifikasi dengan cara login dengan menggunakan user yang baru saja kita buat tadi dan test aksesnya. Caranya:</p>
<pre><strong>mysql -u &lt;user_db&gt; -p
use &lt;db_ejbca&gt;;
show grants for '&lt;user_db&gt;@'&lt;ip&gt;';
exit</strong></pre>
<figure id="attachment_60" aria-describedby="caption-attachment-60" style="width: 934px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-60" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/16-periksa-user.png" alt="" width="934" height="335" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/16-periksa-user.png 934w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/16-periksa-user-300x108.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/16-periksa-user-768x275.png 768w" sizes="auto, (max-width: 934px) 100vw, 934px" /><figcaption id="caption-attachment-60" class="wp-caption-text">test user yang baru dibuat untuk database ejbca 6.3.1.1</figcaption></figure>
<p style="text-align: justify;">Pada bagian akhir, restart service database tersebut dengan perintah:</p>
<pre><strong>service mysql restart</strong></pre>
<h3 style="text-align: justify;"><strong>Membuat Struktur Direktori</strong></h3>
<p style="text-align: justify;">Sekarang kita akan membuat struktur direktori dari aplikasi itu sendiri. Saya memutuskan untuk meletakkan aplikasi-aplikasi yang saya butuhkan pada <strong>/opt</strong>. Secara default, Semua dokumentasi EJBCA mengasumsikan kita melakukan instalasi pada home direktori. Namun saya lebih senang untuk menggunakan simbolik link agar lebih mudah.</p>
<ul style="text-align: justify;">
<li><strong>/opt </strong>saya gunakan untuk meletakkan semua file sehingga kita bisa dengan mudah menghapusnya dan memulai lagi dari awal.</li>
<li>Download Jboss dan EJBCA 6.3.1.1 dengan wget (link ada di “alat &amp; bahan”) dan letakkan pada <strong>/opt</strong>.</li>
</ul>
<figure id="attachment_72" aria-describedby="caption-attachment-72" style="width: 1301px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-72" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/18-wget-jboss.png" alt="" width="1301" height="199" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/18-wget-jboss.png 1301w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/18-wget-jboss-300x46.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/18-wget-jboss-768x117.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/18-wget-jboss-1024x157.png 1024w" sizes="auto, (max-width: 1301px) 100vw, 1301px" /><figcaption id="caption-attachment-72" class="wp-caption-text">wget jboss</figcaption></figure>
<p style="text-align: justify;">Setelah semua file terdownload (dalam bentuk zip), lalu ekstrak dan buat beberapa link sebagai <em>shortcut</em> untuk menuju folder tersebut. caranya:</p>
<pre><strong>sudo unzip jboss-as-7.1.1.Final.zip
sudo unzip ejbca_ce_6_3_1_1.zip
sudo ln -s /opt/ejbca_ce_6_3_1_1 ejbca
sudo ln -s /opt/jboss-as-7.1.1.Final jboss</strong></pre>
<p style="text-align: justify;">lalu masukkan perintah berikut:</p>
<pre><strong>export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk/
</strong><strong>export PATH=$JAVA_HOME/bin:$PATH
</strong><strong>export JBOSS_HOME=/opt/jboss
</strong><strong>export PATH=$PATH:$JBOSS_HOME/bin:$PATH
</strong><strong>export APPSRV_HOME=/opt/jboss
</strong><strong>export PATH=$JBOSS_HOME/bin:$PATH
</strong><strong>export EJBCA_HOME=/opt/ejbca
</strong><strong>export PATH=$EJBCA_HOME/bin:$PATH
</strong><strong>export CLASSPATH=$JAVA_HOME/jre/lib/ext:$CLASSPATH</strong></pre>
<h3 style="text-align: justify;"><strong>Menambahkan Akun User untuk OS</strong></h3>
<p style="text-align: justify;">Sekarang kita akan membuat akun untuk service ejbca. Ada 2 akun yang akan dibuat di sini, yang pertama akun sistem dengan nama <strong>jboss </strong>dan yang kedua adalah akun <strong>ejbca </strong>untuk keperluan administratif setelah server ini dibuat.</p>
<p style="text-align: justify;">Sangat penting <strong>jboss </strong>memiliki <strong>/bin/bash </strong>dalam sebuah<strong> <em>shell </em></strong>dan sebuah <strong>/opt/jboss </strong>sebagai <em>home directory.</em></p>
<pre><strong>useradd ­s /bin/bash -­r -­d /opt/jboss ­-M -­U jboss</strong>
<strong>useradd -­m -­U -­G jboss,wheel ejbca</strong></pre>
<h3 style="text-align: justify;"><strong>Membuat Direktori untuk Console Log</strong></h3>
<p style="text-align: justify;">Sekarang user service sudah dibuat, kita bisa membuat direktori yang akan menampung <strong>jboss console logs:</strong></p>
<pre><strong>mkdir -­p /var/log/ejbca</strong>
<strong>chown jboss:jboss /var/log/ejbca</strong></pre>
<ul style="text-align: justify;">
<li>Pada tahap ini, server sudah dibuat, mariadb sudah berjalan, dan kita sudah siap untuk melakukan instalasi jboss. Pada tahap ini merupakan tahap yang baik untuk melakukan snapshot (kalau kalian menggunakan <em>Virtual Machine</em>).</li>
</ul>
<h2 style="text-align: justify;">Instalasi JBOSS</h2>
<p style="text-align: justify;">Sekarang adalah saatnya melakukan instalasi JBoss. Kita tidak akan melakukan konfigurasi setiap detailnya (tanpa email, logging default), namun kita akan melakukan cukup perubahan untuk JBoss ini dapat berjalan sesuai dengan yang dibutuhkan untuk menginstall EJBCA 6.3.1.1.</p>
<h3 style="text-align: justify;"><strong>Konfigurasi JBoss Instance (Standalone)</strong></h3>
<p style="text-align: justify;">Pertama, kita akan melakukan konfigurasi Instance JBoss yang nanti akan digunakan oleh EJBCA 6.3.1.1. Namanya &#8220;<strong>standalone&#8221;</strong>, dan hadir secara default dalam JBoss 7.1.1.</p>
<p style="text-align: justify;">Pada direktori <strong>/opt/jboss/bin</strong> terdapat sebuah script yang bernama <strong>standalone.sh</strong> yang merupakan titik utama dari Jboss. Script ini memberi referensi pada sebuah file konfigurasi yang terletak pada folder yang sama bernama <strong>standalone.conf</strong>. Kita tidak akan memodifikasi script startup-nya, tapi kita perlu untuk memodifikasi file konfigurasinya.</p>
<p style="text-align: justify;">Sebagai langkah awal, kita akan mem-backup file konfigurasi defaultnya terlebih dahulu. Caranya:</p>
<pre><strong>cd /opt/jboss/bin
cp standalone.conf standalone.conf.bak</strong></pre>
<p style="text-align: justify;">File konfigurasi tersebut juga berisi satu set option JVM yang nantinya akan kita ubah sedikit. Ini bukanlah perubahan yang wajib, tapi perubahan tersebut dapat mengalokasikan memori lebih pada JVM.</p>
<ul style="text-align: justify;">
<li>Ada beberapa entri yang dinonaktifkan, namun yang penting di sini adalah <strong>JAVA_HOME</strong> dan <strong>JAVA_OPTS</strong>.</li>
</ul>
<pre><strong>vi standalone.conf</strong></pre>
<p style="text-align: justify;">Sesuaikan entri berikut:</p>
<pre><strong>JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk
if [ "x$JAVA_OPTS" = "x" ]; then
   JAVA_OPTS="-Xms128m -Xmx512m -XX:MaxPermSize=256m -Djava.net.preferIPv4Stack=true -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000"</strong></pre>
<h3 style="text-align: justify;"><strong>Menambahkan Service Init JBoss</strong></h3>
<p style="text-align: justify;">script <strong>/opt/jboss/bin/standalone.sh </strong>dapat selalu digunakan untuk menjalankan dan memberhentikan jboss secara manual. Namun, kita perlu mengkonfigurasi sebuah service dengan nama <strong>&#8220;ejbca&#8221; </strong>untuk mengatasi proses tersebut. Untungnya, jboss memberikan sebuah script untuk kita bisa menggunakannya:</p>
<ul style="text-align: justify;">
<li>Saya tahu akan sedikit bingungmemberi nama &#8220;<strong>ejbca&#8221; </strong>untuk sebuah jboss service, tapi saya berasumsi bahwa instance jboss hanya akan berjalan untuk aplikasi ejbca dan tidak digunakan untuk tujuan atau aplikasi lainnya.</li>
<li>script init itu sendiri berisi variabel-variabel penting: path untuk menuju <em>home directory </em>JBoss.</li>
</ul>
<p style="text-align: justify;">Pertama, kita akan mengcopy file contoh yang diberikan Jboss ke lokasi yang tepat:</p>
<pre><strong>cp /opt/jboss/bin/init.d/jboss-­as-­standalone.sh /etc/init.d/ejbca</strong>
<strong>mkdir /etc/ejbca</strong>
<strong>cp /opt/jboss/bin/init.d/jboss­-as.conf /etc/ejbca/ejbca­-init.conf</strong></pre>
<p style="text-align: justify;">Kemudian kita akan memodifikasi kedua file agar bisa digunakan untuk instalasi kita. Berikut adalah contohnya:</p>
<pre><strong>vi /etc/init.d/ejbca</strong></pre>
<pre><strong>### Start ejbca init.d Delta ###</strong>
<strong>### BEGIN INIT INFO</strong>
<strong># chkconfig ­- 345 97 17</strong>
<strong># Provides: ejbca</strong>
<strong># Required­Start: $remote_fs $syslog $network mysqld</strong>
<strong># Required­Stop: $remote_fs $syslog $network</strong>
<strong># Short­Description: ejbca jboss instance</strong>
<strong># Description: ejbca jboss instance</strong>
<strong># Default­Start: 3 4 5</strong>
<strong># Default­Stop: 0 1 2 6</strong>
<strong>### END INIT INFO</strong>
<strong>#</strong>
<strong># processname: ejbca</strong>
<strong># pidfile: /var/run/jboss-­standalone.pid</strong>
<strong># config: /etc/ejbca/ejbca-­init.conf</strong>
<strong>JBOSS_CONF="/etc/ejbca/ejbca-­init.conf"</strong>
<strong>JBOSS_HOME=/opt/jboss</strong>
<strong>prog='ejbca jboss instance'</strong>
<strong>### End ejbca init.d Delta ###</strong></pre>
<p style="text-align: justify;">file <strong>ejbca-init.conf </strong>memiliki 2 variabel yang sangat penting di dalamnya: username proses jboss dan nama log file.</p>
<pre><strong>vi /etc/ejbca/ejbca­-init.conf</strong></pre>
<pre><strong>### Start ejbca-­init.conf ###
# General configuration for the init.d scripts,
# not necessarily for JBoss AS itself.
# The username who should own the process.
#
JBOSS_USER=jboss
# The amount of time to wait for startup
#
# STARTUP_WAIT=10
# The amount of time to wait for shutdown
#
# SHUTDOWN_WAIT=10
# Location to keep the console log
#
JBOSS_CONSOLE_LOG=/var/log/ejbca/console.log
### End ejbca­init.conf ###</strong></pre>
<p style="text-align: justify;">Terakhir, kita menggunakan <strong>chkconfig </strong>untuk menambahkan service tersebut kedalam ierarki <strong>rc </strong> dan mengatur <em>runlevel-</em>nya:</p>
<pre><strong>chkconfig ­­--add ejbca</strong>
<strong>chkconfig --­­level 345 mysql on</strong>
<strong>chkconfig ­­--level 345 ejbca on</strong></pre>
<ul style="text-align: justify;">
<li>file init harus tetap dimiliki oleh <strong>root:root</strong>, dengan <em>default permissions.</em></li>
</ul>
<h3 style="text-align: justify;"><strong>Menambahkan Export Class pada JBoss</strong></h3>
<p style="text-align: justify;">Sekarang kita akanmemulai <em>tweak </em>pada konfigurasi JBoss. Kita akan memulai dengan mengaktifkan beberapa fungsi keamanan yang dibutuhkan oleh EJBCA 6.3.1.1. Caranya:</p>
<pre><strong>cd /opt/jboss/modules/sun/jdk/main
vi module.xml</strong></pre>
<p style="text-align: justify;">Tambahkan beberapa entry berikut pada bagian &#8220;System export&#8221;:</p>
<pre><strong>&lt;path name="sun/security/x509"/&gt;
&lt;path name="sun/security/pkcs11"/&gt;
&lt;path name="sun/security/pkcs11/wrapper"/&gt;
&lt;path name="sun/security/action"/&gt;</strong></pre>
<figure id="attachment_90" aria-describedby="caption-attachment-90" style="width: 377px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-90" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/39-isi-module-xml.png" alt="" width="377" height="352" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/39-isi-module-xml.png 377w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/39-isi-module-xml-300x280.png 300w" sizes="auto, (max-width: 377px) 100vw, 377px" /><figcaption id="caption-attachment-90" class="wp-caption-text">Penambahan entry pada System Export</figcaption></figure>
<h3 style="text-align: justify;"><strong>Menambahkan MariaDB Java Client</strong></h3>
<p style="text-align: justify;">JBoss merupakan sebuah aplikasi yang <em>running </em>dengan java. Agar JBoss dapat “ngobrol” dengan MariaDB maka kita akan membutuhkan sebuah penghubung bernama MariaDB Java Client. Untuk itu tahap pertama yang harus dilakukan adalah download MariaDB Java Client tersebut, link sudah saya sertakan di “alat dan bahan”. (versi yang saya gunakan adalah Mariadb-java-client-1.2.0)</p>
<pre><strong>cd /opt/jboss/modules/org
mkdir -p mariadb/main
cd mariadb/main
cp /opt/mariadb-java-client-1.2.0.jar /opt/jboss/modules/org/mariadb/main</strong></pre>
<p style="text-align: justify;">Setelah selesai, kita masih perlu membuat 2 file lagi dan meletakkannya pada lokasi yang sama dengan <strong>mariadb-java-client-1.2.0.jar</strong> yaitu <strong>mariadb-java-client-1.2.0.jar.index</strong> dan <strong>module.xml</strong>. Caranya:</p>
<pre><strong>vi mariadb-java-client-1.2.0.jar.index</strong></pre>
<p style="text-align: justify;">isinya:</p>
<pre><strong>org/mariadb/jdbc/internal/common/packet
META-INF/maven
org/mariadb/jdbc/internal/common/query/parameters
org/mariadb/jdbc/internal/mysql/packet/commands
org
META-INF
org/mariadb/jdbc/internal/common/packet/commands
META-INF/maven/org.mariadb.jdbc/mariadb-java-client
META-INF/maven/org.mariadb.jdbc
org/mariadb/jdbc/internal/common/queryresults
org/mariadb/jdbc/internal
org/mariadb/jdbc/internal/mysql
org/mariadb/jdbc/internal/common/query
org/mariadb
org/mariadb/jdbc/internal/mysql/packet
META-INF/services
org/mariadb/jdbc
org/mariadb/jdbc/internal/common
org/mariadb/jdbc/internal/common/packet/buffer
</strong></pre>
<pre><strong>vi module.xml</strong></pre>
<p style="text-align: justify;">isinya:</p>
<pre><strong>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
&lt;module xmlns="urn:jboss:module:1.1" name="org.mariadb"&gt;
  &lt;resources&gt;
    &lt;resource-root path="mariadb-java-client-1.2.0.jar"/&gt;
   &lt;/resources&gt;
   &lt;dependencies&gt;
    &lt;module name="javax.api"/&gt;
    &lt;module name="javax.transaction.api"/&gt;
   &lt;/dependencies&gt;
&lt;/module&gt;</strong></pre>
<h3 style="text-align: justify;"><strong>Starting JBoss</strong></h3>
<p style="text-align: justify;">Beberapa tweak harus kita lakukan setelah JBoss berjalan. Karena beberapa perintah di atas ada yang dijalankan sebagai <strong>root</strong>, kita akan membuat user <strong>jboss</strong> menjadi owner dari folder jboss yang sudah kita extract.</p>
<ul style="text-align: justify;">
<li>Jangan jalankan perintah “<strong>chown -R root:root /opt/jboss</strong>” – kita ingin agar <strong>root</strong> tetap menjadi pemilik dari Symbolic link.</li>
</ul>
<p style="text-align: justify;">Maka jalankan perintah berikut:</p>
<pre><strong>chown -R jboss:jboss /opt/jboss-as-7.1.1.Final</strong></pre>
<p style="text-align: justify;">Sekarang kita testing bagaimana script init yang sudah kita buat tadi bekerja. Caranya:</p>
<pre style="text-align: justify;"><strong>service ejbca start</strong></pre>
<p style="text-align: justify;">Sekarang kita bisa berharap kalau service dari init script tadi berjalan. Kita bisa melihat console log yang sudah kita buat di <strong>/var/log/ejbca, </strong>caranya:</p>
<pre><strong>tail -­f /var/log/ejbca/console.log</strong></pre>
<p style="text-align: justify;">Seharusnya kamu akan melihat baris seperti ini di akhir file tersebut:</p>
<p style="text-align: justify;"><img loading="lazy" decoding="async" class="alignnone size-full wp-image-1596" src="http://blog.goreinnamah.com/wp-content/uploads/2017/11/Screenshot-from-2017-11-27-20-36-07.png" alt="" width="883" height="224" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/11/Screenshot-from-2017-11-27-20-36-07.png 883w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/Screenshot-from-2017-11-27-20-36-07-300x76.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/Screenshot-from-2017-11-27-20-36-07-768x195.png 768w" sizes="auto, (max-width: 883px) 100vw, 883px" /></p>
<p style="text-align: justify;">Dari log di atas, kita bisa tahu kalau:</p>
<ul style="text-align: justify;">
<li>halaman web jboss admin hanya bisa diakses melalui <strong>localhost. </strong>Jadi kalau kamu belum punya browser dalam servermu, segeralah install.</li>
<li>URL default dari halaman admin tersebut adalah <strong>http://localhost:9990/console/App.html#server-overview</strong></li>
<li>Ketika kamu melihat baris &#8220;<strong>7.1.1.Final &#8220;Brontes&#8221; started in xxxx ms&#8221;, </strong>berarti JBoss sudah selesai <em>loading.</em></li>
</ul>
<h3 style="text-align: justify;"><strong>Menambahkan Data Source</strong></h3>
<p style="text-align: justify;">Sekarang <em>service</em> JBoss sudah berjalan, kita bisa menambahkan data source. Kita akan melakukan ini melalui CLI-nya JBoss, yang akan mengupdate konfigurasi yang berada pada instance <strong>Standalone</strong>. Sebelum melakukan perubahan maka ada baiknya kita membackup konfigurasi awal terlebih dahulu. Caranya (masih dengan user jboss):</p>
<pre><strong>cd /opt/jboss/standalone/configuration
cp standalone.xml standalone.xml.bak</strong></pre>
<p style="text-align: justify;">Sekarang kita akan menuju JBoss CLI dan melakukan beberapa perubahan. Caranya:</p>
<pre><strong>cd /opt/jboss/bin
sh jboss-cli.sh
connect</strong></pre>
<p style="text-align: justify;">Lalu jalankan perintah berikut:</p>
<pre><strong>/subsystem=datasources/jdbc-driver=org.mariadb.jdbc.Driver:add(driver-name=org.mariadb.jdbc.Driver,driver-module-name=org.mariadb,driver-xa-datasource-class-name=org.mariadb.jdbc.MySQLDataSource)
:reload
Exit</strong></pre>
<p style="text-align: justify;">Setelah perintah tersebut dieksekusi maka hasil keluarannya adalah “<strong>Success</strong>” (seperti pada gambar di bawah).</p>
<figure id="attachment_103" aria-describedby="caption-attachment-103" style="width: 1348px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-103" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/43-tambahin-modul-mariadb.png" alt="" width="1348" height="184" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/43-tambahin-modul-mariadb.png 1348w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/43-tambahin-modul-mariadb-300x41.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/43-tambahin-modul-mariadb-768x105.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/43-tambahin-modul-mariadb-1024x140.png 1024w" sizes="auto, (max-width: 1348px) 100vw, 1348px" /><figcaption id="caption-attachment-103" class="wp-caption-text">Mengaktifkan MariaDB Connect</figcaption></figure>
<p style="text-align: justify;">Hal yang kita lakukan pada CLI ini mendefinisikan driver mariadb yang ada pada <strong>/opt/jboss/standalone/configuration/standalone.xml</strong>, kemudian me-reload JBoss.</p>
<p style="text-align: justify;">Hasilnya akan terlihat pada <strong>standalone.xml</strong> seperti gambar berikut:</p>
<figure id="attachment_109" aria-describedby="caption-attachment-109" style="width: 1112px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-109" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/44-membuktikan-mariadb-datasource.png" alt="" width="1112" height="337" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/44-membuktikan-mariadb-datasource.png 1112w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/44-membuktikan-mariadb-datasource-300x91.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/44-membuktikan-mariadb-datasource-768x233.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/44-membuktikan-mariadb-datasource-1024x310.png 1024w" sizes="auto, (max-width: 1112px) 100vw, 1112px" /><figcaption id="caption-attachment-109" class="wp-caption-text">Hasil dari penambahan driver yang dilakukan pada JBoss CLI</figcaption></figure>
<p style="text-align: justify;">Sebagai bukti lagi kalau driver tersebut sudah masuk, kita akan melihat pada log yang tertera di <strong> /var/log/ejbca/console.log</strong>. Namun sebelumnya kita harus me-restart service jboss yang sedang berjalan. Caranya:</p>
<pre><strong>service ejbca restart
</strong><strong>tail /var/log/ejbca/console.log</strong></pre>
<p style="text-align: justify;">Maka kan tampil hasil seperti berikut kalau sukses:</p>
<figure id="attachment_111" aria-describedby="caption-attachment-111" style="width: 1356px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-111" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/45-bukti-mariadb-sudah-running.png" alt="" width="1356" height="498" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/45-bukti-mariadb-sudah-running.png 1356w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/45-bukti-mariadb-sudah-running-300x110.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/45-bukti-mariadb-sudah-running-768x282.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/45-bukti-mariadb-sudah-running-1024x376.png 1024w" sizes="auto, (max-width: 1356px) 100vw, 1356px" /><figcaption id="caption-attachment-111" class="wp-caption-text">MariaDB sudah ada</figcaption></figure>
<h3 style="text-align: justify;"><strong>Menghapus Datasource H2 dan Drivernya</strong></h3>
<p style="text-align: justify;">Secara default, instance <strong>standalone</strong> didefinisikan dengan sebuah h2/hsqldb database connector dan sebuah database contoh. Kita tidak membutuhkan ini, jadi kita akan memodifikasi kembali <strong>standalone.xml</strong> dan menonaktifkannya.</p>
<ul style="text-align: justify;">
<li>Ingat bahwa database instance H2 adalah database yang bersifat sementara di memory yang tidak menyimpan data dalam disk, tidak menyediakan koneksi TCP/IP eksternal dan dapat diabaikan saja.</li>
</ul>
<pre><strong>cd /opt/jboss/standalone/configuration
vi standalone.xml</strong></pre>
<p style="text-align: justify;">Buang bagian berikut:</p>
<pre><strong>&lt;datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true"&gt;
                     &lt;connection-url&gt;jdbc:h2:mem:test;DB_CLOSE_DELAY=-1&lt;/connection-url&gt;
                     &lt;driver&gt;h2&lt;/driver&gt;
                     &lt;security&gt;
                         &lt;user-name&gt;sa&lt;/user-name&gt;
                         &lt;password&gt;sa&lt;/password&gt;
                     &lt;/security&gt;
                 &lt;/datasource&gt;</strong></pre>
<figure id="attachment_119" aria-describedby="caption-attachment-119" style="width: 977px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-119" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/46-buang-exampleDS.png" alt="" width="977" height="125" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/46-buang-exampleDS.png 977w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/46-buang-exampleDS-300x38.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/46-buang-exampleDS-768x98.png 768w" sizes="auto, (max-width: 977px) 100vw, 977px" /><figcaption id="caption-attachment-119" class="wp-caption-text">Buang bagian exampleDS</figcaption></figure>
<p style="text-align: justify;">dan juga buang bagian berikut:</p>
<pre><strong>&lt;driver name="h2" module="com.h2database.h2"&gt; 
                     &lt;xa-datasource-class&gt;org.h2.jdbcx.JdbcDataSource&lt;/xa-datasource-class&gt;
                 &lt;/driver&gt;</strong></pre>
<figure id="attachment_120" aria-describedby="caption-attachment-120" style="width: 616px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-120" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/47-buang-h2-driver.png" alt="" width="616" height="49" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/47-buang-h2-driver.png 616w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/47-buang-h2-driver-300x24.png 300w" sizes="auto, (max-width: 616px) 100vw, 616px" /><figcaption id="caption-attachment-120" class="wp-caption-text">buang h2 driver</figcaption></figure>
<p style="text-align: justify;">setelah itu, kita akan kembali me-restart JBoss dan melihat log yang ada pada <strong>console.log</strong>. apabila kalian perhatikan maka sudah tidak ada lagi</p>
<p style="text-align: justify;"><strong>[org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool — 27) JBAS010403: Deploying JDBC-compliant driver class org.h2.Driver (version 1.3)</strong></p>
<p style="text-align: justify;">dan yang ada hanya</p>
<p style="text-align: justify;"><strong>[org.jboss.as.connector.subsystems.datasources] (management-handler-thread – 4) JBAS010404: Deploying non-JDBC-compliant driver class org.mariadb.jdbc.Driver (version 1.1)</strong></p>
<h3 style="text-align: justify;"><strong>Menambahkan Datasource untuk database EJBCA 6.3.1.1</strong></h3>
<p style="text-align: justify;">Setelah tadi kita menghapus datasource untuk H2, sekarang kita akan menambahkan datasource untuk database EJBCA 6.3.1.1. Fungsinya disini nanti adalah ketika kita mau melakukan instalasi EJBCA 6.3.1.1, maka jboss sudah mengenali nama database yang akan digunakan untuk menyimpan tabel EJBCA 6.3.1.1 serta user dan password untuk mengakses database tersebut. Caranya:</p>
<pre><strong>cd /opt/jboss/bin
sh jboss-cli.sh
connect</strong></pre>
<p style="text-align: justify;">lalu tambahkan file berikut:</p>
<pre><b>data-source add --name=ejbcads --driver-name="org.mariadb.jdbc.Driver" --connection-url="jdbc:mysql://127.0.0.1:3306/&lt;nama_db&gt;" --jndi-name="java:/EjbcaDS" --use-ccm=true --driver-class="org.mariadb.jdbc.Driver" --user-name="&lt;nama_username&gt;" --password="&lt;password&gt;" --validate-on-match=true --background-validation=false --prepared-statements-cache-size=50 --share-prepared-statements=true --min-pool-size=5 --max-pool-size=150 --pool-prefill=true --transaction-isolation=TRANSACTION_READ_COMMITTED --check-valid-connection-sql="select 1;"</b>
</pre>
<ul style="text-align: justify;">
<li>Ubah yang ada di dalam tanda &lt;&gt; sesuai dengan yang kita punya</li>
</ul>
<figure id="attachment_125" aria-describedby="caption-attachment-125" style="width: 1349px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-125" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/49-penambahan-user-untuk-database-dbca-1.png" alt="" width="1349" height="111" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/49-penambahan-user-untuk-database-dbca-1.png 1349w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/49-penambahan-user-untuk-database-dbca-1-300x25.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/49-penambahan-user-untuk-database-dbca-1-768x63.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/49-penambahan-user-untuk-database-dbca-1-1024x84.png 1024w" sizes="auto, (max-width: 1349px) 100vw, 1349px" /><figcaption id="caption-attachment-125" class="wp-caption-text">penambahan data source untuk EJBCA 6.3.1.1</figcaption></figure>
<p style="text-align: justify;">Setelah ditambahkan maka datasource tersebut akan masuk ke dalam <strong>standalone.xml</strong>. Untuk membuktikannya, maka lakukan:</p>
<pre><strong>vi /opt/jboss/standalone/configuration/standalone.xml</strong></pre>
<p style="text-align: justify;">Cari dan temukan baris berikut:</p>
<figure id="attachment_136" aria-describedby="caption-attachment-136" style="width: 702px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-136" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/50-mariadb-ada-di-standalone-xml.png" alt="" width="702" height="228" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/50-mariadb-ada-di-standalone-xml.png 702w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/50-mariadb-ada-di-standalone-xml-300x97.png 300w" sizes="auto, (max-width: 702px) 100vw, 702px" /><figcaption id="caption-attachment-136" class="wp-caption-text">datasource yang berhasil ditambahkan</figcaption></figure>
<h3 style="text-align: justify;"><strong>Konfigurasi User Admin untuk JBoss Web</strong></h3>
<p style="text-align: justify;">apabila kita mengakses <strong>console JBoss via web</strong> pada tahap ini melalui <strong>http://&lt;ip atau domain&gt;:9990</strong> maka yang tampil adalah seperti berikut:</p>
<figure id="attachment_132" aria-describedby="caption-attachment-132" style="width: 791px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-132" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/1-2.png" alt="" width="791" height="513" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-2.png 791w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-2-300x195.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-2-768x498.png 768w" sizes="auto, (max-width: 791px) 100vw, 791px" /><figcaption id="caption-attachment-132" class="wp-caption-text">Jboss console via web tapi masih ada error</figcaption></figure>
<p style="text-align: justify;">Hal itu disebabkan oleh belum adanya admin User yang dibuat untuk mengakses console tersebut. Untuk itu kita perlu membuatnya. Caranya:</p>
<pre><strong>cd /opt/jboss/bin
sh add-user.sh</strong></pre>
<p style="text-align: justify;">Maka akan muncul pertanyaan seperti berikut:</p>
<pre> <strong>What type of user do you wish to add?</strong>
<strong> a) Management User (mgmt-users.properties)</strong>
<strong> b) Application User (application-users.properties)</strong>
<strong> (a): a</strong>

<strong>Enter the details of the new user to add.</strong>
<strong> Realm (ManagementRealm) :</strong>
<strong> Username : xxxx</strong>
<strong> Password :</strong>
<strong> Re-enter Password :</strong>
<strong> About to add user 'xxxx' for realm 'ManagementRealm'</strong>
<strong> Is this correct yes/no? yes</strong>
<strong> Added user 'xxxx' to file '/opt/jboss-as-7.1.1.Final/standalone/configuration/mgmt-users.properties'</strong>
<strong> Added user 'xxxx' to file '/opt/jboss-as-7.1.1.Final/domain/configuration/mgmt-users.properties'</strong></pre>
<ul style="text-align: justify;">
<li>“What type of user do you wish to add?”<b> → </b>isi dengan “a”</li>
<li>“Realm” <b>→</b> enter saja.</li>
<li>“username” <b>→</b> Isi dengan username yang kalian mau.</li>
<li>“Password” <b>→</b> Isi dengan password yang kalian mau.</li>
<li>“Re-Enter Password” <b>→</b> Ulangi kembali dengan password yang sama.</li>
<li>“yes/no” <b>→</b> pilih “yes”</li>
</ul>
<p style="text-align: justify;">Pada saat ini seharusnya kita sudah bisa mengakses interface dari <strong>JBoss Web Console</strong> dan mengganti beberapa item. Namun pada saat ini kita belum perlu untuk mengganti apapun:</p>
<ul style="text-align: justify;">
<li>Ini adalah user spesifik untuk JBoss yang tidak digunakan dimanapun.</li>
<li>Ini adalah tahapan yang bagus untuk mengambil snapshot vm.</li>
</ul>
<p style="text-align: justify;">Sekarang mari kita coba user tersebut. caranya masuk ke browser dan ketikkan <strong>http://&lt;ip atau domain&gt;:9990/console/App.html. </strong>Maka akan muncul tampilan seperti berikut:</p>
<figure id="attachment_140" aria-describedby="caption-attachment-140" style="width: 1375px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-140" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/1-3.png" alt="" width="1375" height="468" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-3.png 1375w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-3-300x102.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-3-768x261.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-3-1024x349.png 1024w" sizes="auto, (max-width: 1375px) 100vw, 1375px" /><figcaption id="caption-attachment-140" class="wp-caption-text">JBoss web console</figcaption></figure>
<p style="text-align: justify;">Masukkan username dan password sesuai dengan yang baru saja kita input. Apabila benar maka akan muncul tampilan seperti berikut:</p>
<figure id="attachment_141" aria-describedby="caption-attachment-141" style="width: 962px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-141" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/1-4.png" alt="" width="962" height="606" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-4.png 962w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-4-300x189.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-4-768x484.png 768w" sizes="auto, (max-width: 962px) 100vw, 962px" /><figcaption id="caption-attachment-141" class="wp-caption-text">Web Console JBoss</figcaption></figure>
<h3 style="text-align: justify;"><strong>Konfigurasi PKCS11 Provider pada EJBCA 6.3.1.1</strong></h3>
<p style="text-align: justify;">Untuk melakukan <em>setup </em>pada PKCS11 di server ini, lakukan beberapa langkah berikut pada terminal:</p>
<ol style="text-align: justify;">
<li>Buat file konfigurasi Luna dengan konten di bawah:<br />
# vi $JAVA_HOME/jre/lib/security/luna.cfg<br />
dan masukkan perintah berikut</li>
</ol>
<pre><strong>#SafeNet Luna</strong>
<strong>name = Luna</strong>
<strong>library = /usr/safenet/lunaclient/lib/libCryptoki2_64.so</strong>
<strong>description = Luna config</strong>
<strong>slot = 1</strong>
<strong>attributes(*,*,*) = {</strong>
<strong>CKA_TOKEN = true</strong>
<strong>}</strong>
<strong>attributes(*,CKO_SECRET_KEY,*) = {</strong>
<strong>CKA_CLASS=4</strong>
<strong>CKA_PRIVATE= true</strong>
<strong>CKA_KEY_TYPE = 21</strong>
<strong>CKA_SENSITIVE= true</strong>
<strong>CKA_ENCRYPT= true</strong>
<strong>CKA_DECRYPT= true</strong>
<strong>CKA_WRAP= true</strong>
<strong>CKA_UNWRAP= true</strong>
<strong>}</strong>
<strong>attributes(*,CKO_PRIVATE_KEY,*) = {</strong>
<strong>CKA_CLASS=3</strong>
<strong>CKA_LABEL=true</strong>
<strong>CKA_PRIVATE = true</strong>
<strong>CKA_DECRYPT=true</strong>
<strong>CKA_SIGN=true</strong>
<strong>CKA_UNWRAP=true</strong>
<strong>}</strong>
<strong>attributes(*,CKO_PUBLIC_KEY,*) = {</strong>
<strong>CKA_CLASS=2</strong>
<strong>CKA_LABEL=true</strong>
<strong>CKA_ENCRYPT = true</strong>
<strong>CKA_VERIFY=true</strong>
<strong>CKA_WRAP=true</strong>
<strong>}</strong></pre>
<blockquote><p>Bisa juga mengganti &#8220;/usr/safenet/lunaclient/lib/libCryptoki2_64.so&#8221; dengan&#8221;/usr/safenet/lunaclient/lib/libshim.so&#8221;</p></blockquote>
<ul style="text-align: justify;">
<li> Modifikasi file <strong>java.security </strong>untuk memasukkan PKCS11. Buka file <strong>java.security </strong>dan lakukan perubahan berikut:<br />
<strong>Untuk Java 6:</strong><br />
<strong># vi $JAVA_HOME/jre/lib/security/java.security</strong></p>
<pre><strong>security.provider.1=sun.security.provider.Sun</strong>
<strong>security.provider.2=sun.security.rsa.SunRsaSign</strong>
<strong>security.provider.3=com.sun.net.ssl.internal.ssl.Provider</strong>
<strong>security.provider.4=com.sun.crypto.provider.SunJCE</strong>
<strong>security.provider.5=sun.security.jgss.SunProvider</strong>
<strong>security.provider.6=sun.security.pkcs11.SunPKCS11 ${java.home}/lib/security/luna.cfg</strong>
<strong>security.provider.7=com.sun.security.sasl.Provider</strong>
<strong>security.provider.8=org.jcp.xml.dsig.internal.dom.XMLDSigRI</strong>
<strong>security.provider.9=sun.security.smartcardio.SunPCSC</strong></pre>
<p><strong>Untuk Java 7:</strong><br />
<strong># vi $JAVA_HOME/jre/lib/security/java.security</strong></p>
<pre><strong>security.provider.1=sun.security.pkcs11.SunPKCS11 ${java.home}/lib/security/nss.cfg</strong>
<strong>security.provider.2=sun.security.provider.Sun</strong>
<strong>security.provider.3=sun.security.rsa.SunRsaSign</strong>
<strong>security.provider.4=sun.security.ec.SunEC</strong>
<strong>security.provider.5=com.sun.net.ssl.internal.ssl.Provider</strong>
<strong>security.provider.6=sun.security.pkcs11.SunPKCS11 ${java.home}/lib/security/luna.cfg</strong>
<strong>security.provider.7=com.sun.crypto.provider.SunJCE</strong>
<strong>security.provider.8=sun.security.jgss.SunProvider</strong>
<strong>security.provider.9=com.sun.security.sasl.Provider</strong>
<strong>security.provider.10=org.jcp.xml.dsig.internal.dom.XMLDSigRI</strong>
<strong>security.provider.11=sun.security.smartcardio.SunPCSC</strong></pre>
</li>
<li>Pilih yang sesuai dengan <em>security provider </em>anda dan kemudian simpan. Pastikan file JAR dari PKCS11 ada di dalam <strong>$JAVA_HOME/jre/lib/ext</strong>.</li>
</ul>
<h3 style="text-align: justify;"><strong>Generate Keys Untuk EJBCA 6.3.1.1</strong></h3>
<p style="text-align: justify;">Tool yang berada pada <strong>$EJBCA_HOME/dist/clientToolBox/ejbcaClientToolBox.sh </strong>digunakan untuk administratif dan men-generate keys. Lakukan beberapa langkah berikut untuk men-generate keys pada SafeNet Luna HSM dengan menggunakan PKCS11:</p>
<pre><strong>cd $EJBCA_HOME
</strong><strong>ant clientToolBox
</strong><strong>dist/clientToolBox/ejbcaClientToolBox.sh PKCS11HSMKeyTool generate /usr/safenet/lunaclient/lib/libCryptoki2_64.so 2048 signKey 1
</strong><strong>dist/clientToolBox/ejbcaClientToolBox.sh PKCS11HSMKeyTool generate /usr/safenet/lunaclient/lib/libCryptoki2_64.so 2048 defaultKey 1
dist/clientToolBox/ejbcaClientToolBox.sh PKCS11HSMKeyTool generate </strong><strong>/usr/safenet/lunaclient/lib/libCryptoki2_64.so 2048 myKey 1</strong></pre>
<figure id="attachment_1603" aria-describedby="caption-attachment-1603" style="width: 1259px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-1603" src="http://blog.goreinnamah.com/wp-content/uploads/2017/11/Screenshot-from-2017-10-31-13-25-59.png" alt="" width="1259" height="155" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/11/Screenshot-from-2017-10-31-13-25-59.png 1259w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/Screenshot-from-2017-10-31-13-25-59-300x37.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/Screenshot-from-2017-10-31-13-25-59-768x95.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/Screenshot-from-2017-10-31-13-25-59-1024x126.png 1024w" sizes="auto, (max-width: 1259px) 100vw, 1259px" /><figcaption id="caption-attachment-1603" class="wp-caption-text">Generating Keys</figcaption></figure>
<p style="text-align: justify;">Ketika mengeksekusi perintah di atas, maka kita akan diminta untuk memasukkan password. Masukkan Password dari partisi SafeNet Luna HSM dan tunggu hingga keys ter-generate. Kunci-kunci ini yang akan digunakan untuk membuat inisial Admin CA, ROOT CA, dan Server CA.</p>
<p style="text-align: justify;">Untuk melakukan pengujian kunci pada HSM yang akan digunakan oleh EJBCA 6.3.1.1 , gunakan perintah berikut dan masukkan password partisinya jika diminta:</p>
<pre style="text-align: justify;"><strong>dist/clientToolBox/ejbcaClientToolBox.sh PKCS11HSMKeyTool test /usr/safenet/lunaclient/lib/libCryptoki2_64.so 1</strong></pre>
<blockquote><p>Slot id adalah 1 dan libCyptoki2_64.so adalah library dari SafeNet Luna HSM</p></blockquote>
<figure id="attachment_1606" aria-describedby="caption-attachment-1606" style="width: 1920px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-1606" src="http://blog.goreinnamah.com/wp-content/uploads/2017/11/2-keys.png" alt="" width="1920" height="885" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/11/2-keys.png 1920w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/2-keys-300x138.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/2-keys-768x354.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/11/2-keys-1024x472.png 1024w" sizes="auto, (max-width: 1920px) 100vw, 1920px" /><figcaption id="caption-attachment-1606" class="wp-caption-text">Test Keys</figcaption></figure>
<h2 style="text-align: justify;"><strong>Instalasi EJBCA</strong></h2>
<p style="text-align: justify;">Sebelum kita melanjutkan, kalian perlu tahu bahwa konfigurasi awal EJBCA 6.3.1.1 dapat dibagi kedalam beberapa bagian yaitu:</p>
<ul style="text-align: justify;">
<li>file-file <strong>.properties</strong> yang ada dalam folder <strong>/opt/ejbca/conf</strong></li>
<li>file keystore awal yang terdapat pada folder <strong>/opt/ejbca/p12</strong></li>
<li>config JBoss di <strong>standalone.xml</strong></li>
</ul>
<p style="text-align: justify;">Kalian juga perlu tahu bahwa beberapa aturan umum untuk bekerja dengan konfigurasi EJBCA 6.3.1.1 , diantaranya:</p>
<ul style="text-align: justify;">
<li>Pertama, anggap bahwa tidak akan ada konfigurasi yang berubah selama proses deploy dan hanya file <strong>ejbca.ear</strong> yang tersentuh dalam aksi kali ini.</li>
<li>Database mariaDB akan terisi secara otomatis saat pertama kali kita melakukan proses deploy, tapi sebaliknya tidak akan tersentuh oleh script <strong>ant</strong> apapun.</li>
<li>Database tidak akan menyimpan data konfigurasi apapun, tetapi akan berpengaruh jika ada perubahan pada konfigurasi yang kita buat.</li>
<li>Perintah <strong>ant.install</strong> mencoba untuk membuat file keystore setiap kali perintah tersebut dijalankan, meskipun file-file tersebut ada.</li>
<li>porsi dari <strong>standalone.xml</strong> dapat diubah baik oleh <strong>ant build</strong> atau <strong>ant install</strong>, tetapi hal tersebut hanya menanggapi perubahan yang kita buat pada file <strong>*.properties.</strong></li>
<li>Setelah instalasi awal selesai, <strong>ant</strong> tidak akan mengubah <strong>standalone.xml</strong> kecuali  kita telah mengubah sebuah file <strong>.properties</strong>.</li>
</ul>
<h3 style="text-align: justify;"><strong>File Properties pada EJBCA</strong></h3>
<p style="text-align: justify;">EJBCA 6.3.1.1 menggunakan text biasa pada file “<strong>.properties</strong>” untuk konfigurasi utamanya. File-file ini akan menjadi rujukan ketika kita meng-compile ejbca.ear dengan ant, dan tidak menjadi referensi oleh aplikasi yang sedang berjalan.</p>
<ul style="text-align: justify;">
<li>file <strong>install.properties</strong> hanya digunakan ketika menjalankan perintah <strong>ant install</strong>, dan bukan saat menjalankan <strong>ant deploy.</strong></li>
<li>Beberapa file sebenarnya berisi paremeter yang menyediakan parsing runtime dari variabel-variabel pada file properties tersebut, tetapi fungsi ini di non-aktifkan secara default.</li>
</ul>
<figure id="attachment_153" aria-describedby="caption-attachment-153" style="width: 653px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-153" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/52.png" alt="" width="653" height="333" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/52.png 653w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/52-300x153.png 300w" sizes="auto, (max-width: 653px) 100vw, 653px" /><figcaption id="caption-attachment-153" class="wp-caption-text">file properties yang ada di EJBCA</figcaption></figure>
<p style="text-align: justify;">Pertama, EJBCA 6.3.1.1 memiliki beberapa contoh dari semua file properties yang ada pada direktori <strong>/opt/ejbca/conf. </strong>yang kita butuhkan adalah:</p>
<p style="text-align: justify;">
<table id="tablepress-12" class="tablepress tablepress-id-12">
<thead>
<tr class="row-1">
	<th class="column-1"> Properties</th><th class="column-2">Penjelasan</th>
</tr>
</thead>
<tbody class="row-striping row-hover">
<tr class="row-2">
	<td class="column-1">catoken.properties</td><td class="column-2">mendefinisikan nama key, password dan alias untuk HSM. file ini digunakan ketika menambahkan HSM ketika melakukan 'ant install'</td>
</tr>
<tr class="row-3">
	<td class="column-1">certstore.properties</td><td class="column-2">mendefinisikan variabel penyimpanan sertifikat</td>
</tr>
<tr class="row-4">
	<td class="column-1">cesecore.properties</td><td class="column-2">mendefinisikan variabel core security engine</td>
</tr>
<tr class="row-5">
	<td class="column-1">crlstore.properties</td><td class="column-2">mendefinisikan variabel penyimpanan CRL</td>
</tr>
<tr class="row-6">
	<td class="column-1">database.properties</td><td class="column-2">mendefinisikan bagaimana EJBCA akan mengakses database<br />
</td>
</tr>
<tr class="row-7">
	<td class="column-1">extendedkeyusage.properties</td><td class="column-2">mendefinisikan oid dan nama dari oid tersebut</td>
</tr>
<tr class="row-8">
	<td class="column-1">ejbca.properties</td><td class="column-2">mendefinisikan variabel basic untuk EJBCA itu sendiri</td>
</tr>
<tr class="row-9">
	<td class="column-1">install.properties</td><td class="column-2">digunakan oleh "ant install" selama instalasi</td>
</tr>
<tr class="row-10">
	<td class="column-1">mail.properties</td><td class="column-2">mendefinisikan bagaiman EJBCA SMTP connector akan berfungsi</td>
</tr>
<tr class="row-11">
	<td class="column-1">ocsp.properties</td><td class="column-2">mendefinisikan bagaimana OCSP itu akan bekerja</td>
</tr>
<tr class="row-12">
	<td class="column-1">va.properties</td><td class="column-2">mendefinisikan bagaimana validation authority akan bekerja</td>
</tr>
<tr class="row-13">
	<td class="column-1">va-publisher.properties</td><td class="column-2">mendefinisikan bagaimana validation authority akan mengakses database</td>
</tr>
<tr class="row-14">
	<td class="column-1">web.properties</td><td class="column-2">mendefinisikan variabel untuk web interface EJBCA</td>
</tr>
</tbody>
</table>
</p>
<p style="text-align: justify;">Ada beberapa file <strong>jndi.*</strong> dan sebuah file yang disebut <strong>extendedkeyusage.properties</strong> dalam folder conf tersebut. Mereka dibutuhkan, namun tidak akan diotak-atik lebih jauh, dan bisa diabaikan saja. Ada juga 2 folder lainnya yaitu <strong>logdevices</strong> dan <strong>plugins</strong>, yang bisa diabaikan juga.</p>
<p style="text-align: justify;">Pertama, kita akan membuat direktori baru yang disebut <strong>/opt/ejbca/conf/sample</strong> dan memindahkan semua file <strong>.sample</strong> ke dalam folder tersebut untuk tujuan backup. Caranya</p>
<pre><strong>cd /opt/ejbca/conf
</strong><strong>mkdir sample
</strong><strong>mv *.sample sample/</strong></pre>
<p style="text-align: justify;">lalu kemudian kita akan meng-copy beberapa file yang dibutuhkan ke direktori utamanya. Caranya:</p>
<pre><strong>cp sample/certstore.properties.sample certstore.properties
</strong><strong>cp sample/catoken.properties.sample catoken.properties</strong>
<strong>cp sample/cesecore.properties.sample cesecore.properties</strong>
<strong>cp sample/crlstore.properties.sample crlstore.properties</strong>
<strong>cp sample/database.properties.sample database.properties</strong>
<strong>cp sample/ejbca.properties.sample ejbca.properties</strong>
<strong>cp sample/install.properties.sample install.properties</strong>
<strong>cp sample/mail.properties.sample mail.properties</strong>
<strong>cp sample/web.properties.sample web.properties
</strong></pre>
<figure id="attachment_154" aria-describedby="caption-attachment-154" style="width: 852px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-154" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/53-copy-properties-ejbca-conf.png" alt="" width="852" height="178" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/53-copy-properties-ejbca-conf.png 852w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/53-copy-properties-ejbca-conf-300x63.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/53-copy-properties-ejbca-conf-768x160.png 768w" sizes="auto, (max-width: 852px) 100vw, 852px" /><figcaption id="caption-attachment-154" class="wp-caption-text">FIle properties yang kita butuhkan</figcaption></figure>
<p style="text-align: justify;">Kita akan mengkonfigurasi file-file ini kemudian menguji coba instalasinya sebelum melakukan tindakan. Dengan hanya file di atas tersebut maka EJBCA 6.3.1.1 akan beroperasi tanpa <strong>Validation Authority</strong>.</p>
<p style="text-align: justify;">mari kita mulai:</p>
<h3 style="text-align: justify;"><strong>catoken.propeties</strong></h3>
<p style="text-align: justify;"><strong>#### Start catoken.properties ###</strong></p>
<p style="text-align: justify;"><strong># Ini merupakan kombinasi dari CA dan CryptoToken Properties yang nanti ada di Admin-GUI</strong></p>
<p style="text-align: justify;"><strong># Common for all HSM are:</strong><br />
<strong># * certSignKey &#8211; the key to be used when signing certificates, can be RSA or ECDSA.</strong><br />
<strong># * crlSignKey &#8211; the key to be used when signing CLSs, can be RSA or ECDSA.</strong><br />
<strong># * keyEncryptKey &#8211; the key to be used for key encryption and decryption, this must be an RSA key.</strong><br />
<strong># * testKey &#8211; the key to be used by HSM status checks, can be RSA or ECDSA.</strong><br />
<strong># * hardTokenEncrypt &#8211; the key to be used for hardtoken encryption and decryption. PUK will be decrypted by this key.</strong><br />
<strong># * defaultKey &#8211; the key to be used when no other key is defined for a purpose. If this is the only definition then this key will be used for all purposes.</strong><br />
<strong>#</strong></p>
<p style="text-align: justify;"><strong># Utimaco HSM Crypto Token example:</strong></p>
<p style="text-align: justify;"><strong>#Configuration file were you define key name, password and key alias for the HSM.</strong><br />
<span style="color: #ff0000;"><strong>sharedLibrary=/usr/safenet/lunaclient/lib/libCryptoki2_64.so</strong></span><br />
<span style="color: #ff0000;"><strong>slotLabelType=SLOT_NUMBER</strong></span><br />
<span style="color: #ff0000;"><strong>slotLabelValue=1</strong></span></p>
<p style="text-align: justify;"><strong>#pin dari HSM</strong><br />
<span style="color: #ff0000;"><strong>pin=J7/5-KLxT-LT9L-Csjq</strong></span><br />
<span style="color: #ff0000;"><strong>certSignKey=signKey</strong></span><br />
<span style="color: #ff0000;"><strong>clrSignKey=signKey</strong></span><br />
<span style="color: #ff0000;"><strong>defaultKey=signKey</strong></span></p>
<h4 style="text-align: justify;"><strong>### End catoken.properties ###</strong></h4>
<figure id="attachment_1611" aria-describedby="caption-attachment-1611" style="width: 1071px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-1611" src="http://blog.goreinnamah.com/wp-content/uploads/2017/12/Screenshot-from-2017-12-01-13-17-43.png" alt="" width="1071" height="355" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/12/Screenshot-from-2017-12-01-13-17-43.png 1071w, https://blog.goreinnamah.com/wp-content/uploads/2017/12/Screenshot-from-2017-12-01-13-17-43-300x99.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/12/Screenshot-from-2017-12-01-13-17-43-768x255.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/12/Screenshot-from-2017-12-01-13-17-43-1024x339.png 1024w" sizes="auto, (max-width: 1071px) 100vw, 1071px" /><figcaption id="caption-attachment-1611" class="wp-caption-text">catoken.properties</figcaption></figure>
<h3 style="text-align: justify;"><strong>certstore.properties</strong></h3>
<p style="text-align: justify;"><strong>### Start certstore.properties ###</strong></p>
<p style="text-align: justify;"><strong># ———— RFC 4387 Certificate store configuration ———————</strong><br />
<span style="color: #ff0000;"><strong>certstore.enabled=true</strong></span></p>
<p style="text-align: justify;"><strong># This is the web directory that the web interface for the cert store will use. </strong></p>
<p style="text-align: justify;"><strong># This is an unused alternate location</strong><br />
<span style="color: #ff0000;"><strong>certstore.contextroot=/ejbca/publicweb/certificates</strong></span></p>
<h4 style="text-align: justify;"><b>### End certstore.properties ###</b></h4>
<figure id="attachment_158" aria-describedby="caption-attachment-158" style="width: 831px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-158" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/54-certstore-properties.png" alt="" width="831" height="174" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/54-certstore-properties.png 831w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/54-certstore-properties-300x63.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/54-certstore-properties-768x161.png 768w" sizes="auto, (max-width: 831px) 100vw, 831px" /><figcaption id="caption-attachment-158" class="wp-caption-text">certstore.properties</figcaption></figure>
<h3 style="text-align: justify;"><strong>cesecore.properties</strong></h3>
<p style="text-align: justify;"><strong>### Start cesecore.properties ###</strong></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>allow.external-dynamic.configuration=true</strong></span></p>
<p style="text-align: justify;"><strong># You do not need to configure this password!</strong><br />
<strong>#ca.keystorepass=!secret!</strong></p>
<p style="text-align: justify;"><strong>#ca.rngalgorithm=SHA1PRNG</strong><br />
<strong>#ca.serialnumberoctetsize=8</strong></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>ca.toolateexpiredate=80000000</strong></span><br />
<strong>#ca.toolateexpiredate=2038-01-19 03:14:08+00:00</strong></p>
<p style="text-align: justify;"><strong>#ca.doPermitExtractablePrivateKeys=true</strong></p>
<p style="text-align: justify;"><strong>#forbidden.characters = \n\r;!\u0000%`?$~</strong><br />
<strong>#intresources.preferredlanguage=EN</strong><br />
<strong>#intresources.secondarylanguage=SE</strong></p>
<p style="text-align: justify;"><strong>#These variables will enable explicit logging. You can turn them off later</strong><br />
<span style="color: #ff0000;"><strong>securityeventsaudit.implementation.X=org.cesecore.audit.impl.log4j.Log4jDevice</strong></span><br />
<span style="color: #ff0000;"><strong>securityeventsaudit.implementation.X=org.cesecore.audit.impl.integrityprotected.IntegrityProtectedDevice</strong></span></p>
<p style="text-align: justify;"><strong>#securityeventsaudit.implementation.0=null</strong><br />
<strong>#securityeventsaudit.implementation.1=null</strong></p>
<p style="text-align: justify;"><strong>#securityeventsaudit.exporter.X=org.cesecore.audit.impl.AuditExporterDummy (default)</strong><br />
<strong>#securityeventsaudit.exporter.X=org.cesecore.audit.impl.AuditExportCsv</strong><br />
<strong>#securityeventsaudit.exporter.X=org.cesecore.audit.impl.AuditExporterXml</strong><br />
<strong>#securityeventsaudit.deviceproperty.X.key.subkey=value</strong></p>
<p style="text-align: justify;"><strong># More log config below </strong><br />
<span style="color: #ff0000;"><strong>securityeventsaudit.implementation.0=org.cesecore.audit.impl.log4j.Log4jDevice</strong></span><br />
<span style="color: #ff0000;"><strong>securityeventsaudit.implementation.1=org.cesecore.audit.impl.integrityprotected.IntegrityProtectedDevice</strong></span><br />
<span style="color: #ff0000;"><strong>securityeventsaudit.exporter.1=org.cesecore.audit.impl.AuditExporterXml</strong></span></p>
<p style="text-align: justify;"><strong>#securityeventsaudit.deviceproperty.1.export.dir=/tmp/</strong><br />
<strong>#securityeventsaudit.deviceproperty.1.export.fetchsize=1000</strong><br />
<strong>#securityeventsaudit.deviceproperty.1.validate.fetchsize=1000</strong></p>
<p style="text-align: justify;"><strong>#ecdsa.implicitlyca.q=883423532389192164791648750360308885314476597252960362792450860609699839</strong><br />
<strong>#ecdsa.implicitlyca.a=7fffffffffffffffffffffff7fffffffffff8000000000007ffffffffffc</strong><br />
<strong>#ecdsa.implicitlyca.b=6b016c3bdcf18941d0d654921475ca71a9db2fb27d1d37796185c2942c0a</strong><br />
<strong>#ecdsa.implicitlyca.g=020ffa963cdca8816ccc33b8642bedf905c3d358573d3f27fbbd3b3cb9aaaf</strong><br />
<strong>#ecdsa.implicitlyca.n=883423532389192164791648750360308884807550341691627752275345424702807307</strong></p>
<p style="text-align: justify;"><strong>### End cesecore.properties ###</strong></p>
<figure id="attachment_159" aria-describedby="caption-attachment-159" style="width: 479px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-159" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/55-cesesore-properties-1.png" alt="" width="479" height="42" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/55-cesesore-properties-1.png 479w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/55-cesesore-properties-1-300x26.png 300w" sizes="auto, (max-width: 479px) 100vw, 479px" /><figcaption id="caption-attachment-159" class="wp-caption-text">cesecore.properties 1</figcaption></figure>
<figure id="attachment_160" aria-describedby="caption-attachment-160" style="width: 853px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-160" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/56-cesesore-properties-2.png" alt="" width="853" height="94" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/56-cesesore-properties-2.png 853w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/56-cesesore-properties-2-300x33.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/56-cesesore-properties-2-768x85.png 768w" sizes="auto, (max-width: 853px) 100vw, 853px" /><figcaption id="caption-attachment-160" class="wp-caption-text">cesecore.properties 2</figcaption></figure>
<h3 style="text-align: justify;"><strong>crlstore.properties</strong></h3>
<p style="text-align: justify;"><strong>### Start crlstore.properties ###</strong></p>
<p style="text-align: justify;"><strong># This is all very similar to certstore.properties</strong><br />
<strong># ———— RFC 4387 CRL store configuration ———————</strong><br />
<span style="color: #ff0000;"><strong>crlstore.enabled=true</strong></span><br />
<strong>#crlstore.contextroot=/crls</strong><br />
<span style="color: #ff0000;"><strong>crlstore.contextroot=/ejbca/publicweb/crls</strong></span></p>
<p style="text-align: justify;"><strong>### End crlstore.properties ###</strong></p>
<figure id="attachment_161" aria-describedby="caption-attachment-161" style="width: 818px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-161" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/57-crlstore-properties.png" alt="" width="818" height="174" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/57-crlstore-properties.png 818w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/57-crlstore-properties-300x64.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/57-crlstore-properties-768x163.png 768w" sizes="auto, (max-width: 818px) 100vw, 818px" /><figcaption id="caption-attachment-161" class="wp-caption-text">crlstore.properties</figcaption></figure>
<h3 style="text-align: justify;"><strong>database.properties</strong></h3>
<p style="text-align: justify;"><strong>### Start database.properties ###</strong></p>
<p style="text-align: justify;"><strong># ————- Database configuration ————————</strong></p>
<p style="text-align: justify;"><strong>#This variable is used in our standalone.xml &lt;datasource&gt; stanza</strong><br />
<span style="color: #ff0000;"><strong>datasource.jndi-name=EjbcaDS</strong></span></p>
<p style="text-align: justify;"><strong># This is the TYPE of db, not the NAME OF the db</strong><br />
<span style="color: #ff0000;"><strong>database.name=mysql</strong></span></p>
<p style="text-align: justify;"><strong># Be sure to use utf-8</strong><br />
<span style="color: #ff0000;"><strong>database.url=jdbc:mysql://127.0.0.1:3306/ejbcadb?characterEncoding=UTF-8  </strong></span><br />
<span style="color: #ff0000;"><strong>database.driver=org.mariadb.jdbc.Driver</strong></span></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>database.username=ejbcadbuser</strong></span></p>
<p style="text-align: justify;"><strong># Change this to your mysql user password: </strong><br />
<span style="color: #ff0000;"><strong>database.password=pumpkin</strong></span></p>
<p style="text-align: justify;"><strong>### End database.properties ###</strong></p>
<figure id="attachment_166" aria-describedby="caption-attachment-166" style="width: 463px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-166" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/58-database-properties-1.png" alt="" width="463" height="244" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/58-database-properties-1.png 463w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/58-database-properties-1-300x158.png 300w" sizes="auto, (max-width: 463px) 100vw, 463px" /><figcaption id="caption-attachment-166" class="wp-caption-text">database.properties 1</figcaption></figure>
<figure id="attachment_167" aria-describedby="caption-attachment-167" style="width: 699px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-167" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/59-database-properties-2.png" alt="" width="699" height="359" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/59-database-properties-2.png 699w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/59-database-properties-2-300x154.png 300w" sizes="auto, (max-width: 699px) 100vw, 699px" /><figcaption id="caption-attachment-167" class="wp-caption-text">database.properties 2</figcaption></figure>
<figure id="attachment_170" aria-describedby="caption-attachment-170" style="width: 430px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-170" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/1-5.png" alt="" width="430" height="181" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-5.png 430w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-5-300x126.png 300w" sizes="auto, (max-width: 430px) 100vw, 430px" /><figcaption id="caption-attachment-170" class="wp-caption-text">database.properties 3</figcaption></figure>
<h3 style="text-align: justify;"><strong>ejbca.properties</strong></h3>
<p style="text-align: justify;"><strong>###Start ejbca.properties ###</strong></p>
<p style="text-align: justify;"><strong># The next two variables are very important… </strong><br />
<span style="color: #ff0000;"><strong>appserver.home=/opt/jboss</strong></span><br />
<span style="color: #ff0000;"><strong>appserver.type=jboss</strong></span></p>
<p style="text-align: justify;"><strong># Initially, we will set this to false. Once the install is complete, we change</strong><br />
<strong># this to true.</strong><br />
<strong>#ejbca.productionmode=true</strong><br />
<span style="color: #ff0000;"><strong>ejbca.productionmode=ca</strong></span></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>allow.external-dynamic.configuration=true</strong></span></p>
<p style="text-align: justify;"><strong># Don’t set these!</strong><br />
<strong>#ca.xkmskeystorepass=</strong><br />
<strong>#ca.cmskeystorepass=</strong></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>approval.defaultrequestvalidity=28800</strong></span><br />
<span style="color: #ff0000;"><strong>approval.defaultapprovalvalidity=28800</strong></span><br />
<strong>#approval.excludedClasses=org.ejbca.extra.caservice.ExtRACAServiceWorker</strong><br />
<strong>#approval.excludedClasses=org.ejbca.core.protocol.cmp.CmpMessageDispatcherSessionBean</strong><br />
<strong>#approval.excludedClasses=org.ejbca.core.protocol.cmp.RevocationMessageHandler</strong><br />
<strong>#approval.excludedClasses=</strong></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>healthcheck.amountfreemem=32</strong></span><br />
<span style="color: #ff0000;"><strong>healthcheck.dbquery=Select 1 From CertificateData where fingerprint=’XX’</strong></span><br />
<span style="color: #ff0000;"><strong>healthcheck.authorizedips=127.0.0.1</strong></span><br />
<span style="color: #ff0000;"><strong>healthcheck.catokensigntest=true</strong></span><br />
<span style="color: #ff0000;"><strong>healthcheck.publisherconnections=true</strong></span><br />
<strong>#healthcheck.maintenancefile=~/maintenance.properties</strong><br />
<strong>#healthcheck.maintenancepropertyname=DOWN_FOR_MAINTENANCE</strong><br />
<span style="color: #ff0000;"><strong>healthcheck.okmessage=ALLOK</strong></span><br />
<span style="color: #ff0000;"><strong>healthcheck.sendservererror=true</strong></span><br />
<strong>#healthcheck.customerrormessage=EJBCANOTOK</strong></p>
<p style="text-align: justify;"><strong># It’s important to change this to 8:</strong><br />
<span style="color: #ff0000;"><strong>ejbca.passwordlogrounds=8</strong></span></p>
<p style="text-align: justify;"><strong>#——————- CLI settings ————-</strong><br />
<span style="color: #ff0000;"><strong>ejbca.cli.defaultusername=apaaja</strong></span><br />
<span style="color: #ff0000;"><strong>ejbca.cli.defaultpassword=bebaspokoknya</strong></span></p>
<p style="text-align: justify;"><strong>### End ejbca.properties ###</strong></p>
<figure id="attachment_1617" aria-describedby="caption-attachment-1617" style="width: 448px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-1617" src="http://blog.goreinnamah.com/wp-content/uploads/2017/12/Screenshot-from-2017-12-01-13-43-25.png" alt="" width="448" height="350" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/12/Screenshot-from-2017-12-01-13-43-25.png 448w, https://blog.goreinnamah.com/wp-content/uploads/2017/12/Screenshot-from-2017-12-01-13-43-25-300x234.png 300w" sizes="auto, (max-width: 448px) 100vw, 448px" /><figcaption id="caption-attachment-1617" class="wp-caption-text">ejbca.properties1</figcaption></figure>
<figure id="attachment_173" aria-describedby="caption-attachment-173" style="width: 782px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-173" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/62-ejbca-properties-2.png" alt="" width="782" height="170" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/62-ejbca-properties-2.png 782w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/62-ejbca-properties-2-300x65.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/62-ejbca-properties-2-768x167.png 768w" sizes="auto, (max-width: 782px) 100vw, 782px" /><figcaption id="caption-attachment-173" class="wp-caption-text">ejbca.properties 2</figcaption></figure>
<figure id="attachment_174" aria-describedby="caption-attachment-174" style="width: 852px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-174" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/63-ejbca-properties-3.png" alt="" width="852" height="506" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/63-ejbca-properties-3.png 852w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/63-ejbca-properties-3-300x178.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/63-ejbca-properties-3-768x456.png 768w" sizes="auto, (max-width: 852px) 100vw, 852px" /><figcaption id="caption-attachment-174" class="wp-caption-text">ejbca.properties 3</figcaption></figure>
<figure id="attachment_175" aria-describedby="caption-attachment-175" style="width: 728px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-175" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/64-ejbca-properties-4.png" alt="" width="728" height="270" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/64-ejbca-properties-4.png 728w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/64-ejbca-properties-4-300x111.png 300w" sizes="auto, (max-width: 728px) 100vw, 728px" /><figcaption id="caption-attachment-175" class="wp-caption-text">ejbca.properties 4</figcaption></figure>
<figure id="attachment_176" aria-describedby="caption-attachment-176" style="width: 850px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-176" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/65-ejbca-properties-5.png" alt="" width="850" height="140" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/65-ejbca-properties-5.png 850w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/65-ejbca-properties-5-300x49.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/65-ejbca-properties-5-768x126.png 768w" sizes="auto, (max-width: 850px) 100vw, 850px" /><figcaption id="caption-attachment-176" class="wp-caption-text">ejbca.properties 5</figcaption></figure>
<h3 style="text-align: justify;"><strong>install.properties</strong></h3>
<p style="text-align: justify;"><strong>### This file is essentially an “answer file” used when running the “ant install” command.</strong><br />
<strong>### The variables listed here are *not* used by ejbca while it is running.</strong></p>
<p style="text-align: justify;"><strong>### Start install.properties ###</strong></p>
<p style="text-align: justify;"><strong># In every case that “CA” is mentioned in this file, it refers to the “management” CA ONLY.</strong></p>
<p style="text-align: justify;"><strong># This will be the initial name of the management CA instance</strong><br />
<strong># ejbca will use this for administration purpose, not your production CAs</strong><br />
<strong># Note that the CN given here is NOT the FQDN of your CA!</strong><br />
<strong># Why does this matter? This certificate will be temporarily installed </strong><br />
<strong># on your browser as a trusted root CA, but will not be communicated </strong><br />
<strong># with.</strong><br />
<span style="color: #ff0000;"><strong>ca.name=mgmtca</strong></span><br />
<span style="color: #ff0000;"><strong>ca.dn=CN=mgmtca,O=Your Company,C=US</strong></span></p>
<p style="text-align: justify;"><strong># The token type the administrative CA will use.</strong><br />
<span style="color: #ff0000;"><strong>ca.tokentype=org.cesecore.keys.token.PKCS11CryptoToken</strong></span></p>
<p style="text-align: justify;"><strong>#Password for the administrative CA token. Masukkan sama dengan pin pada catoken.properties</strong><br />
<span style="color: #ff0000;"><strong>ca.tokenpassword=J7/5-KLxT-LT9L-Csjq</strong></span></p>
<p style="text-align: justify;"><strong># This is the path to a “catoken.properties” file that will be created when ‘ant</strong><br />
<strong># install’ is run. It will contain encryption parameters used by the mgmt CA.</strong><br />
<strong># It is only used with hard encryption tokens, and can be ignored if your certs</strong><br />
<strong># will be stored in the ejbca database (which is were we will be putting them.)</strong></p>
<p style="text-align: justify;"><strong># Configuration file were you define key name, password and key alias for the HSM</strong><br />
<span style="color: #ff0000;"><strong>ca.tokenproperties=/opt/ejbca/conf/catoken.properties</strong></span></p>
<p style="text-align: justify;"><strong># THIS IS IMPORTANT</strong><br />
<strong># You can assume that ejbca cannot use EC algorithms for the management CA.</strong><br />
<strong># This does not mean that ejbca cannot issue certificates that use EC.</strong><br />
<strong># It just means that the management CA will use RSA for internal purposes.</strong><br />
<strong># The reason for this limitation is that the various EC algorithms are</strong><br />
<strong># not equally supported by the various java flavors that could be used.</strong><br />
<strong># More importantly, ejbca does not include any sort of logic to identify</strong><br />
<strong># the version of java you are using to limit or correct your options.</strong><br />
<strong># Choosing an unsupported algorithm here leads to a corrupt installation.</strong><br />
<strong># This can waste a great amount of time, so just avoid EC. </strong><br />
<strong># You can use EC later with the actual production CAs you define.</strong></p>
<p style="text-align: justify;"><strong># Keyspec for RSA keys is size of RSA keys (1024, 2048, 4096, 8192).</strong><br />
<span style="color: #ff0000;"><strong>ca.keyspec=2048</strong></span></p>
<p style="text-align: justify;"><strong># The keytype for the administrative CA, can be RSA, ECDSA or DSA</strong><br />
<span style="color: #ff0000;"><strong>ca.keytype=RSA</strong></span></p>
<p style="text-align: justify;"><strong># Even though SHA1 is still largely in use as a certificate hashing</strong><br />
<strong># algorithm, I *strongly* suggest that you go with SHA256WithRSA.</strong><br />
<strong># Also, please note that the “with/With” in the hash names is indeed case-sensitive. </strong><br />
<strong># Stay classy, Oracle.</strong></p>
<p style="text-align: justify;"><strong># SHA1WithRSA, SHA1withECDSA, SHA256WithRSA, SHA256withECDSA.</strong><br />
<span style="color: #ff0000;"><strong>ca.signaturealgorithm=SHA256WithRSA</strong></span></p>
<p style="text-align: justify;"><strong># I set a CA validity of 10 years (including the leap years, rain man)</strong><br />
<span style="color: #ff0000;"><strong>ca.validity=3652</strong></span><br />
<span style="color: #ff0000;"><strong>ca.policy=null</strong></span><br />
<span style="color: #ff0000;"><strong>ca.certificateprofile=ROOTCA</strong></span></p>
<p style="text-align: justify;"><strong>### End install.properties ###</strong></p>
<figure id="attachment_1621" aria-describedby="caption-attachment-1621" style="width: 704px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-1621" src="http://blog.goreinnamah.com/wp-content/uploads/2017/12/install-properties1.png" alt="" width="704" height="143" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/12/install-properties1.png 704w, https://blog.goreinnamah.com/wp-content/uploads/2017/12/install-properties1-300x61.png 300w" sizes="auto, (max-width: 704px) 100vw, 704px" /><figcaption id="caption-attachment-1621" class="wp-caption-text">install.properties1</figcaption></figure>
<figure id="attachment_1622" aria-describedby="caption-attachment-1622" style="width: 905px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-1622" src="http://blog.goreinnamah.com/wp-content/uploads/2017/12/Screenshot-from-2017-12-01-15-09-26.png" alt="" width="905" height="456" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/12/Screenshot-from-2017-12-01-15-09-26.png 905w, https://blog.goreinnamah.com/wp-content/uploads/2017/12/Screenshot-from-2017-12-01-15-09-26-300x151.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/12/Screenshot-from-2017-12-01-15-09-26-768x387.png 768w" sizes="auto, (max-width: 905px) 100vw, 905px" /><figcaption id="caption-attachment-1622" class="wp-caption-text">install.properties2</figcaption></figure>
<figure id="attachment_1620" aria-describedby="caption-attachment-1620" style="width: 853px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-1620" src="http://blog.goreinnamah.com/wp-content/uploads/2017/12/install-properties4.png" alt="" width="853" height="329" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/12/install-properties4.png 853w, https://blog.goreinnamah.com/wp-content/uploads/2017/12/install-properties4-300x116.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/12/install-properties4-768x296.png 768w" sizes="auto, (max-width: 853px) 100vw, 853px" /><figcaption id="caption-attachment-1620" class="wp-caption-text">install.properties3</figcaption></figure>
<h3 style="text-align: justify;"><strong>web.properties</strong></h3>
<p style="text-align: justify;"><strong>### Start web.properties ###</strong></p>
<p style="text-align: justify;"><strong># The key to this portion of the config is understanding that this file affects</strong><br />
<strong># the certificate used by the ejbca admin webpage. In install.properties, we</strong><br />
<strong># defined variables for the management CA root certificate. But that certificate</strong><br />
<strong># is not used for session TLS. The management CA issues a separate “server</strong><br />
<strong># certificate” for that purpose that is defined here.</strong></p>
<p style="text-align: justify;"><strong># ———— Web GUI configuration ———————</strong><br />
<strong># Can not be set to false, commented away means that web will be configured.</strong><br />
<strong>#web.noconfigure=true</strong></p>
<p style="text-align: justify;"><strong># Can not be set to false, commented away means that web will be configured.</strong><br />
<strong># web.nosslconfigure=true</strong></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>java.trustpassword=gantiapaaja</strong></span></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>superadmin.cn=superadmin</strong></span><br />
<span style="color: #ff0000;"><strong>superadmin.dn=CN=${superadmin.cn},O=Your Company,C=US</strong></span></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>superadmin.password=ejbca</strong></span></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>superadmin.batch=true</strong></span></p>
<p style="text-align: justify;"><strong># You do not need to set this password!</strong><br />
<strong>#httpsserver.password=serverpwd</strong></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>httpsserver.hostname=rootca.domainlo.net</strong></span></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>httpsserver.dn=CN=${httpsserver.hostname},O=Your Company,C=US</strong></span></p>
<p style="text-align: justify;"><strong># This is the port that will host the unencrypted Ejbca Public Web page.</strong><br />
<strong># Note that this will be used the CRL and OSCP URLs, although it will be NATted to port 80 by our firewall rules.</strong></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>httpserver.pubhttp=8080</strong></span></p>
<p style="text-align: justify;"><strong># This is the port that will host the encrypted Ejbca Public Web page, *without* client certificate authentication.</strong><br />
<span style="color: #ff0000;"><strong>httpserver.pubhttps=8442</strong></span></p>
<p style="text-align: justify;"><strong># This is the port that will host the encrypted Ejbca Public Web page,</strong><br />
<strong># as well as the Administration page. Accessing content hosted on</strong><br />
<strong># this port requires client certificate authentication.</strong></p>
<p style="text-align: justify;"><strong># Note that the Ejbca Public Web page link to the administration</strong><br />
<strong># page will try to include this port in the URL, regardless of any</strong><br />
<strong># port redirection you may be using. This will fixed at the end of</strong><br />
<strong># the how-to.</strong></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>httpserver.privhttps=8443</strong></span></p>
<p style="text-align: justify;"><strong># Trying to use port 443 will not work here, as it is a “privileged” port.</strong><br />
<strong>#httpserver.external.privhttps=443</strong></p>
<p style="text-align: justify;"><strong>#Don’t set these up unless you use an apache proxy for port translation</strong></p>
<p style="text-align: justify;"><strong>#httpserver.external.fqdn=</strong><br />
<strong>#httpserver.external.fqdn=${httpsserver.hostname}</strong></p>
<p style="text-align: justify;"><strong>#httpsserver.bindaddress.pubhttp=0.0.0.0</strong><br />
<strong>#httpsserver.bindaddress.pubhttps=0.0.0.0</strong><br />
<strong>#httpsserver.bindaddress.privhttps=0.0.0.0</strong></p>
<p style="text-align: justify;"><strong># Who let the Swedes in here?</strong><br />
<strong>#web.availablelanguages=EN,DE,ES,FR,IT,JA,PT,SE,UA,ZH,BS</strong></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>web.availablelanguages=EN,DE,ES,FR,IT,JA,PT,UA,ZH,BS</strong></span><br />
<span style="color: #ff0000;"><strong>web.contentencoding=UTF-8</strong></span></p>
<p style="text-align: justify;"><strong># Well, this doesn’t sound like a good idea. </strong><br />
<strong>#hardtoken.diplaysensitiveinfo=true</strong></p>
<p style="text-align: justify;"><strong>#web.docbaseuri=disabled</strong><br />
<strong>#web.docbaseuri=internal</strong><br />
<strong>#web.docbaseuri=http://www.ejbca.org</strong></p>
<p style="text-align: justify;"><strong>#web.reqcertindb=true</strong></p>
<p style="text-align: justify;"><span style="color: #ff0000;"><strong>web.selfreg.enabled=false</strong></span><br />
<span style="color: #ff0000;"><strong>web.selfreg.defaultcerttype=1</strong></span><br />
<span style="color: #ff0000;"><strong>web.selfreg.certtypes.1.description=User certificate</strong></span><br />
<span style="color: #ff0000;"><strong>web.selfreg.certtypes.1.eeprofile=SOMEPROFILE</strong></span><br />
<span style="color: #ff0000;"><strong>web.selfreg.certtypes.1.certprofile=ENDUSER</strong></span><br />
<strong>#web.selfreg.certtypes.1.usernamemapping=CN</strong><br />
<span style="color: #ff0000;"><strong>web.renewalenabled=false</strong></span><br />
<strong>#web.manualclasspathsenabled=true</strong></p>
<p style="text-align: justify;"><strong>#web.errorpage.notification=An exception has occurred.</strong><br />
<span style="color: #ff0000;"><strong>web.errorpage.notification=ZOMG PWND!!111!!!1!!!1</strong></span></p>
<p style="text-align: justify;"><strong># This setting is good for a lab environment. Don’t use this in production.</strong><br />
<span style="color: #ff0000;"><strong>web.errorpage.stacktrace=true</strong></span></p>
<p style="text-align: justify;"><strong>#web.enableproxiedauth=true</strong><br />
<span style="color: #ff0000;"><strong>web.log.adminremoteip=true</strong></span><br />
<strong>#web.log.adminforwardedip=true</strong></p>
<p style="text-align: justify;"><strong>#### End web.properties ###</strong></p>
<figure id="attachment_180" aria-describedby="caption-attachment-180" style="width: 854px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-180" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/68-web-properties-1.png" alt="" width="854" height="507" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/68-web-properties-1.png 854w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/68-web-properties-1-300x178.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/68-web-properties-1-768x456.png 768w" sizes="auto, (max-width: 854px) 100vw, 854px" /><figcaption id="caption-attachment-180" class="wp-caption-text">web.properties 1</figcaption></figure>
<figure id="attachment_183" aria-describedby="caption-attachment-183" style="width: 854px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-183" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/62-ejbca-properties-2-1.png" alt="" width="854" height="239" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/62-ejbca-properties-2-1.png 854w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/62-ejbca-properties-2-1-300x84.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/62-ejbca-properties-2-1-768x215.png 768w" sizes="auto, (max-width: 854px) 100vw, 854px" /><figcaption id="caption-attachment-183" class="wp-caption-text">web.properties 2</figcaption></figure>
<figure id="attachment_185" aria-describedby="caption-attachment-185" style="width: 852px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-185" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/70-web-properties-3.png" alt="" width="852" height="139" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/70-web-properties-3.png 852w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/70-web-properties-3-300x49.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/70-web-properties-3-768x125.png 768w" sizes="auto, (max-width: 852px) 100vw, 852px" /><figcaption id="caption-attachment-185" class="wp-caption-text">web.properties 3</figcaption></figure>
<figure id="attachment_186" aria-describedby="caption-attachment-186" style="width: 786px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-186" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/71-web-properties-4.png" alt="" width="786" height="324" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/71-web-properties-4.png 786w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/71-web-properties-4-300x124.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/71-web-properties-4-768x317.png 768w" sizes="auto, (max-width: 786px) 100vw, 786px" /><figcaption id="caption-attachment-186" class="wp-caption-text">web.properties 4</figcaption></figure>
<figure id="attachment_187" aria-describedby="caption-attachment-187" style="width: 853px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-187" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/72-web-properties-5.png" alt="" width="853" height="410" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/72-web-properties-5.png 853w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/72-web-properties-5-300x144.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/72-web-properties-5-768x369.png 768w" sizes="auto, (max-width: 853px) 100vw, 853px" /><figcaption id="caption-attachment-187" class="wp-caption-text">web.properties 5</figcaption></figure>
<h3 style="text-align: justify;"><strong>Deployment Awal</strong></h3>
<p style="text-align: justify;">Sekarang kita sudah punya file properties yang sudah dimodifikasi. sekarang kita bisa memulai untuk melakukan deployment awal dari ejbca ke jboss.</p>
<p style="text-align: justify;">Buka terminal dan lihat log yang terjadi pada console jboss. Caranya:</p>
<pre><strong>tail ­-f /var/log/ejbca/console.log</strong></pre>
<p style="text-align: justify;">user jboss haruslah menjadi pemilik baik direktori jboss ataupun ejbca. sebelum menjalankan deployment awal, ini adalah persyaratan awal untuk meyakinkan bahwa kepemilikannya benar. Caranya:</p>
<pre><strong>service ejbca stop</strong>
<strong>chown ­R jboss:jboss /opt/jboss­as­7.1.1.Final</strong>
<strong>chown ­R jboss:jboss /opt/ejbca_ce_6_3_1_1</strong>
<strong>service ejbca start
cd /opt/ejbca
sudo ­-u jboss ant deploy
</strong></pre>
<ul style="text-align: justify;">
<li>selalu jalankan perintah <strong>ant</strong> dengan user <strong>jboss</strong>.</li>
<li>biasanya kegagalan yang sering terjadi adalah karena <strong>ant</strong> tidak dieksekusi dengan user <strong>jboss</strong> tetapi user <strong>root</strong>.</li>
<li>dan juga kalian harus selalu menjalankan <strong>ant</strong> dari folder <strong>/opt/ejbca</strong>, tempat dimana <strong>build.xml</strong>berada. kita bisa saja menggunakan path menuju folder ejbca tersebut ketika mengeksekusi perintah <strong>ant</strong>, namun lebih mudah apabila kita pindah langsung ke folder <strong>/opt/ejbca</strong>.</li>
<li>dan yang terakhir, JBoss harus terlebih dahulu berjalan sebelum kita menjalankan perintah <strong>ant</strong>.</li>
</ul>
<p style="text-align: justify;">Deployment yang kita lakukan menarik informasi dari file konfigurasi, menggunakan informasi tersebut untuk meng-compile file <strong>ejbca.ear</strong>, kemudian mendorong jboss untuk mendeploy-nya. Karena ini deployment pertama, <strong>ant</strong> juga melakukan hal berikut:</p>
<ul style="text-align: justify;">
<li>Menambahkan konfigurasi mail ejbca ke file standalone.xml</li>
<li>menambahkan ejbca datasource ke file standalone.xml</li>
<li>membuat tabel pada database dengan skema awal</li>
</ul>
<p style="text-align: justify;">Apabila proses deployment berhasil maka akan berakhir dengan pesan seperti berikut:</p>
<figure id="attachment_190" aria-describedby="caption-attachment-190" style="width: 815px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-190" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/75-ant-deploy.png" alt="" width="815" height="257" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/75-ant-deploy.png 815w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/75-ant-deploy-300x95.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/75-ant-deploy-768x242.png 768w" sizes="auto, (max-width: 815px) 100vw, 815px" /><figcaption id="caption-attachment-190" class="wp-caption-text">ant deploy sukses</figcaption></figure>
<h3 style="text-align: justify;"><strong>Pesan Error pada saat Deployment</strong></h3>
<p style="text-align: justify;">kita akan melihat beberapa pesan error pada saat deployment. berikut ini beberapa bugs yang dapat diabaikan karena merupakan bugs dalam Jboss:</p>
<figure id="attachment_195" aria-describedby="caption-attachment-195" style="width: 1350px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-195" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/1-Error.png" alt="" width="1350" height="77" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-Error.png 1350w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-Error-300x17.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-Error-768x44.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-Error-1024x58.png 1024w" sizes="auto, (max-width: 1350px) 100vw, 1350px" /><figcaption id="caption-attachment-195" class="wp-caption-text">Error</figcaption></figure>
<figure id="attachment_194" aria-describedby="caption-attachment-194" style="width: 1352px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-194" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-parsing.png" alt="" width="1352" height="56" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-parsing.png 1352w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-parsing-300x12.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-parsing-768x32.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-parsing-1024x42.png 1024w" sizes="auto, (max-width: 1352px) 100vw, 1352px" /><figcaption id="caption-attachment-194" class="wp-caption-text">error parsing</figcaption></figure>
<figure id="attachment_196" aria-describedby="caption-attachment-196" style="width: 1352px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-196" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-nih.png" alt="" width="1352" height="39" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-nih.png 1352w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-nih-300x9.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-nih-768x22.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-nih-1024x30.png 1024w" sizes="auto, (max-width: 1352px) 100vw, 1352px" /><figcaption id="caption-attachment-196" class="wp-caption-text">Entry will be ignored</figcaption></figure>
<p style="text-align: justify;">Pesan di bawah ini membuktikan kalau versi komunitas dari EJBCA tidak mendukung proteksi database integrity:</p>
<figure id="attachment_197" aria-describedby="caption-attachment-197" style="width: 1351px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-197" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-nih-1.png" alt="" width="1351" height="39" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-nih-1.png 1351w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-nih-1-300x9.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-nih-1-768x22.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-error-nih-1-1024x30.png 1024w" sizes="auto, (max-width: 1351px) 100vw, 1351px" /><figcaption id="caption-attachment-197" class="wp-caption-text">Tidak ada Database Integrity Protection</figcaption></figure>
<p style="text-align: justify;">Apapun yang kita lakukan, kita akan selalu melihat pesan error. Beberapa error harus segera diselesaikan sebelum lanjut ke instalasi. namun kalau deployment berhasil maka kita akan melihat pesan berikut:</p>
<figure id="attachment_198" aria-describedby="caption-attachment-198" style="width: 1352px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-198" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/1-sukses-deploy.png" alt="" width="1352" height="56" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-sukses-deploy.png 1352w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-sukses-deploy-300x12.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-sukses-deploy-768x32.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-sukses-deploy-1024x42.png 1024w" sizes="auto, (max-width: 1352px) 100vw, 1352px" /><figcaption id="caption-attachment-198" class="wp-caption-text">sukses deploy</figcaption></figure>
<p style="text-align: justify;">Pesan error yang muncul pada bagian akhir deployment yaitu:</p>
<p style="text-align: justify;"><strong>appserver.error.message:</strong><br />
<strong>     [echo] jndi.properties.file: /opt/ejbca_ce_6_2_0/conf/jndi.properties.jboss7</strong></p>
<p style="text-align: justify;">dapat diabaikan</p>
<h3 style="text-align: justify;"><strong>Lebih Detail soal Ant</strong></h3>
<p style="text-align: justify;">Kenapa kita melakukan ant deploy sebelum melakukan ant install? ada dua alasannya:</p>
<ul style="text-align: justify;">
<li>untuk menguji file <strong>ejbca.ear</strong> sukses di-compile dari apa yang sudah kita bangun sejauh ini. Menjalankan <strong>ant deploy</strong> sambil membaca log memberikan kita sebuah kesempatan untuk memperbaiki kesalahan sebelum lanjut ke tahap selanjutnya. Setelah instalasi komplit, akan jauh lebih sulit untuk memperbaiki kesalahan-kesalahan yang terjadi pada konfigurasi.</li>
<li>yang lebih penting lagi, file <strong>ejbca.ear</strong> haruslah ada sebelum file <strong>install</strong> dapat dieksekusi.</li>
</ul>
<p style="text-align: justify;">Memang perlu meluangkan waktu sedikit untuk menggambarkan dengan lebih detil apa saja yang dilakukan oleh beragam perintah ant dan belajar beberapa hal yang baru. Mempelajari ant akan sangat berguna ketika memperbaiki beberapa kendala yang terjadi saat instalasi.</p>
<ul style="text-align: justify;">
<li>Seperti yang kita tau, skrip <strong>ant deploy</strong> membuat beberapa file sementara yang digunakan untuk meng-compile <strong>ejbca.ear</strong>, meng-compile <strong>ejbca.ear,</strong> dan kemudian mendorong jboss untuk mendeploy-nya. Ada dua fungsi yang berbeda di sini yaitu:<br />
pertama, <strong>ant</strong> menjalankan <strong>build</strong> yang melakukan persiapan dan kompilasi.<br />
kedua, <strong>ant</strong> menggunakan jboss <strong>jee.deploy</strong> untuk melakukan transfer ke jboss.</li>
<li>proses <strong>build</strong> dapat dipanggil dengan menggunakan perintah <strong>ant build</strong>. namun perintah <strong>ant deploy</strong>menjalankan keduanya, build dan deploy.</li>
<li>skrip <strong>ant install</strong> mengambil file konfigurasi kita, menggunakan informasi tersebut untuk menciptakan konfigurasi yang lebih jauh lagi (seperti file keystore), dan meng-copy file-file baru tersebut ke lokasi-lokasi yang lebih tepat. Bermacam perubahan pada jboss juga dibuat oleh skrip ini. dan full deployment harus dijalankan secara manual setelah instalasi selesai.<br />
Sebuah skrip terpisah untuk instalasi dibutuhkan untuk memisahkan hal yang dilakukan hanya sekali (seperti mengenerate keystore) dari hal yang dilakukan berulang-ulang saat deployment. Kita tidak perlu membangun ulang setiap kali kita ingin deploy.</li>
<li>perintah <strong>ant clean</strong> akan menghapus file-file temporary (sementara) yang dihasilkan saat deployment sebelumnya yang mungkin secara tidak sengaja masih ada atau tertinggal. Menghapus file-file temporary tersebut dapat membantu memecahkan error-error yang muncul saat deployment.</li>
<li>jika kalian tetap menerima error selama deployment setelah melakukan <strong>ant clean</strong>, kalian boleh mencoba sebuah perintah yng sudah usang: <strong>ant bootstrap</strong>. Secara teori, semua fungsi ant bootstrap sekarang dijalankan oleh <strong>ant deploy</strong>.</li>
</ul>
<p style="text-align: justify;">Seperti yang mungkin anda harapkan, semua perintah harus dieksekusi oleh user <strong>jboss</strong>. jika tidak, kalian akan melhat error seperti berikut saat service menyala atau saat deployment:</p>
<p style="text-align: justify;"><strong>06:31:45,480 SEVERE [javax.enterprise.resource.webcontainer.jsf.application] (MSC service thread 1-4) JSF1051: Service entry ‘org.jboss.as.web.deployment.jsf.JsfInjectionProvider’ does not extend DiscoverableInjectionProvider. Entry will be ignored.</strong></p>
<p style="text-align: justify;"><strong>06:31:43,811 INFO [org.jboss.as.controller] (Controller Boot Thread) JBAS014774: Service status report</strong><br />
<strong>JBAS014777:   Services which failed to start: service jboss.web.connector.httpspub: org.jboss.msc.service.StartException in service jboss.web.connector.httpspub: </strong><br />
<strong>JBAS018007: Error starting web connector service jboss.web.connector.httpspriv: org.jboss.msc.service.StartException in service jboss.web.connector.httpspriv: </strong><br />
<strong>JBAS018007: Error starting web connector</strong></p>
<p style="text-align: justify;">Jika tidak ada error yang muncul, kita bisa melanjutkan ke proses instalasi. Ada baiknya untuk merestart jboss, kemudian lakukan install. Hal ini untuk menghindari error <em>out-of-memory </em>yang sesekali bisa terjadi pada Jboss.</p>
<ul style="text-align: justify;">
<li>Jika benar terjadi <em>out of memory, </em>lakukan “<strong>kill -9</strong>” pada proses Jboss dan start kembali proses Jboss nya. setelah itu kita bisa menjalankan perintah <strong>ant</strong> dengan baik.</li>
</ul>
<p style="text-align: justify;">untuk melakukan instalasi maka jalankan ant install. Caranya:</p>
<pre><strong>cd /opt/ejbca
ant install</strong></pre>
<h3 style="text-align: justify;"><strong>Keystores Awal</strong></h3>
<p style="text-align: justify;">Keystore menyimpan sertifikat yang digunakan oleh EJBCA 6.3.1.1 untuk mengamankan web portal, tidak lebih. Keberadaan mereka selama instalasi membuat mereka sangat penting, tetapi mereka memiliki sedikit relevansi dengan fungsi “Certificate Authority” dari EJBCA 6.3.1.1 .</p>
<ul style="text-align: justify;">
<li>Mereka <strong>tidak</strong> digunakan untuk menyimpan kunci dan sertifikat yang dihasilkan oleh EJBCA setelah aplikasi ini live di production –  informasi tersebut disimpan di dalam database.</li>
<li>pada sebuah instalasi yang terdistribusi, mereka mempunyai peran penting dalam autentikasi lintas server (cross-server).</li>
</ul>
<p style="text-align: justify;">ketika skrip install berjalan, skrip tersebut akan melakukan bermacam operasi sampai akhirnya membawa kita untuk memasukkan beberapa password yang digunakan untuk file-file keystore. File-file keystore tersebut berada di <strong>/opt/ejbca/p12</strong> dan mereka adalah:</p>
<ul style="text-align: justify;">
<li><strong>tomcat. jks</strong> → Menyimpan sertifikat yang digunakan jboss untuk mengamankan web portal EJBCA 6.3.1.1 dengan TLS.</li>
<li><strong>trustore.jks</strong> → menyimpan sebuah copy dari key root CA yang mengeluarkan sertifikat TLS.</li>
</ul>
<p style="text-align: justify;">Setelah pembuatan, file-file ini di-copy oleh script install tersebut ke <strong>/opt/jboss/standalone/configuration/keystore</strong>, dan file <strong>tomcat.jks</strong> di rename menjadi <strong>keystore.jks</strong>di direktori baru.</p>
<p style="text-align: justify;">Penting untuk dimengerti bahwa ketika <strong>ant</strong> membuat keystore di <strong>/opt/ejbca/p12</strong>, jboss menggunakan keystore yang berada pada <strong>/opt/jboss/standalone/configuration/keystore</strong> untuk TLS.</p>
<ul style="text-align: justify;">
<li>file <strong>superadmin.p12</strong> yang berisi sertifikat klien yang digunakan untuk mengautentikasi akun administrator juga berada di <strong>/opt/ejbca/p12</strong>. file ini tidak di copy ke direktori jboss seperti keystore lainnya.</li>
</ul>
<p style="text-align: justify;">Java tool yang digunakan untuk mengatur keystore disebut <strong>keytool</strong>, dan (saat instalasi) keytool tersebut dipanggil oleh sebuah link pada <strong>/usr/bin</strong>. Melalui alternatives, link ini diarahkan ke <strong>/usr/lib/jvm/java-1.7.0-openjdk-amd64/bin/keytool</strong>. Untuk mencegah terjadinya beberapa masalah yang mungkin muncul (karena menggunakan enkripsi EC), gunakan enkripsi RSA untuk keystore kita. seperti contoh di atas.</p>
<p style="text-align: justify;">Seperti telah disebutkan tadi, <strong>ant install</strong> menghasilkan copy awal dari keystore yang didasarkan pada konfigurasi kita di <strong>install.properties</strong> dan <strong>web.properties</strong>. Tergantung dari bagaimana kita mengkonfigurasi file-file tersebut, kalau kita banyak mengisi informasi pada kedua file tersebut, maka kita tidak akan diminta untuk menginput lagi pada saat <strong>ant install</strong> dijalankan. Namun kalau kalian melakukan konfigurasi seperti contoh, maka ant install  akan membawa kita untuk mengisi 3 password untuk meng-autentikasi keystore:</p>
<p style="text-align: justify;"><strong>Please enter the password of the truststore with the CA certificate for https? [changeit]</strong><br />
<strong>Please enter the password of the keystore with the TLS key for https [serverpwd]</strong></p>
<p style="text-align: justify;">(dan kemudian)<br />
<strong>Please enter the superadmin password (default: ejbca) ? [ejbca]</strong></p>
<p style="text-align: justify;">Sebagai klarifikasi, password-password tersebut adalah untuk:</p>
<ul style="text-align: justify;">
<li>“<strong>the password of the truststore with the CA certificate for https</strong>” adalah password untuk <strong>trustore.jks</strong></li>
<li>“<strong>the password of the keystore with the TLS key for https</strong>” adalah password untuk <strong>tomcat.jks</strong></li>
<li>“<strong>superadmin password</strong>” adalah password untuk file <strong>superadmin.p12</strong></li>
</ul>
<p style="text-align: justify;">sekali lagi, kita bisa mengisi password tersebut pada file <strong>.properties</strong> sehingga tidak diminta mengisi saat melakukan <strong>ant install</strong>. hanya saja, akan lebih baik kalau tidak menyimpan password dalam format <em>clear text.</em></p>
<ul style="text-align: justify;">
<li>Tapi sayangnya, EJBCA tetap menyimpan hasil copy dari keystore password dalam format <em>clear text </em>di standalone.xml</li>
</ul>
<p style="text-align: justify;">Idealnya, EJBCA 6.3.1.1 hanya akan menyimpan password-password ini dalam format <em>hash. </em>namun tidak ada yang bisa kita lakukan dalam waktu dekat ini.</p>
<p style="text-align: justify;">setelah keystore selesai dibuat, <strong>ant install</strong> akan memperlihatkan ringkasan dari root CA yang kita buat.</p>
<p style="text-align: justify;">Jika proses pembuatan keystore gagal atau bermasalah karena kita mengubah konfigurasi (tidak menggunakan Enkripsi RSA), <strong>ant install</strong> akan mengeluarkan pesan seperti berikut:</p>
<p style="text-align: justify;"><strong> [java] org.ejbca.ui.cli.ErrorAdminCommandException: org.cesecore.certificates.ca.InvalidAlgorithmException: Signature algorithm SHA384withRSA is not one of the allowed signature algorithms. Available algorithms: {SHA1WithRSA, SHA256WithRSA, SHA384WithRSA, SHA512WithRSA, SHA256WithRSAAndMGF1, </strong><strong>SHA1withECDSA, SHA224withECDSA, SHA256withECDSA, SHA384withECDSA, SHA1WithDSA, </strong><strong>GOST3411withECGOST3410, GOST3411withDSTU4145}.</strong></p>
<p style="text-align: justify;">dan console log akan mengeluarkan pesan seperti berikut:</p>
<p style="text-align: justify;"><strong>06:21:15,184 ERROR [org.apache.tomcat.util.net.jsse.JSSESocketFactory] (MSC service thread 1-2) Failed to load keystore type JKS with path /opt/jboss/standalone/configuration/keystore/keystore.jks due to /opt/jboss/standalone/configuration/keystore/keystore.jks (No such file or directory): java.io.FileNotFoundException: /opt/jboss/standalone/configuration/keystore/keystore.jks (No such file or directory)</strong></p>
<p style="text-align: justify;"><strong>06:21:15,188 ERROR [org.apache.coyote.http11.Http11Protocol] (MSC service thread 1-2) Error initializing endpoint: java.io.FileNotFoundException: /opt/jboss/standalone/configuration/keystore/keystore.jks (No such file or directory)</strong></p>
<p style="text-align: justify;">untuk troubleshooting keystore ini kita memang harus melihat error yang terjadi pada hasil keluaran <strong>ant install</strong> dan juga pada console log (<strong>nohup.out</strong>). Namun biasanya masalah berasal dari syntax <strong>keytool</strong> yang <strong>ant install</strong> taruh bersama-sama. Kalian bisa menduga syntax ini dari pesan yang diberikan pada output console <strong>ant</strong>.</p>
<h3 style="text-align: justify;"><strong>Finalisasi Instalasi</strong></h3>
<p style="text-align: justify;">Disamping dari pembuatan keystore, skrip install juga melakukan beberapa hal berikut:</p>
<ul style="text-align: justify;">
<li>membuat instance untuk Management CA (Root CA) di dalam database.</li>
<li>mengupdate <strong>standalone.xml</strong> dengan informasi keamanan, web session, keystore.</li>
</ul>
<p style="text-align: justify;">Dalam log file, kita akan melihat banyak pesan, utamanya terkait dengan fungsi enkripsi untuk file keystore. Tapi cara terbaik adalah dengan memastikan sendiri bagaimana instalasi berlangsung dengan cara membaca pesan melalui log console:</p>
<figure id="attachment_212" aria-describedby="caption-attachment-212" style="width: 1139px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-212" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/1-6.png" alt="" width="1139" height="114" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-6.png 1139w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-6-300x30.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-6-768x77.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-6-1024x102.png 1024w" sizes="auto, (max-width: 1139px) 100vw, 1139px" /><figcaption id="caption-attachment-212" class="wp-caption-text">Registering Web Context</figcaption></figure>
<p style="text-align: justify;">Jika melihat web context berhasil didaftarkan, kalian bisa merasa yakin kalau fungsi EJBCA 6.3.1.1 sedang berhasil dibangun. Tapi ingat, kebanyakan fungsi dari yang dibangun tersebut tidak bisa di browsing langsung untuk memeriksa fungsi mereka. Kita harus membuat CA kita sendiri terlebih dahulu. Juga beberapa service seperti healthcheck, hanya bisa dilakukan dari <strong>localhost</strong> (seperti yang tertera pada file properties kalau tidak ditambahkan)</p>
<p style="text-align: justify;">Instalasi yang sukses akan diakhiri dengan pesan “BUILD SUCCESSFULL” seperti gambar berikut:</p>
<figure id="attachment_215" aria-describedby="caption-attachment-215" style="width: 833px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-215" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/77-ant-install-2.png" alt="" width="833" height="404" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/77-ant-install-2.png 833w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/77-ant-install-2-300x145.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/77-ant-install-2-768x372.png 768w" sizes="auto, (max-width: 833px) 100vw, 833px" /><figcaption id="caption-attachment-215" class="wp-caption-text">ant.install 2</figcaption></figure>
<p style="text-align: justify;">dan setelah sukses tersebut, kita perlu menjalankan ulang (restart) service JBoss. setelah di restart maka kita harus melihat console log dan memastikan kalau Jboss dan ejbca sama-sama berjalan. Lognya kurang lebih akan seperti ini:</p>
<figure id="attachment_216" aria-describedby="caption-attachment-216" style="width: 851px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-216" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/78-ant-install-3.png" alt="" width="851" height="91" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/78-ant-install-3.png 851w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/78-ant-install-3-300x32.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/78-ant-install-3-768x82.png 768w" sizes="auto, (max-width: 851px) 100vw, 851px" /><figcaption id="caption-attachment-216" class="wp-caption-text">log sukses merestart jboss setelah proses ant install selesai.</figcaption></figure>
<h3 style="text-align: justify;"><strong>Pengujian</strong></h3>
<p style="text-align: justify;">Untuk menguji apakah instalasi sudah dilakukan dengan benar, caranya adalah masuk ke Browser dan ketikkan alamat berikut:</p>
<pre><strong>http://&lt;ip atau domain&gt;:8080</strong></pre>
<p style="text-align: justify;">maka akan muncul tampilan berikut:</p>
<figure id="attachment_237" aria-describedby="caption-attachment-237" style="width: 1209px" class="wp-caption alignnone"><img loading="lazy" decoding="async" class="size-full wp-image-237" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/1-8.png" alt="" width="1209" height="433" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-8.png 1209w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-8-300x107.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-8-768x275.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-8-1024x367.png 1024w" sizes="auto, (max-width: 1209px) 100vw, 1209px" /><figcaption id="caption-attachment-237" class="wp-caption-text">Sudah running</figcaption></figure>
<p style="text-align: justify;">dan untuk masuk ke halaman EJBCA-nya, tambahkan <strong>/ejbca</strong> setelah port tersebut. maka akan tampil halaman berikut:</p>
<figure id="attachment_238" aria-describedby="caption-attachment-238" style="width: 1332px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-238" src="http://blog.goreinnamah.com/wp-content/uploads/2017/01/1-9.png" alt="" width="1332" height="617" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-9.png 1332w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-9-300x139.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-9-768x356.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/01/1-9-1024x474.png 1024w" sizes="auto, (max-width: 1332px) 100vw, 1332px" /><figcaption id="caption-attachment-238" class="wp-caption-text">halaman ejbca</figcaption></figure>
<p>Pada bagian Crypto Token, maka kita bisa melihat lokasi dari library <em>Crypto Token </em>yang kita gunakan</p>
<figure id="attachment_1672" aria-describedby="caption-attachment-1672" style="width: 1156px" class="wp-caption aligncenter"><img loading="lazy" decoding="async" class="size-full wp-image-1672" src="http://blog.goreinnamah.com/wp-content/uploads/2017/12/12.png" alt="" width="1156" height="206" srcset="https://blog.goreinnamah.com/wp-content/uploads/2017/12/12.png 1156w, https://blog.goreinnamah.com/wp-content/uploads/2017/12/12-300x53.png 300w, https://blog.goreinnamah.com/wp-content/uploads/2017/12/12-768x137.png 768w, https://blog.goreinnamah.com/wp-content/uploads/2017/12/12-1024x182.png 1024w" sizes="auto, (max-width: 1156px) 100vw, 1156px" /><figcaption id="caption-attachment-1672" class="wp-caption-text">Crypto Token yang kita gunakan</figcaption></figure>
<h2 style="text-align: justify;">Notes:</h2>
<p style="text-align: justify;">Tulisan ini merupakan hasil pengujian dari blog <strong><a href="http://ejbcacentos.blogspot.co.id/">ejbcacentos</a></strong> dengan melakukan beberapa modifikasi sesuai dengan kebutuhan.</p>
<p style="text-align: justify;">sumber lainnya datang dari <strong><a href="https://developer.jboss.org/thread/263088">link berikut</a></strong>.</p><p>The post <a href="https://blog.goreinnamah.com/blog/2017/12/01/instalasi-ejbca-6-3-1-1-dengan-hsm-luna-pcie-pada-centos-7/">Instalasi EJBCA 6.3.1.1 dengan HSM LUNA PCIE pada CentOS 7</a> first appeared on <a href="https://blog.goreinnamah.com">GoBlog</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://blog.goreinnamah.com/blog/2017/12/01/instalasi-ejbca-6-3-1-1-dengan-hsm-luna-pcie-pada-centos-7/feed/</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Object Caching 0/367 objects using Memcached
Page Caching using Disk: Enhanced 
Database Caching using Memcached (Request-wide modification query)

Served from: blog.goreinnamah.com @ 2026-10-08 07:48:13 by W3 Total Cache
-->