Kako instalirati OpenSSL iz izvora u CentOS i Ubuntu


OpenSSL je softverska biblioteka sa svim značajkama koja sadrži implementaciju otvorenog koda Transport Layer Security (TLS) i Secure Sockets Protokoli sloja (SSL), koji se koriste za osiguranje informacija koje se prenose putem računalnih mreža.

To je kriptografska biblioteka opće namjene i podržava niz različitih kriptografskih algoritama uključujući AES, Blowfish; MD5, MD4, SHA-1, SHA-2 kriptografske hash funkcije; RSA, DSA, Diffie–Hellmanova razmjena ključeva, eliptična krivulja i mnogi drugi.

U ovom ćemo članku objasniti kako instalirati najnoviju stabilnu verziju OpenSSL iz izvora na distribucijama temeljenim na CentOS i Ubuntu.

Korak 1: Instalirajte razvojne alate

1. Za ručno kompajliranje OpenSSL iz izvora, morate prvo instalirati nekoliko ovisnosti kao što su “Alati za razvoj” pod RHEL/CentOS /Fedora ili “build-essential ” u Debian/Ubuntu kao što je prikazano.

------------------- On CentOS, RHEL & Fedora ------------------- 
yum group install 'Development Tools' && yum install perl-core libtemplate-perl zlib-devel 

------------------- On Ubuntu & Debian -------------------
sudo apt update && apt install build-essential checkinstall zlib1g-dev libtemplate-perl

Korak 2: Kompajlirajte OpenSSL iz izvora

2. Zatim preuzmite najnoviju stabilnu verziju OpenSSL-a (v1.0.2 u vrijeme pisanja, što je dugotrajno Podrška (LTS) izdanje, podržano do 31. prosinca 2019.), sa stranice za preuzimanje pomoću sljedeće naredbe wget i raspakirajte ga pomoću naredbe tar.

wget -c https://www.openssl.org/source/openssl-1.0.2p.tar.gz
tar -xzvf openssl-1.0.2p.tar.gz

3. Sada prijeđite u ekstrahirani direktorij, konfigurirajte, izgradite, nakon uspješne izgradnje, testirajte biblioteke i instalirajte OpenSSL na zadanu lokaciju, koja je /usr/local/ssl, pokretanjem sljedećih naredbi.

cd openssl-1.0.2p/
./config
make
make test
sudo make install 

4. Nakon što ste uspješno instalirali OpenSSL, možete se pomaknuti u instalacijski direktorij i pregledati razne poddirektorije i datoteke pomoću naredbe ls.

cd /usr/local/ssl/
$ ls -l

drwxr-xr-x. 2 root root  4096 Aug 22 06:37 bin
drwxr-xr-x. 2 root root  4096 Aug 22 06:37 certs
drwxr-xr-x. 3 root root  4096 Aug 22 06:37 include
drwxr-xr-x. 4 root root  4096 Aug 22 06:37 lib
drwxr-xr-x. 6 root root  4096 Aug 22 06:36 man
drwxr-xr-x. 2 root root  4096 Aug 22 06:37 misc
-rw-r--r--. 1 root root 10835 Aug 22 06:37 openssl.cnf
drwxr-xr-x. 2 root root  4096 Aug 22 06:37 private

Sljedeći su važni direktoriji na koje morate obratiti pozornost:

  • bin – sadrži openssl binarnu datoteku i neke uslužne skripte.
  • include/openssl – sadrži datoteke zaglavlja potrebne za izradu vlastitih programa koji koriste libcrypto ili libssl.
  • lib – sadrži datoteke biblioteke OpenSSL.
  • lib/engines – sadrži OpenSSL motore koji se mogu dinamički učitavati.
  • man – sadrži OpenSSL man-stranice.
  • share/doc/openssl/html – sadrži HTML prikaz man-stranica.
  • certifikati – zadana lokacija za datoteke certifikata.
  • privatno – zadana lokacija za datoteke privatnih ključeva.

5. Za provjeru verzije OpenSSL koju ste upravo instalirali, pokrenite sljedeću naredbu.

/usr/local/ssl/bin/openssl version

OpenSSL 1.0.2p  14 Aug 2018

6. Za korištenje novoinstalirane verzije OpenSSL na vašem sustavu, trebate dodati direktorij /usr/local/ssl/bin/ u vaš PATH, u datoteci ~/.bashrc (ili ekvivalent za vašu ljusku).

vim ~/.bashrc

Dodajte ovaj redak na dno datoteke.

export PATH="/usr/local/ssl/bin:${PATH}"

Spremite i zatvorite datoteku i ponovno učitajte konfiguraciju pomoću donje naredbe.

source .bashrc

7. Sada otvorite novi prozor terminala i pokrenite sljedeće naredbe kako biste potvrdili da se novi OpenSSL binarni nalazi u vašem PATH i da možete pokrenite ga bez upisivanja cijelog puta.

whereis openssl

openssl: /usr/bin/openssl /usr/lib64/openssl /usr/include/openssl /usr/local/ssl/bin/openssl /usr/share/man/man1/openssl.1ssl.gz
openssl version 	

OpenSSL 1.0.2p  14 Aug 2018

To je sve! U ovom smo članku objasnili kako instalirati najnoviju verziju OpenSSL iz izvora na Linux sustavima. Ako imate bilo kakvih pitanja, upotrijebite naredbeni obrazac u nastavku da nas kontaktirate.