Red Hat Training

A Red Hat training course is available for RHEL 8

5.3. 애플리케이션에서 TLS 구성 강화

RHEL에서 시스템 전체 암호화 정책은 암호화 라이브러리를 사용하는 애플리케이션에서 알려진 비보안 프로토콜, 암호 또는 알고리즘을 허용하지 않도록 하는 편리한 방법을 제공합니다.

사용자 지정 암호화 설정으로 TLS 관련 구성을 강화하려면 이 섹션에 설명된 암호화 구성 옵션을 사용하고 필요한 최소 용량의 시스템 전체 암호화 정책을 재정의할 수 있습니다.

사용할 구성이 무엇이든 관계없이 서버 애플리케이션이 서버 측 암호 순서 를 강제 적용하므로 사용할 암호 모음은 구성하는 순서에 따라 결정됩니다.

5.3.1. TLS를 사용하도록 Apache HTTP 서버 구성

Apache HTTP Server는 TLS 요구 사항에 따라 OpenSSLNSS 라이브러리를 모두 사용할 수 있습니다. RHEL 8에서는 eponymous 패키지를 통해 mod_ssl 기능을 제공합니다.

# yum install mod_ssl

mod_ssl 패키지는 Apache HTTP Server의 TLS 관련 설정을 수정하는 데 사용할 수 있는 /etc/httpd/conf.d/ssl.conf 구성 파일을 설치합니다.

httpd-manual 패키지를 설치하여 TLS 구성을 포함하여 Apache HTTP Server 에 대한 전체 문서를 가져옵니다. /etc/httpd/conf.d/ssl.conf 구성 파일에서 사용 가능한 지시문은 /usr/share/httpd/manual/mod/mod_ssl.html 파일에 자세히 설명되어 있습니다. 다양한 설정의 예는 /usr/share/httpd/manual/ssl/ssl_howto.html 파일에 설명되어 있습니다.

/etc/httpd/conf.d/ssl.conf 구성 파일의 설정을 수정할 때 최소한 다음 세 가지 지시문을 고려해야 합니다.

SSLProtocol
이 지시문을 사용하여 허용하려는 TLS 또는 SSL 버전을 지정합니다.
SSLCipherSuite
이 지시문을 사용하여 선호하는 암호화 제품군을 지정하거나 허용하지 않을 암호화 제품군을 비활성화합니다.
SSLHonorCipherOrder
연결 클라이언트가 지정한 암호 순서를 준수하는지 확인하기 위해 이 지시문의 주석을 on 으로 설정합니다.

예를 들어 TLS 1.2 및 1.3 프로토콜만 사용하려면 다음을 수행합니다.

SSLProtocol             all -SSLv3 -TLSv1 -TLSv1.1

자세한 내용은 다양한 유형의 서버 배포 문서의 Apache HTTP Server에서 TLS 암호화 구성 장을 참조하십시오.

5.3.2. TLS를 사용하도록 Nginx HTTP 및 프록시 서버 구성

Nginx 에서 TLS 1.3 지원을 활성화하려면 /etc/nginx/nginx.conf 구성 파일의 server 섹션에 있는 ssl_protocols 옵션에 TLSv1.3 값을 추가합니다.

server {
    listen 443 ssl http2;
    listen [::]:443 ssl http2;
    ....
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers
    ....
}

자세한 내용은 다양한 유형의 서버 배포 문서의 Nginx 웹 서버에 TLS 암호화 추가 장을 참조하십시오.

5.3.3. TLS를 사용하도록 Dovecot 메일 서버 구성

TLS를 사용하도록 Dovecot 메일 서버의 설치를 구성하려면 /etc/dovecot/conf.d/10-ssl.conf 구성 파일을 수정합니다. /usr/share/doc/dovecot/SSL/DovecotConfiguration.txt 파일에서 사용 가능한 일부 기본 구성 지시문에 대한 설명은 Dovecot 표준 설치와 함께 설치됩니다.

/etc/dovecot/conf.d/10-ssl.conf 구성 파일의 설정을 수정할 때 다음 세 지시문을 최소한으로 고려해야 합니다.

ssl_protocols
이 지시문을 사용하여 허용 또는 비활성화하려는 TLS 또는 SSL 버전을 지정합니다.
ssl_cipher_list
이 지시문을 사용하여 선호하는 암호화 제품군을 지정하거나 허용하지 않을 암호화 제품군을 비활성화합니다.
ssl_prefer_server_ciphers
연결 클라이언트가 지정한 암호 순서를 준수하는지 확인하기 위해 이 지시문의 주석을 제거하고 yes 로 설정합니다.

예를 들어 /etc/dovecot/conf.d/10-ssl.conf 의 다음 행에서는 TLS 1.1 이상만 허용합니다.

ssl_protocols = !SSLv2 !SSLv3 !TLSv1