원격 서버와의 SSL 핸드 셰이크 중 오류


118

나는 Apache2(443에서 듣기)에서 실행되는 웹 앱 Tomcat7(8443에서 듣기)을 가지고 Ubuntu있습니다.

8443 대신 포트 443을 통해 웹 앱에 액세스 할 수 있도록 apache2를 역방향 프록시로 설정했습니다. 또한 브라우저와 apache2간에뿐만 아니라 apache2와 tomcat7 간에도 SSL 통신이 필요하므로 apache2와 tomcat7 모두에 SSL을 설정했습니다. . tomcat7에 직접 연락하여 웹 앱에 액세스하려고하면 모든 것이 정상입니다. 문제는 apache2 (역방향 프록시)를 통해 tomcat의 웹 앱에 액세스하려고 할 때 브라우저에 오류가 표시된다는 것입니다.

Proxy Error
The proxy server could not handle the request GET /web_app.
Reason: Error during SSL Handshake with remote server

Apache는 바람둥이에 설치 한 인증서를 진실하지 않습니다. 자체 서명 된 인증서입니까? 아니면 사내 CA에서 만든 것입니까?
MK.

2
다음 명령으로 자체 서명됩니다. openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
user2791481

3
serverfault.com/questions/356678/… 나는 이것이 당신이 원하는 것이라고 생각합니다 : SSLProxyVerify 없음 SSLProxyCheckPeerCN off
MK.

9
SSLProxyCACertificateFile확인을 끄는 대신 사설 CA 인증서 로 설정 하는 것이 좋습니다.
ndbroadbent 2014 년

이 블로그에 설명 된 대로 SSL 검사를 끌 수 있습니다.
HybrisHelp

답변:


266

MK의 의견은 저를 올바른 방향으로 안내했습니다.

Apache 2.4 이상의 경우 다른 기본값과 새로운 지시문이 있습니다.

Apache 2.4.6을 실행 중이며 작동하려면 다음 지시문을 추가해야했습니다.

SSLProxyEngine on
SSLProxyVerify none 
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off

따라서 이것은 보호 기능을 해제하지만 트래픽이 로컬 인 한 (즉, 127.0.0.1:8443 ) 문제가되지 않을 것입니다.
bgStack15

5
글쎄, 암호화에 관한 한 보호 기능을 끄지는 않습니다. 트래픽은 여전히 ​​암호화됩니다. 이것은 단지 신뢰할 수있는 기관에 의한 것인지 확인하기 위해 인증서 검사를 비활성화합니다. 따라서 서버를 신뢰한다면 문제가 없어야합니다. 그러나 네, 지역 교통에 대해서는 당신도 괜찮다고 생각합니다.
mydoghasworms jul.

1
감사합니다 mydoghasworms. 지시문은 서버 버전 : Apache / 2.4.6에서 작동합니다. 누군가가 httpd 버전을 알아야하는 경우 다음을 사용하십시오. httpd -V
JRichardsz

3

도커, 리버스 프록시 및 웹 서버에 2 개의 서버가 설정되어 있습니다. 이 오류는 1 년 후 갑자기 내 모든 웹 사이트에서 발생하기 시작했습니다. 이전에 설정할 때 웹 서버에서 자체 서명 된 인증서를 생성했습니다.

그래서 SSL 인증서를 다시 생성해야했고 작동하기 시작했습니다 ...

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ssl.key -out ssl.crt


1

OP와 동일한 문제에 직면했습니다.

  • SOAP UI를 통해 직접 액세스 할 때 Tomcat이 응답을 반환했습니다.
  • html 파일을로드하지 않았습니다.
  • 이전 답변에서 언급 한 Apache 속성을 사용하면 웹 페이지가 나타나지만 AngularJS가 HTTP 응답을 얻지 못했습니다.

Tomcat SSL 인증서가 만료되었지만 브라우저에서 보안이 확인되었습니다. Apache 인증서가 만료되지 않았습니다. Tomcat KeyStore 파일을 업데이트하면 문제가 해결되었습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.