Apache에 SSL을 구성해보십시오

Apache에 SSL을 구성해보십시오

RHEL 7에 Apache 2.4.6을 설치했는데 SSL 없이도 잘 작동합니다. 이런 일이 처음이라 몇 가지 질문이 있습니다.

이것여기 의사가 그러더군요내 SSL 구성(내 생각에는 httpd.conf)에는 다음 항목이 포함되어야 합니다.

LoadModule ssl_module modules/mod_ssl.so

Listen 443
<VirtualHost *:443>
    ServerName www.example.com
    SSLEngine on
    SSLCertificateFile "/path/to/www.example.com.cert"
    SSLCertificateKeyFile "/path/to/www.example.com.key"
</VirtualHost>

httpd.conf내 라인을 검색했지만 <VirtualHost>찾을 LoadModule수 없습니다. 나는 그것들이 주석 처리되었을 수도 있고 주석을 제거하고 변경해야 한다고 생각했지만 두 줄 모두 존재하지 않습니다.

1) 그냥 위 두 항목을 파일 끝에 복사해서 붙여넣고 구성해도 되나요? 아니면 위에 주석 처리된 내용이 표시되지 않는 것이 특이한가요?

mod_ssl.so2) 내 Apache 어딘가에 내가 존재하는지 어디서 알 수 있나요 ?

3) 이제 내 청취는 다음과 같이 정의됩니다. Listen XX.XX.XXX.XX:80내 서버 IP 주소는 어디에 있습니까? XX.XX.XXX.XX주석을 달고 완전히 바꿔야 할까요 XX.XX.XXX.XX:443? 문서에는 이라고 나와 있어서 Listen 443혼란스럽습니다.

감사해요

답변1

1>당신할 수 있는에 추가하기만 하면 됩니다 /etc/httpd/conf/httpd.conf. 그러나 시스템의 Apache 구성 예가 어떻게 배치되어 있는지에 따라 이 특정 가상 호스트에 대한 구성을 자체 구성 파일 /etc/httpd/conf.d/example.com.ssl.conf( /etc/httpd/sites-available의 해당 심볼릭 링크 포함 /etc/httpd/sites-enabled) 또는 에 넣는 것이 더 좋습니다(전자는 RHEL이고 후자는 RHEL입니다). 데비안입니다).

2> 가장 쉬운 방법은 간단합니다 grep( grep -R '[^#]*mod_ssl\.so' /etc/httpd/*예: 이 모듈에 대한 주석 처리되지 않은 참조를 찾습니다.

3> 부터아파치 문서:

지시사항을 들어보세요

설명: 서버가 수신 대기하는 IP 주소 및 포트

통사론: Listen [IP-address:]portnumber [protocol]

Listen 지시문은 기본적으로 Apache httpd에 특정 IP 주소나 포트만 수신하도록 지시하고 모든 IP 인터페이스의 요청에 응답합니다. Listen은 이제 필수 지시어입니다. 구성 파일에 없으면 서버가 시작되지 않습니다. 이는 이전 버전의 Apache httpd에서 변경된 사항입니다.

Listen 지시문은 지정된 포트 또는 주소와 포트 조합으로 들어오는 요청을 수락하도록 서버에 지시합니다. 포트 번호만 지정하면 서버는 모든 인터페이스의 지정된 포트에서 수신 대기합니다. IP 주소와 포트가 주어지면 서버는 주어진 포트와 인터페이스를 수신합니다.

라고 말하면 Listen 443Apache는 모든 인터페이스에서 모든 HTTP 요청을 수신합니다. 라고 말하면 Listen 10.11.12.13:443IP 주소 10.11.12.13에 바인딩된 네트워크 인터페이스의 HTTPS 요청만 수신합니다.

관련 정보