Openssl 1.1.1 설치
반응형

CentOS 7, Amazon Linux 2와 같이 오래된 배포본에서는 openssl 버전이 낮아 Python 3.12 등의 설치가 불가능하다.

그래서 Python 3.12 이 필요하다면 Openssl 1.1.1 의 설치가 꼭 필요하며

1.1.1 로 올리면 보다 안전한 프로토콜 TLS 1.3 지원된다.

(물론 이것보다 좋은 것은 Amazon Linux 2023, RHEL 9 과 같이 현재 지원되는 배포판 버전으로 올리는 것이 좋다. )

 

오래된 배포판이라면 아래와 같이 확인해 보자.

# openssl 버전 확인. 필요하다면 1.1.1 이상으로 올려야 한다.
$ openssl version
OpenSSL 1.0.2k-fips  26 Jan 2017

# 지원 상태 확인. TLSv1.3은 지원되지 않는다.
$ openssl ciphers -v | awk {'print $2'} | sort | uniq 
SSLv3
TLSv1.2

 

사전 준비

먼저 소스를 다운로드 한다. 2025년 7월 1일 기준 1.1.1w 가 최신이다.

(물론 배포판 버전을 올려 3.X.X 의 최신 버전을 사용는 것이 좋다. 사담으로 2.X.X 는 없다.)

# wget 설치
$ sudo yum install -y wget

# 소스 다운로드
$ wget https://github.com/openssl/openssl/releases/download/OpenSSL_1_1_1w/openssl-1.1.1w.tar.gz

 

 

혹시 모르니 기존의 openssl 실행 binary는 이름을 변경하여 백업해 둔다.

# 기존 openssl은 삭제 하지 않고 유지한다.
# /usr/bin/openssl 을 변경 한다.
sudo mv /usr/bin/openssl /usr/bin/openssl_$(rpm -q openssl | awk -F '-' '{print $2}')

 

 

컴파일을 위해 패키지를 설치한다. 

# 패키지 설치 
# 참고로 gcc 는 7 이상의 버전을 사용해야 한다.
# 초기 CentOS 7 에서 DVD로 설치하면 4 버전이 설치되므로 주의할 것.
# (CentOS 7 의 미러 사이트도 모두 닫혀 있는 상태임.)
# make-3.82
# gcc-7.3.1
# perl-5.16
# zlib-1.2.7

$ sudo yum install -y make gcc perl zlib zlib-devel
 
 
 

컴파일과 설치 

이제 소스를 컴파일하고 설치해 보자.

# 다운로드 받은 소스의 압축 해제.
$ tar xvf openssl-1.1.1w.tar.gz

# 해제된 소스로 진입
$ cd  openssl-1.1.1w

# 컴파일을 위한 config 설정
$./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl shared zlib

# 컴파일
make

# 설치
sudo make install

 

 

설치가 완료되면 명령어와 Library 등을 이용할 수 있도록 Symbolic link 를 걸어 준다.

# 설치 후 아래와 같이 Symbolic link를 걸어 준다.
sudo ln -s /usr/local/openssl/lib/libssl.so.1.1 /usr/lib64/libssl.so.1.1
sudo ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1
sudo ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
sudo ln -s /usr/local/openssl/include/openssl /usr/include

 

설치 확인

설치후 지원 상태를 확인한다.

# 프로토콜 지원 상태 확인
$ openssl ciphers -v | awk {'print $2'} | sort | uniq
SSLv3
TLSv1
TLSv1.2
TLSv1.3


# openssl 버전 확인.
$ openssl version
OpenSSL 1.1.1w  11 Sep 2023

 

반응형