[HTTPD] SELINUX & SSLCertificateFile does not exist or is empty

2026-05-08 KENNETH 0

개요 도메인 : ilaya.com 상황 : 인증서 설치 후 서비스 재시작 불가 및 오류 발생 httpd error log httpd[3636944]: SSLCertificateFile: file ‘/etc/httpd/SSL/ilaya.com.crt’ does not exist or is empty 에러 발생 원인 추정 1. Apache(httpd)가 설정 파일에 지정된 경로에서 인증서 파일을 찾지 못하는 경우 2. 파일이 존재하고 내용도 정상인 경우 권한(Permissions) SELinux 보안 정책 문제 서버 상태 1. 서버 환경 OS : Linux SELINUX : ON 2. 점검 항목 httpd 설정 정상 여부 : PASS ilaya.com.crt 파일 존재 : PASS 인증서 경로 및 인증서 파일의 권한 : PASS 파일 내용 정상 여부 : PASS SELINUX 작동에 의한 결과로 추정 SELINUX 보안 설정 확인 1. 파일 상태 확인 # ls -Z /etc/httpd/SSL/ilaya.com.crt unconfined_u:object_r:admin_home_t:s0 ilaya.com.crt httpd_config_t 또는 cert_t가 포함되어야 하지만 결과에 있지 않음 2. 파일이나 디렉토리의 보안 문맥(Security Context)을 시스템에 정의된 기본값으로 되돌리기 # restorecon -v /etc/httpd/SSL/ilaya.com.crt # ls -Z /etc/httpd/SSL/ilaya.com.crt unconfined_u:object_r:cert_t:s0 ilaya.com.crt cert_t 문자열이 포함되어 [ more… ]

[SYSTEMD] systemd + logrotate 환경에서 “Read-only file system” 에러

2026-02-03 KENNETH 0

OS : RockyLinux9 문제 개요 1. 특정 위치의 logrotation 이 진행되지 않음 원인 : “Read-only file system” 에러를 동반 messages log logrotate[2848371]: error: failed to rename /usr/local/httpd2/logs/test.com-access_log to /usr/local/httpd2/logs/test.com-access_log-20260202: Read-only file system logrotate[2848371]: error: failed to rename /usr/local/httpd2/logs/test.com-error_log to /usr/local/httpd2/logs/test.com-error_log-20260202: Read-only file system logrotate[2848371]: error: error opening /usr/local/php/var/log/php-fpm.log: Read-only file system logrotate[2848371]: error: error opening /usr/local/php/var/log/slow.log: Read-only file system 2. 업데이트 기록 로그 : /var/log/dnf.log /var/log/dnf.log.4:2025-12-07T20:04:21+0900 DEBUG —> Package logrotate.x86_64 3.18.0-9.el9 will be upgraded /var/log/dnf.log.4:2025-12-07T20:04:21+0900 DEBUG —> Package logrotate.x86_64 3.18.0-12.el9 will be an upgrade /var/log/dnf.log.4:2025-12-07T20:04:21+0900 DEBUG —> Package systemd.x86_64 252-51.el9_6.3.rocky.0.1 will be upgraded /var/log/dnf.log.4:2025-12-07T20:04:21+0900 DEBUG —> Package systemd.x86_64 252-55.el9_7.7.rocky.0.1 will be an upgrade 3. 로그파일 현황 -rw-r–r– 1 root root  1682882 Dec  5 23:49 access_log-20251206 -rw-r–r– 1 root root  1904115 Dec  6 23:54 access_log-20251207 -rw-r–r– 1 root root 54981516 Feb  2 21:08 access_log 업데이트가 이루어진 2025.12.07 부터 logrotation 이 수행되지 [ more… ]

[LINUX] DB access fails on PHP webpage, but CLI succecess on rhel (by selinux)

2024-09-03 KENNETH 0

  증상 PHP스크립트 내에 DB(mysql) 커넥션을 수행시 오류 발생 터미널 상에서 CLI를 이용한 실행 : OK 웹페이지(웹서버)를 통한 실행 : FAIL CLI실행시 문제가 없음 → PHP 코드 내의 “DB접속정보 (host/id/pass/dbname)”는 오류가 없음       원인 및 문제 여부 확인 SELinux 정책에 의한 문제 기본적으로 제한되어 있는것으로 보여짐 결과적으로 문제는 발생하였으나, 이것이 httpd, php 측에서 발생한 에러가 아니다보니 웹서버 및 브라우저 측면에서는 정확하거나 신속하게 확인이 되지 않음 때문에 “감사시스템로그(audit.log)” 에서 확인해야 함 1. 로그 file : /var/log/audit/audit.log     2. 로그확인 exec : audit2why       해결   1. SELinux 의 정책 설정 변경 exec : setsebool setsebool -P httpd_can_network_connect 1 setsebool -P httpd_can_network_connect_db 1   httpd_can_network_connect : HTTP 스크립트 및 모듈의 네트워크 또는 원격 포트에 대한 연결 허용 여부 httpd_can_network_connect_db : HTTP 스크립트 및 모듈의 DB서버에 대한 연결 허용 여부 httpd_can_network_connect 항목을 활성화 해주면 httpd_can_network_connect_db 항목이 “off” 상태로 [ more… ]