วิธีการติดตั้ง OpenSSL เวอร์ชันล่าสุดจาก Source บน Linux
- Install Dependencies
- Download OpenSSL Source Code
- Install OpenSSL
- Compile and Install OpenSSL
- Configure Link Libraries
- Configure OpenSSL Binary
- Testing
ขั้นตอนที่ 1 - Install Dependencies
ขั้นตอนแรกก่อนที่เราจะสามารถรวบรวมไลบรารี OpenSSL จากซอร์สได้คือการติดตั้งแพ็กเกจการอ้างอิงบางอย่างรวมถึงแพ็คเกจ 'build-essential' บน Ubuntu หรือแพ็คเกจ 'Development Tools' บน CentOS
On Ubuntu
อัพเดตที่เก็บ Ubuntu และติดตั้งแพ็กเกจการอ้างอิงสำหรับการรวบรวมซอฟต์แวร์โดยใช้คำสั่ง apt ด้านล่าง
sudo apt update
sudo apt install build-essential checkinstall zlib1g-dev -y
On CentOS
ติดตั้ง 'Development Tools' และไลบรารีแพ็กเกจบางตัวโดยใช้คำสั่ง yum
yum group install 'Development Tools'
yum install perl-core zlib-devel -y
ขั้นตอนที่ 2 - Download OpenSSL
ในบทช่วยสอนนี้เราจะติดตั้ง OpenSSL - OpenSSL 1.0.2o เวอร์ชันเสถียรล่าสุด คุณสามารถดาวน์โหลดซอร์สโค้ดได้จากไซต์ OpenSSL
ไปที่ไดเรกทอรี '/usr/local/src/' และดาวน์โหลดซอร์สโค้ด OpenSSL โดยใช้ wget
cd /usr/local/src/
wget https://www.openssl.org/source/openssl-1.0.2o.tar.gz
ตอนนี้แยกไฟล์ openssl.tar.gz และไปที่ไดเรกทอรี 'openssl'
tar -xf openssl-1.0.2o.tar.gz
cd openssl-1.0.2o
ขั้นตอนที่ 4 - ติดตั้ง Install OpenSSL
ก่อนทำการติดตั้ง OpenSSL เวอร์ชั่นที่กำหนดเองไปยังระบบให้ตรวจสอบเวอร์ชั่นที่ติดตั้งโดยใช้คำสั่งด้านล่าง
openssl version -a
เราจะแทนที่รุ่น '1.1.0g' เป็นเวอร์ชั่นที่เสถียรล่าสุด 1.0.2o
เราจะติดตั้ง OpenSSL เวอร์ชั่นใหม่ไปยังไดเรกทอรีเฉพาะ '/ usr / local / ssl' จากนั้นเปิดใช้งาน Link Library ของ OpenSSL และกำหนดค่าไบนารี PATH ใหม่สำหรับ OpenSSL
ติดตั้งและคอมไพล์ OpenSSL
ไปที่ไดเรกทอรี openssl ที่ดาวน์โหลดมา '/ usr / local / src / openssl'
cd /usr/local/src/openssl-1.0.2o
กำหนดค่าและรวบรวม OpenSSL ด้วยคำสั่งด้านล่าง
./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib
make
make test
Note:
- --prefix and --openssldir = Set the output path of the OpenSSL.
- shared = force to create a shared library.
- zlib = enable the compression using zlib library.
เมื่อกระบวนการคอมไพล์เสร็จสมบูรณ์ให้ติดตั้ง OpenSSL โดยใช้คำสั่งด้านล่าง
make install
กำหนดค่าไลบรารีลิงก์
ต่อไปเราจะกำหนดค่าไลบรารีที่แชร์สำหรับ OpenSSL ไบนารี OpenSSL ใหม่จะโหลดไฟล์ไลบรารีจากไดเรกทอรี '/ usr / local / ssl / lib'
ไปที่ไดเรกทอรี '/etc/ld.so.conf.d' และสร้างไฟล์การกำหนดค่าใหม่ 'openssl-1.0.2o.conf'
cd /etc/ld.so.conf.d/
vim openssl-1.0.2o.conf
วางไดเร็กทอรีพาธ ไลบรารี openssl
/usr/local/ssl/lib
บันทึกและออก.
โหลดลิงค์แบบไดนามิกโดยใช้คำสั่งด้านล่าง
sudo ldconfig -v
กำหนดค่าไบนารี OpenSSL
แทนที่ค่าเริ่มต้นไบนารี openssl '/ usr / bin / openssl หรือ / bin / openssl' ด้วยเวอร์ชันใหม่ '/ usr / local / ssl / bin / openssl'
On Ubuntu 18.04 LTS
Backup ไฟล์ไบนารี
mv /usr/bin/c_rehash /usr/bin/c_rehash.BEKUP
mv /usr/bin/openssl /usr/bin/openssl.BEKUP
แก้ไขไฟล์ '/ etc / environment' โดยใช้ vi
vi /etc/environment
เพิ่มไดเรกทอรีไบนารี OpenSSL ใหม่ดังต่อไปนี้
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/usr/local/ssl/bin"
บันทึกและออก.
โหลดไฟล์สภาพแวดล้อมและทดสอบไบนารีเส้นทางใหม่ที่ได้รับการปรับปรุง
source /etc/environment
echo $PATH
ตรวจสอบอีกครั้งไฟล์ไบนารี OpenSSL
which openssl
On CentOS 7.6
สำรองไฟล์ไบนารี CentOS OpenSSL
mv /bin/openssl /bin/openssl.BEKUP
สร้างไฟล์สภาพแวดล้อมใหม่สำหรับ OpenSSL
vim /etc/profile.d/openssl.sh
วางการกำหนดค่าด้านล่าง
#Set OPENSSL_PATH OPENSSL_PATH="/usr/local/ssl/bin" export OPENSSL_PATH PATH=$PATH:$OPENSSL_PATH export PATH
บันทึกและออก.
ทำให้ไฟล์ openssl.sh ปฏิบัติการได้
chmod +x /etc/profile.d/openssl.sh
โหลดสภาพแวดล้อม OpenSSL และตรวจสอบไดเรกทอรี PATH bin โดยใช้คำสั่งด้านล่าง
source /etc/profile.d/openssl.sh
echo $PATH
ตรวจสอบไฟล์ OpenSSL
which openssl
ขั้นตอนที่ 4 - ทดสอบ
ทดสอบเวอร์ชันใหม่ของ OpenSSL โดยใช้คำสั่งต่อไปนี้
openssl version -a