4.3. 애플리케이션에서 TLS 구성 강화
RHEL에서 시스템 전체 암호화 정책은 암호화 라이브러리를 사용하는 애플리케이션에서 알려진 비보안 프로토콜, 암호 또는 알고리즘을 허용하지 않도록 하는 편리한 방법을 제공합니다.
사용자 지정 암호화 설정으로 TLS 관련 구성을 강화하려면 이 섹션에 설명된 암호화 구성 옵션을 사용하고 필요한 최소 용량의 시스템 전체 암호화 정책을 재정의할 수 있습니다.
사용할 구성이 무엇이든 관계없이 서버 애플리케이션이 서버 측 암호 순서 를 강제 적용하므로 사용할 암호 모음은 구성하는 순서에 따라 결정됩니다.
4.3.1. TLS를 사용하도록 Apache HTTP 서버 구성
Apache HTTP Server
는 TLS 요구 사항에 따라 OpenSSL
및 NSS
라이브러리를 모두 사용할 수 있습니다. 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 암호화 구성 장을 참조하십시오.
4.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 암호화 추가 장을 참조하십시오.
4.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
추가 리소스
- RHEL 8에서 다양한 유형의 서버 배포
-
config(5)
및ciphers(1)
도움말 페이지. - TLS(Trans gram Transport Layer Security) 및 DTLS(데이터그램 전송 계층 보안)의 안전한 사용을 위한 권장 사항.
- Mozilla SSL 구성 생성기.
- SSL 서버 테스트.