프로젝트 소개

CFSSL(CloudFlare의 PKI/TLS 스위스 아미 나이프)은 공개 키 인프라(PKI) 및 전송 계층 보안(TLS) 관리를 위해 설계된 오픈 소스 툴킷입니다. 이는 명령줄 인터페이스(CLI) 도구와 HTTP API 서버로 모두 작동하여, 사용자가 TLS 인증서를 효율적으로 서명, 검증, 번들링할 수 있게 합니다. 주요 구성 요소: - cfssl: 인증서 서명, 키 생성, 번들 생성, API 서버 시작과 같은 다양한 PKI 작업을 수행하는 기본 CLI 유틸리티입니다. - multirootca: 여러 서명 키를 사용할 수 있는 인증 기관 서버로, 서명, 인증된 서명, 정보 검색을 위한 엔드포인트를 제공합니다. - mkbundle: 폐기 및 만료를 확인하여 루트 및 중간 인증서 번들을 구축하는 유틸리티입니다. - cfssljson: CFSSL의 JSON 출력을 키, 인증서, CSR, 번들용 별도 PEM 파일로 변환하는 도우미 도구입니다. 핵심 기능: 1. 인증서 서명: 사용자는 로컬 또는 원격 CA를 사용하여 인증서 서명 요청(CSR)에 서명할 수 있습니다. 이 도구는 호스트 이름 재정의 및 JSON 구성을 통한 주체 세부 정보 지정을 지원합니다. 2. 인증서 번들링: CFSSL은 암호화 강도와 브라우저 호환성에 따라 다양한 유형(최적, 보편적, 강제)의 인증서 체인을 구축할 수 있습니다. 도메인에서 직접 인증서를 가져오는 것을 지원합니다. 3. 키 및 CSR 생성: 키 알고리즘, 크기, 주체 정보를 정의하는 JSON 템플릿을 사용하여 개인 키와 해당 CSR 또는 자체 서명 인증서를 생성합니다. 4. OCSP 지원: 발급된 인증서에 대한 OCSP 응답을 생성하고 OCSP 응답자를 통해 제공합니다. 5. API 서버: 사용자 지정 주소, 포트, 로깅 수준, 데이터베이스 구성이 가능한 원격 인증서 작업용 HTTP 기반 API 서버를 시작합니다. 설치에는 cgo 종속성으로 인해 Go 1.20 이상이 필요합니다. 사전 빌드된 바이너리는 GitHub 릴리스에서 제공됩니다. 이 툴킷은 TLS 인증서 수명 주기 관리를 자동화하기 위해 인프라에서 널리 사용됩니다.