반응형

분류 전체보기 109

[오류 해결] Unable to get managed connection for java:/jdbc/xxx 에러 원인과 해결 방법

[오류 해결] Unable to get managed connection for java:/jdbc/xxx 에러 원인과 해결 방법Java 웹 애플리케이션에서 DB 연동 시 가장 흔하게 발생하는 장애 중 하나가 JDBC 커넥션 풀 고갈 또는 연결 실패입니다.이번 포스트에서는 WildFly + Oracle 환경에서 발생한 다음과 같은 에러 메시지에 대해 분석하고 해결 방법을 정리합니다.✅ 에러 메시지 요약javax.resource.ResourceException: IJ000453: Unable to get managed connection for java:/jdbc/OracleDSCaused by: java.sql.SQLRecoverableException: IO 오류: Got minus one from a..

Apache에서 사용 중인 SSL 인증서 만료일 확인 방법

Apache에서 사용 중인 SSL 인증서 만료일 확인 방법웹사이트를 HTTPS로 서비스할 때, SSL 인증서(보안서버 인증서)는 필수입니다.하지만 인증서는 유효기간이 존재하며, 만료되면 사이트에 보안 경고가 발생하고 트래픽 신뢰도에도 영향을 줍니다.이 글에서는 SSL 인증서의 기본 개념과 Apache 웹서버에서 인증서 경로를 찾고, 만료일을 확인하는 방법까지 정리합니다.✅ SSL 인증서란?SSL 인증서(Secure Sockets Layer Certificate)는 웹사이트와 브라우저 간 통신을 암호화하여 도청, 위조, 변조로부터 보호해주는 디지털 인증서입니다.주요 기능:HTTPS 통신 암호화서버의 신뢰성 보장 (도메인 또는 기업 인증)사용자 브라우저의 보안자물쇠 표시✅ 인증서가 만료되면 어떤 문제가 생기..

Web Servers 2025.05.14

Apache 로그 로테이션(Log Rotation) 설정 방법

Apache 로그 로테이션(Log Rotation) 설정 방법Apache 웹서버는 지속적으로 로그(access_log, error_log)를 생성하기 때문에, 적절한 로그 로테이션 설정이 없으면 디스크 공간이 급격히 소모될 수 있습니다.이 글에서는 Apache의 로그 파일을 안전하게 관리하는 로그 로테이션 2가지 방법을 소개합니다:✅ 방법 1: 시스템 도구 logrotate 사용 (권장)리눅스 대부분의 배포판은 logrotate를 통해 Apache 로그를 주기적으로 압축, 백업, 삭제할 수 있습니다.1. logrotate 설정 파일 위치RHEL/CentOS: /etc/logrotate.d/httpdUbuntu/Debian: /etc/logrotate.d/apache22. 기본 설정 예시/var/log/h..

Web Servers 2025.05.14

Apache 로그 로테이션(Log Rotation) 설정 방법

Apache 로그 로테이션(Log Rotation) 설정 방법Apache 웹서버는 지속적으로 로그(access_log, error_log)를 생성하기 때문에, 적절한 로그 로테이션 설정이 없으면 디스크 공간이 급격히 소모될 수 있습니다.이 글에서는 Apache의 로그 파일을 안전하게 관리하는 로그 로테이션 2가지 방법을 소개합니다:✅ 방법 1: 시스템 도구 logrotate 사용 (권장)리눅스 대부분의 배포판은 logrotate를 통해 Apache 로그를 주기적으로 압축, 백업, 삭제할 수 있습니다.1. logrotate 설정 파일 위치RHEL/CentOS: /etc/logrotate.d/httpdUbuntu/Debian: /etc/logrotate.d/apache22. 기본 설정 예시/var/log/h..

Web Servers 2025.05.13

Apache 웹서버 보안 취약점 항목과 조치 방법

Apache 웹서버 보안 취약점 항목과 조치 방법Apache HTTP Server는 널리 사용되는 웹서버이지만, 기본 설정 그대로 운영하거나 구버전을 사용하는 경우 보안 취약점에 노출되기 쉽습니다.이 글에서는 Apache 보안 취약점 항목과 조치 방법을 정리합니다.✅ 1. 서버 정보 노출(ServerTokens, ServerSignature)취약점 설명Apache 기본 설정은 응답 헤더나 에러 페이지에 서버 버전, 운영체제 정보 등을 노출합니다.조치 방법 (httpd.conf)ServerTokens ProdServerSignature OffServerTokens Prod → 응답 헤더에 "Apache"만 출력ServerSignature Off → 에러 페이지 하단의 서버 정보 제거✅ 2. 디렉토리 리스팅..

Web Servers 2025.05.13

Apache와 Tomcat 연동 시 Sticky Session(스티키 세션) 설정 방법

Apache와 Tomcat 연동 시 Sticky Session(스티키 세션) 설정 방법로드밸런싱 환경에서 클라이언트 요청이 항상 같은 Tomcat 인스턴스로 전달되도록 유지하는 기능을 Sticky Session 또는 Session Affinity라고 합니다.Apache에서 Tomcat을 연동할 때 mod_jk, mod_proxy_ajp, mod_proxy_http 등으로 구성할 수 있으며, 각각의 설정 방식에 따라 Sticky Session을 구현할 수 있습니다.✅ Sticky Session이 필요한 이유HTTP는 Stateless → 기본적으로 요청마다 서버가 다를 수 있음로그인 상태, 장바구니 등 세션 기반 정보가 유지되지 않음세션 클러스터링이 없거나 비활성화된 경우 Sticky Session이 필수..

Web Servers 2025.05.13

Apache에 chmod 6775 권한 부여하는 방법과 보안상의 주의사항

Apache에 chmod 6775 권한 부여하는 방법과 보안상의 주의사항실제 운영 환경에서는 일반 사용자 계정으로 Apache를 실행해야 할 때가 있습니다.이 때 1024 이하 포트(예: 80, 443)를 사용하려면 루트 권한이 필요하지만, 실무에서는 이를 우회하기 위해 Apache 실행 파일에 chmod 6775를 부여하는 방식이 종종 사용됩니다.이 글에서는 chmod 6775 설정 방법, 실무에서 쓰는 이유, 그리고 보안상의 위험성 및 대안까지 함께 설명합니다.✅ 1. chmod 6775란?sudo chmod 6775 /usr/sbin/httpd이 명령은 다음과 같은 권한을 Apache 실행 파일에 부여합니다:6 = setuid + setgid + rwx → 실행 시 파일의 소유자(root) 권한으로..

Web Servers 2025.05.13

Java 클래스 파일 위치 찾기 스크립트 (.class 또는 .jar 내부 포함)

Java 클래스 파일 위치 찾기 스크립트 (.class 또는 .jar 내부 포함)Java 프로젝트에서 특정 클래스가 어디에 존재하는지, 특히 클래스 파일이 폴더 안에 존재하는지 또는 어떤 JAR 파일에 포함되어 있는지 확인해야 할 때가 많습니다.이 스크립트는 다음과 같은 상황에서 유용하게 사용할 수 있습니다:✅ 사용하는 이유특정 클래스가 누락되었는지 확인동일한 클래스가 여러 위치(JAR)에 존재하는지 확인 (의존성 충돌 분석)클래스 로딩 순서를 점검하고 싶을 때배포 패키지(JAR/WAR)에 해당 클래스가 포함되어 있는지 검증✅ 사용법# 스크립트 실행 권한 부여chmod +x find-class.sh# 실행 형식./find-class.sh # 예시./find-class.sh /opt/app com.exa..

리눅스에서 CPU 사용량이 높은 자바 쓰레드(Thread) 찾는 방법

리눅스에서 CPU 사용량이 높은 자바 쓰레드(Thread) 찾는 방법Java 애플리케이션에서 특정 쓰레드가 비정상적으로 CPU를 많이 사용하는 경우, 시스템 전체 성능 저하나 장애로 이어질 수 있습니다. 이 글에서는 리눅스 환경에서 고CPU 쓰레드를 추적하는 절차와 명령어를 설명합니다.1. 전체 흐름 요약top 또는 htop으로 Java 프로세스 확인ps로 PID 상세 조회top -H -p 로 쓰레드별 CPU 사용량 확인printf로 TID(쓰레드 ID)를 16진수로 변환jstack으로 스레드 dump 후 TID 매칭2. Java PID 확인$ jps -lv또는$ ps -ef | grep java3. 쓰레드별 CPU 사용량 확인$ top -H -p PID: Java 프로세스 ID-H: 쓰레드 단위로 보기..

JDK 다운로드 경로와 Java 종류, Oracle 라이선스 정책 정리

JDK 다운로드 경로와 Java 종류, Oracle 라이선스 정책 정리이 글에서는 자바(Java)를 처음 사용하는 개발자부터 실무자까지 알아야 할 JDK 다운로드 방법, Java의 종류, 그리고 Oracle의 라이선스 정책 변화에 대해 정리합니다.1. JDK 다운로드 경로 정리Java는 다양한 벤더(배포사)에서 배포되고 있으며, 대표적인 JDK 배포 경로는 다음과 같습니다:배포사다운로드 링크특징Oracle JDKhttps://www.oracle.com/java/technologies/javase-downloads.html상용, 상업적 사용은 라이선스 주의OpenJDK (공식)https://jdk.java.netOracle이 오픈소스 버전 제공Adoptium (Eclipse Temurin)https://a..

System Settings 2025.05.13
반응형