서버의 IP에 대한 SSL 브라우저 요청이 FQDN으로 리디렉션되도록 Apache 역방향 프록시

서버의 IP에 대한 SSL 브라우저 요청이 FQDN으로 리디렉션되도록 Apache 역방향 프록시

저는 Apache와 Apache가 아닌 사용자 정의 웹 서비스를 동일한 서버에서 실행하고 있습니다. 누군가가 브라우저에 주소를 입력하여 내 사이트에 접속할 때 SSL 경고가 표시되는 것을 방지하기 위해 Apache에서 다른 사이트에 대한 SSL 연결을 역방향 프록시하도록 하려고 합니다(https://xx.xx.xx.xx). 인증서 경고를 방지하기 위해 이러한 상황에서는 요청이 자동으로 FQDN 요청으로 변경되기를 원합니다.

내 사이트는 사용자 지정 서비스(Apache가 아님)에서 실행되고 있으며 이를 중지할 수 없습니다. 내 계획은 443에서 수신 대기하고 동일한 상자의 포트 80으로 리디렉션하도록 Apache를 설정하고 일종의 다시 쓰기 규칙을 사용하여 직접 IP 액세스를 방지하거나 리디렉션하는 것입니다.

해당 부분이 제대로 작동하도록 할 수 있지만 IP에 대한 직접 요청은 이름에 대한 요청으로 자동 리디렉션되지 않습니다. 포트 8080에서 부분적으로 작동하는 테스트 구성은 다음과 같습니다.

<VirtualHost *:8080>
ServerName fqdn
SSLEngine On
SSLCertificateFile /etc/httpd/ssl/Cert.crt
SSLCertificateKeyFile /etc/httpd/ssl/Key.key
SSLCertificateChainFile /etc/httpd/ssl/TrustedRoot.crt
ProxyRequests Off
ProxyPreserveHost On
<Proxy *>
AddDefaultCharset Off
Order deny,allow
Allow from all
</Proxy>
ProxyPass / http://fqdn:80/
ProxyPassReverse / http://fqdn:80/

ErrorLog logs/myserver-error_log
CustomLog logs/myserver-access_log common
</VirtualHost>

몇 가지 재작성 지시문을 시도했지만 큰 성공을 거두지 못했습니다. 또한 자바스크립트 리디렉션은 SSL 오류를 방지하지 못합니다. 아이디어?

답변1

외부에서 접근할 수 없는 포트(예: 8888)에서 수신 대기하도록 서비스를 변경하십시오. Apache는 들어오는 모든 요청을 처리하고 마음에 들지 않는 요청에 대해 리디렉션(재작성)을 보내야 합니다. 예를 들어 만족하는 것. FQDN:

ProxyPass / http://127.0.0.1:8888/
ProxyPassReverse / http://127.0.0.1:8888/

보안 요청(https/SSL)을 위해 포트 443에 가상 호스트를 추가하고 FQDN을 사용하지 않고 시스템에 들어오는 요청을 위해 기본 서버를 추가합니다.

관련 정보