검색결과 리스트
Upgrade에 해당되는 글 1건
- 2010.12.09 Openssl 업그레이드 하기.
글
Openssl 업그레이드 하기.
Coumputer's/Linux
2010. 12. 9. 19:40
openssl을 업그레이드 하기 위해서는 먼저 최신버전의 openssl을 다운받는다.
필자는 openssl-0.9.8b에서 openssl-0.9.8p버전으로 업그레이드 하였으며 oepnssl소스는
http://www.openssl.org에서 받을 수 있다.
(다이렉트 링크 : http://www.openssl.org/source/openssl-0.9.8p.tar.gz)
1. compile하기.
다운받은 source를 압축해제하여 config명령어를 사용하여 Makefile을 만든다.
필자는 oepnssl을 설치하는 것이 목적이 아니라 prefix나 openssldir옵션은 주지 않았으며
업그레이드 하기 위해서는 shared 라이브러리가 생성되어야 함으로 shared옵션만 주었다.
# ./config shared
# make
make명령어를 치면 current디렉토리에 library파일들이 생성이 되며 ./apps 디렉토리에는
openssl파일이 생성된다.
2. 설치하기
libcrypto 설치하기
먼저 새로 생성한 libcrypto파일을 /lib 디렉토리에 copy한다.
# cp libcrypto.so.0.9.8 /lib/libcrypto.so.0.9.8p
기존 0.9.8b 버전에 걸려 잇는 symbolic link를 지워주고 새로 link를 생성한다.
# rm -rf libcrypto.so.6
# ln -s libcrypto.so.0.9.8p libcrypto.so.6
# ls -al
lrwxrwxrwx 1 root root 19 Dec 8 13:10 /lib/libcrypto.so.0.9.8 -> libcrypto.so.0.9.8p
-rwxr-xr-x 1 root root 1241576 Oct 16 2007 /lib/libcrypto.so.0.9.8b
-rwxr-xr-x 1 root root 1530219 Dec 8 13:09 /lib/libcrypto.so.0.9.8p
lrwxrwxrwx 1 root root 19 Dec 8 13:09 /lib/libcrypto.so.6 -> libcrypto.so.0.9.8p
추가로 /usr/lib디렉토리에도 libcrypto.a와 libcrypto.so파일을 생성해 준다.
# cp {openssl소스 디렉토리}/libcrypto.a /usr/lib
# cd /usr/lib
# ln -s ../../lib/libcrypto.so.0.9.8p libcrypto.so.6
# ls -al libcrypto*
-rw-r--r-- 1 root root 2425450 Dec 8 16:11 /usr/lib/libcrypto.a
lrwxrwxrwx 1 root root 29 Dec 8 16:12 /usr/lib/libcrypto.so -> ../../lib/libcrypto.so.0.9.8p
libssl 설치는 libcrypto 설치의 /lib디렉토리와 같은 방식으로 설치하면 된다.
# cp libssl.so.0.9.8 /lib/libssl.so.0.9.8p
# rm -rf libssl.so.6
# ln -s libssl.so.0.9.8p libssl.so.6
# ls -al
- rwxr-xr-x 1 root root 279336 Oct 16 2007 /lib/libssl.so.0.9.8b
-rwxr-xr-x 1 root root 322722 Dec 8 13:11 /lib/libssl.so.0.9.8p
lrwxrwxrwx 1 root root 16 Dec 8 13:12 /lib/libssl.so.6 -> libssl.so.0.9.8p
3. openssl바이너리와 openssl 헤더파일 바꿔주기.
마지막으로 openssl바이너리와 openssl 헤더파일을 기존 파일에서 대체하면 된다.
헤더파일을 바꾸어주는 것은 추후에 있을 ssl라이브러리를 사용하는 openssh와 같은 프로그램을
소스 설치시 필요하기 때문에 바꾸어 준다.^^
which openssl로 찾아서 바꾸어주면 된다. 기본적으로 /usr/bin 디렉토리 밑에 openssl파일이 있다.
헤더파일은 /usr/include/oepnssl/ 디렉토리를 통째로 바꾸어주면 된다.
# cp ./apps/openssl /usr/bin
cp: overwrite `/usr/bin/openssl'? y
# rm -rf /usr/include/openssl
# cp -rf ./include/openssl /usr/include