![편집하다](https://linux55.com/image/63883/%ED%8E%B8%EC%A7%91%ED%95%98%EB%8B%A4.png)
이전 버전의 Centos(5.7)를 사용하고 있으며 TLS 1.0에 대한 Google Chrome의 경고로 인해 TLS 1.2를 활성화하고 싶습니다.
yum을 사용하여 업데이트를 시도했지만 이 Centos 버전에는 OpenSSL 1.x를 설치할 수 없다는 것을 발견했습니다. 그래서 수동으로 다운로드해서 설치했습니다./usr/local/openssl
다음 단계: 어떻게 Apache에 "링크"할 수 있습니까(Apache itk가 있습니까)?
편집하다
좀 더 정확하게 말하자면, Apache 웹 서버 TLS 프로토콜을 1.0에서 1.2로 개선해야 하며, 이를 위해서는 OpenSSL을 업데이트하고 Apache에서 이를 사용하도록 해야 합니다. (그런데 방법을 모르겠습니다. 다시 컴파일해야 합니까?) 그렇다면 어떻게 해야 합니까? )
새로운 OpenSSL 버전은 1.0.2a입니다.
답변1
그래서 수동으로 다운로드하여 /usr/local/openssl에 설치했습니다.
make install
라이브러리에 대해 a를 수행 한 후에는 sudo ldconfig
;를 실행해야 링커가 이에 대해 알 수 있습니다. /usr/local
링커 구성을 변경하지 않은 한 입력이 우선적으로 적용됩니다. 귀하의 libssl
생성 시간이 적절한 지 다시 확인하세요 /usr/local/lib
.
아파치가 이를 사용할지 확인하려면 ldd
바이너리를 실행하세요.
> which apache
/usr/bin/apache
> ldd /usr/bin/apache | grep ssl
그 이후의 경로 libssl.so.10 =>
는 /usr/local
. 저는 방금 실행 파일의 이름을 적어 두었습니다. 이를 알아내야 합니다.
만약 너라면아니요새로운 libssl을 Apache 이외의 다른 곳에서 사용하기를 원합니다.그것을 밖으로 이동합니다 /usr/local/lib
. 결국 사용 가능해지지 않도록 노력하는 것은 단순히 옮기는 것보다 더 번거롭고 실수하기 쉽고 더 많은 혼란을 야기합니다. 따라서 해당 라이브러리를 찾아(모두 동일한 타임스탬프를 가집니다. 실제로는 심볼릭 링크 libssl
가 있는 두 개만 있는 것 같습니다 libcrypto
) 예를 들어 /opt/openssl/lib
. 그런 다음 쉘 스크립트를 사용하여 크롬을 시작할 수 있습니다.
#!/bin/sh
export LD_LIBRARY_PATH=/opt/openssl/lib:$LD_LIBRARY_PATH
myapache $@
실제 실행 파일을 이동하거나 이름을 변경해야 합니다(예: 위의 주석 ). 그런 다음 이 스크립트를 이나 실제 실행 파일의 이름이 무엇이든 myapache
넣어야 합니다 ./usr/bin
apache