본문 바로가기

리눅스 리뷰

리눅스에서 인증서 확인 방법

728x90
반응형

리눅스에서 인증서 확인 방법

리눅스 환경에서 SSL/TLS 인증서를 확인하는 방법을 알아보겠습니다. 서버의 보안 설정을 점검하거나 인증서 관련 문제를 디버깅할 때 유용합니다. 아래는 자주 사용되는 명령어와 도구를 활용한 방법입니다.

1. OpenSSL을 사용한 인증서 확인

OpenSSL은 인증서 정보를 확인하는 데 가장 널리 사용되는 도구입니다. 다음 명령어를 사용해 서버의 인증서를 확인할 수 있습니다.

서버 인증서 정보 확인

openssl s_client -connect example.com:443 -servername example.com
  • -connect: 연결할 서버와 포트를 지정합니다 (예: example.com:443).
  • -servername: SNI(Server Name Indication)를 지정해 특정 도메인의 인증서를 요청합니다.
  • 실행 후, 인증서의 세부 정보(발급자, 유효 기간, 공개 키 등)가 출력됩니다.

인증서 파일 내용 확인

로컬에 저장된 인증서 파일(예: .pem, .crt)을 확인하려면 다음 명령어를 사용하세요:

openssl x509 -in certificate.crt -text -noout
  • -in: 확인할 인증서 파일 경로.
  • -text: 인증서의 세부 정보를 텍스트로 출력.
  • -noout: 원본 인증서 데이터를 제외하고 정보만 출력.

2. 인증서 유효 기간 확인

인증서의 만료 날짜를 확인하려면 다음 명령어를 사용하세요:

openssl x509 -in certificate.crt -enddate -noout
  • 출력 예: notAfter=Sep 6 12:00:00 2026 GMT (만료 날짜).

3. curl을 사용한 인증서 확인

curl 명령어도 간단히 인증서 정보를 확인하는 데 유용합니다.

curl -vI https://example.com
  • -v: 자세한(verbose) 출력 모드.
  • -I: 헤더 정보만 요청.
  • 출력된 정보에서 Server certificate 섹션에서 인증서 정보를 확인할 수 있습니다.

4. 인증서 체인 확인

인증서 체인을 확인하려면 OpenSSL을 사용해 전체 체인을 출력하세요:

openssl s_client -connect example.com:443 -showcerts
  • -showcerts: 인증서 체인에 포함된 모든 인증서를 출력.
  • 루트 CA, 중간 CA, 서버 인증서 등의 정보를 확인할 수 있습니다.

5. 인증서 문제 디버깅

인증서 관련 오류(예: 만료, 신뢰 문제)를 디버깅할 때 다음 단계를 참고하세요:

  1. 만료 확인: 위의 유효 기간 확인 명령어로 만료 여부 점검.
  2. 체인 검증: openssl verify 명령어로 인증서 체인 검증.
    openssl verify -CAfile ca-certificates.crt certificate.crt
  3. SNI 문제: -servername 옵션을 사용해 올바른 도메인 지정 확인.

6. 시스템 인증서 저장소 확인

리눅스 시스템의 신뢰된 CA 인증서 저장소를 확인하려면 다음 경로를 확인하세요:

  • Ubuntu/Debian: /etc/ssl/certs
  • CentOS/RHEL: /etc/pki/tls/certs
  • ca-certificates 패키지가 설치되어 있는지 확인:
    dpkg -l | grep ca-certificates

마무리

리눅스에서 인증서를 확인하는 방법은 OpenSSL, curl 등의 도구를 통해 간단히 수행할 수 있습니다. 서버 관리나 보안 점검 시 위 명령어를 활용해 인증서의 유효성, 체인, 만료 날짜 등을 확인하세요. 문제가 발생하면 인증서 체인, SNI 설정, 시스템 CA 저장소를 점검하는 것이 중요합니다.

반응형