Apache 또는 잠재적으로 다른 유사한 웹 호스팅 기술을 실행하도록 설계된 서버에서 SSL을 구성하려고 하면 서버 인증서에 서버 이름과 일치하는 ID가 포함되어 있지 않다는 오류가 표시될 수 있습니다. 이것은 엄밀히 말하면 경고일 뿐이며 이론적으로 해결할 수 있습니다.
정상적으로 다시 작동하도록 하려면 약간의 문제 해결을 수행하는 것이 훨씬 더 좋습니다. 서버 이름과 인증서가 일치하면 다음에 시스템을 업데이트할 때 이러한 단계를 다시 수행할 필요가 없습니다. 간단한 파일 편집으로 문제가 해결되지 않는 경우 몇 가지를 다시 생성해야 할 수도 있지만 일단 완료하면 파일을 더 이상 구성할 필요가 없습니다.
방법 1:httpd[dot]conf 파일 편집
살펴보는 것부터 시작하세요. 파일(Fedora, Red Hat 또는 센트OS. Debian 및 Ubuntu 서버는 이 첫 번째 주소에 있어야 합니다. 서버 인증서에 서버 이름 경고 메시지와 일치하는 ID가 포함되어 있지 않음을 나타내는 텍스트를 찾으십시오.
IP 주소의 각 부분 뒤에 443 또는 다른 숫자가 표시되지만 다른 SSL 문제는 없음을 알 수 있습니다. 이 경우 어떤 포트를 수신할지 Apache에 알려주지 않았을 수 있습니다. 실행
Listen 80이라는 줄을 찾습니다. 그 아래에 Listen 443 또는 필요한 다른 포트 번호를 추가합니다. . 파일을 저장하고 닫으면 httpd 프로세스를 다시 시작합니다.
Ubuntu 또는 Debian 서버를 실행하는 사용자는 이 파일이 없거나 일부 버전의 Fedora 또는 Red Hat Enterprise Linux를 사용하는 사용자와 달리 완전히 비어 있음을 알 수 있습니다. 이 경우
를 사용하십시오. 수신할 포트를 추가하는 데 필요한 텍스트 파일을 편집합니다.
많은 경우 이렇게 하면 문제가 수정되어야 합니다. 그렇지 않은 경우 인증서 상황을 조사하기 전에 관련된 모든 네트워킹 문제를 확인하십시오.
방법 2:새 인증서 재생성
이러한 경고 메시지는 자신이 서명한 만료된 인증서로 작업한 경우에도 나타날 수 있습니다. 재생성해야 하는 경우 다음을 사용하십시오.
File 및 KeyFile로 표시된 두 줄을 찾습니다. 이것은 SSL 인증서를 생성할 때 인증서 키 파일의 위치를 알려줍니다.
공식 World Wide Web 인증서를 제공하는 전문 서명 회사와 협력하는 경우 라이선스 조직에서 제공하는 특정 지침을 따라야 합니다. 그렇지 않으면 sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout KeyFile -out File을 수행해야 합니다. , KeyFile 및 File을 이전 cat 명령에서 얻을 수 있었던 텍스트로 바꿉니다. 인증서의 입력 및 출력에 사용되는 두 개의 서로 다른 파일 위치를 찾았어야 합니다.
오래된 버전이라고 가정하면 이 작업을 수행하는 것만으로도 오류를 해결할 수 있지만 경고 메시지를 표시하지 않기 전에 서비스를 다시 시작해야 할 수도 있습니다.
또한 문제 해결 프로세스에 도움이 되도록 현재 설치한 인증서에 대해 자세히 알아볼 수도 있습니다. 일치하는지 확인하기 위해 현재 인증서에 있는 이름을 확인하려면 openssl s_client -showcerts -connect ${HOSTNAME}:443을 실행할 수 있습니다. , 하지만 대괄호 사이에 실제 호스트 이름을 넣어야 합니다. 다른 포트에 문제가 있는 경우 443 숫자를 교체하세요.
동일한 기기에 여러 인증서가 설치되어 있고 동일한 IP 주소에서 제공되는 경우에는 openssl s_client -showcerts -connect ${IP}:443 -servername ${HOSTNAME}을 실행해야 합니다. , IP를 실제 IP로 바꾸고 호스트 이름을 채우십시오. 다시 한 번, 특정 사용 사례에 맞게 443을 다른 숫자로 바꿔야 할 수도 있습니다.
CSR이 처음 생성될 때 올바른 호스트 이름이 별칭 또는 일반 이름으로 지정되었는지 확인해야 합니다.