Kako instalirati OpenSSL iz izvora u CentOS i Ubuntu


OpenSSL je potpuno opremljena softverska biblioteka koja sadrži implementaciju Transport Layer Security (TLS) i Secure Sockets otvorenog koda Slojni (SSL) protokoli, koji se koriste za osiguranje informacija koje se prenose preko računarskih 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–Hellman razmjena ključeva, eliptična kriva i mnogi drugi.

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

Korak 1: Instalirajte razvojne alate

1. Da prevedete OpenSSL ručno iz izvora, morate prvo instalirati nekoliko zavisnosti 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 Dugoročno Podrška (LTS) izdanje, podržano do 31. decembra 2019.), sa stranice za preuzimanje koristeći sljedeću komandu wget i raspakirajte je pomoću komande tar.

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

3. Sada se pomaknite u ekstrahovani direktorij, konfigurirajte, izgradite, nakon uspješne gradnje, testirajte biblioteke i instalirajte OpenSSL na zadanu lokaciju, a to 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 instalacioni direktorij i pregledati različite poddirektorije i datoteke koristeći komandu 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 pažnju:

  • bin – sadrži openssl binarni program i neke uslužne skripte.
  • include/openssl – sadrži datoteke zaglavlja potrebne za pravljenje vlastitih programa koji koriste libcrypto ili libssl.
  • lib – sadrži datoteke OpenSSL biblioteke.
  • lib/engines – sadrži OpenSSL motore koji se dinamički učitavaju.
  • 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 privatnog ključa.

5. Da provjerite verziju OpenSSL-a koju ste upravo instalirali, pokrenite sljedeću naredbu.

/usr/local/ssl/bin/openssl version

OpenSSL 1.0.2p  14 Aug 2018

6. Da biste koristili novoinstaliranu verziju OpenSSL na vašem sistemu, trebate dodati direktorij /usr/local/ssl/bin/ u vaš PATH, u datoteci ~/.bashrc (ili ekvivalent za vašu ljusku).

vim ~/.bashrc

Dodajte ovaj red na dno datoteke.

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

Sačuvajte i zatvorite datoteku i ponovo učitajte konfiguraciju koristeći naredbu ispod.

source .bashrc

7. Sada otvorite novi prozor terminala i pokrenite sljedeće komande da potvrdite da se nova OpenSSL binarna datoteka nalazi u vašem PATH i da možete pokrenite ga bez unošenja pune putanje.

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 članku smo objasnili kako instalirati najnoviju OpenSSL verziju iz izvora na Linux sistemima. Ako imate bilo kakvih pitanja, koristite formular za naredbe ispod da nas kontaktirate.