OpenSSL Logo


How to install latest openssl version from source code

OpenSSL merupakan suatu perangkat lunak yang sangat handal, berkualitas komersial, dan memiliki fitur lengkap untuk protokol Transport Layer Security (TLS) dan Secure Sockets Layer (SSL).
OpenSSL juga merupakan pustaka kriptografi yang sering digunakan untuk pembuatan fitur-fitur keamanan di perangkat lunak umum lainnya.

OpenSSL telah digunakan oleh banyak perangkat lunak seperti server Web Apache, PHP, dan banyak lainnya yang menyediakan dukungan untuk berbagai algoritma kriptografi seperti cipher (AES, Blowfish, DES, IDEA dll.), Dan fungsi hash kriptografis (MD5, MD4, SHA-1, SHA-2 dll.)

Dalam panduan ini, kita akan menginstal OpenSSL versi 1.1.1 yang merupakan versi stabil pada saat ini.
Mengapa memilih versi 1.1.1 ?,Berikut cuplikan dari openssl blog post:

POSTED BY MATT CASWELL , SEP 11TH, 2018 12:00 PM.

The headline new feature is TLSv1.3. This new version of the Transport Layer Security (formerly known as SSL) protocol was published by the IETF just one month ago as RFC8446.
This is a major rewrite of the standard and introduces significant changes, features and improvements which have been reflected in the new OpenSSL version.

Persiapan sistem

persiapkan os anda untuk bisa mengkompilasi openssl langsung dari kode sumber dengan cara meng-install program-program developtment,
jika anda menggunakan ubuntu base distro jalankan perintah:

# sudo apt install build-essential checkinstall zlib1g-dev -y
# sudo apt install git

Dan jika anda menggunakan Redhat base distro seperti centos linux jalankan perintah ini:

# yum group install 'Development Tools'
# yum install perl-core zlib-devel -y
# yum install git

Mengunduh Kode sumber Openssl

Kita akan mengunduh kode sumber openssl langsung dari Openssl official git tree.
Bukan jendela terminal lalu

# cd /usr/src && mkdir OpenSSL_GIT
# cd  OpenSSL_GIT
# opensslver=OpenSSL_1_1_1-stable && git clone https://github.com/openssl/openssl.git $opensslver
# cd $opensslver && git checkout $opensslver
# ./config
# make
# make install

Modifikasi Lokasi Binary Openssl

# mv /usr/bin/openssl /usr/bin/openssl.orig
# ln -s /usr/local/bin/openssl /usr/bin/openssl

Untuk centos pastikan exclude upgrade openssl di /etc/yum.conf dengan menambahkan baris exclude=openssl*

[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=16&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release
exclude=openssl*

Konfigurasi Link Library

Link Library perlu di setting jika tidak ketika menjalankan perintah openssl akan muncul error library tidak ditemukan.

# echo "/usr/local/lib64" > /etc/ld.so.conf.d/openssl-1.1.1-x86_64.conf
# ldconfig

Pastikan tidak ada Link yang hilang (not found), dengan melakukan verifikasi

# ldd /usr/bin/openssl

Pengecekan versi openssl

# openssl version -a
OpenSSL 1.1.1e-dev  xx XXX xxxx
built on: Fri Dec 13 07:11:23 2019 UTC
platform: linux-x86_64
options:  bn(64,64) rc4(16x,int) des(int) idea(int) blowfish(ptr)
compiler: gcc -fPIC -pthread -m64 -Wa,--noexecstack -Wall -O3 -DOPENSSL_USE_NODELETE -DL_ENDIAN -DOPENSSL_PIC -DOPENSSL_CPUID_OBJ -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DKECCAK1600_ASM -DRC4_ASM -DMD5_ASM -DAESNI_ASM -DVPAES_ASM -DGHASH_ASM -DECP_NISTZ256_ASM -DX25519_ASM -DPOLY1305_ASM -DNDEBUG
OPENSSLDIR: "/usr/local/ssl"
ENGINESDIR: "/usr/local/lib64/engines-1.1"
Seeding source: os-specific

Openssl sudah berhasil kita upgrade, selanjutnya kita akan gunakan openssl ini untuk memaksimalkan fitur enkripsi di apache web server.

Tunggu tulisan saya selanjutnya,
Salam.

Leave a Reply

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