728x90
반응형
아파치 웹 서버가 HTTPS(Hypertext Transfer Protocol Secure)로 통신하도록 설정하는 방법은 아래와 같다.
SSL 모듈 설치
아래의 명령어를 입력하여 'mod_ssl' 모듈 패키지를 설치한다.
dnf install mod_ssl
SSL 설정
아래의 명령어를 입력하여 아파치 웹 서버의 SSL(Secure Sockets Layer)을 설정하는 파일을 생성한다.
vi /etc/httpd/conf.d/ssl.conf
아래의 내용을 참고하여 SSL을 설정한다.
Listen 443 https
SSLPassPhraseDialog exec:/usr/libexec/httpd-ssl-pass-dialog
SSLSessionCache shmcb:/run/httpd/sslcache(512000)
SSLSessionCacheTimeout 300
SSLCryptoDevice builtin
<VirtualHost *:443>
ServerName 도메인명
ServerAlias 도메인명
DocumentRoot 경로
<Directory "경로">
AllowOverride FileInfo
Require all granted
DirectoryIndex index.php
</Directory>
SSLEngine on
SSLProtocol all -SSLv2
SSLCipherSuite ALL:!ADH:!EXPORT:!SSLv2:RC4+RSA:+HIGH:+MEDIUM:+LOW
SSLCertificateFile 경로/파일명.crt
SSLCertificateKeyFile 경로/파일명.key
SSLCACertificateFile 경로/파일명.crt
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
<Directory "/var/www/cgi-bin">
SSLOptions +StdEnvVars
</Directory>
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
ErrorLog logs/ssl_error_log
TransferLog logs/ssl_access_log
LogLevel warn
CustomLog logs/ssl_request_log \
"%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
</VirtualHost>
SELinux 보안 설정
아래의 명령어를 입력하여 SSL이 적용된 디렉토리의 권한을 설정한다.
semanage fcontext -a -t httpd_sys_content_t "{경로}(/.*)?"
restorecon -Rv {경로}
아파치 웹 서버 재시작
아래의 명령어를 입력하여 SSL 설정이 적용되도록 아파치 웹 서버를 재시작한다.
systemctl restart httpd
참고문서
- "1.8.1. Adding TLS encryption to an Apache HTTP Server", 레드햇 고객 포털. @원문보기
- "1.6. Configuring Apache name-based virtual hosts", 레드햇 고객 포털. @원문보기
- "[CentOS 7/8] 아파치 웹서버(HTTPD) HTTPS(SSL) 적용하기", 공학코드, 2021년 4월 8일. @원문보기
- "[RHEL] 아파치 웹 서버 로그 권한 오류 해결 방법", 공학코드, 2023년 7월 26일. @원문보기
728x90
반응형
'리눅스(Linux) > Red Hat' 카테고리의 다른 글
[RHEL] 디스크 목록 보기 (0) | 2023.08.12 |
---|---|
[RHEL] 클라우드플레어 방화벽 설정 (0) | 2023.08.11 |
[RHEL] SELinux 허용 포트 확인 및 추가 (0) | 2023.08.09 |
[RHEL 9] PostgreSQL 15 설치 (0) | 2023.07.31 |
[RHEL] Tomcat Connector(AJP, mod_jk)에서 'secret' 보안 오류 해결 방법 (2) | 2023.07.31 |
댓글