인증서 만료 점검과 인수인계¶
malmok certs는 서버 노드에 저장된 RKE2 인증서를 읽고 만료일을 기록합니다.
클러스터 인수인계나 유지보수 일정 검토에 사용할 수 있습니다.
클러스터 변경·인증서 갱신·서비스 재시작은 수행하지 않습니다.
v0.96.4부터 제공
명령과 인증서 인수인계 필드는 v0.96.4에 추가됐습니다. v0.96.3 이하에는 없으므로 이 문서를 따르기 전에 업그레이드해야 합니다. 변경 이력과 설치 안내를 참고하십시오.
점검 실행¶
클러스터 구성 파일과 RKE2 인증서 디렉터리를 읽을 수 있는 계정을 사용합니다. 문서의 로컬/SSH 연결·권한 상승 설정을 사용하며, 명령 자체가 접근 권한을 부여하지는 않습니다.
# 경고와 측정 문제 표시
malmok certs -f cluster.yaml
# 측정한 인증서 전체 표시
malmok certs -f cluster.yaml -v
# 측정 결과와 문제를 stdout에 JSON으로 출력
malmok certs -f cluster.yaml -o json
Bash와 Fish에서 명령은 같습니다. JSON은 node, findings, problems를 가진
노드별 결과 목록입니다. 실행 정보는 stderr로 출력되어 JSON과 섞이지 않습니다.
결과 해석¶
| 종료 코드 | 의미 |
|---|---|
0 |
적용 대상의 측정 문제나 경보 임계값 도달이 없음 |
2 |
측정한 인증서가 경보 임계값에 도달했거나 만료됨 |
3 |
적용 대상의 측정을 완료하지 못함. 2보다 우선 |
1 |
잘못된 입력·연결 준비·출력 실패 등 명령 실행 오류 |
0이 아닌 코드를 모두 인증서 만료로 해석하지 마십시오. 경고 표가 비어 있어도 전체 인증서 목록을 확인했다는 뜻은 아닙니다. 측정 문제와 건너뛴 항목을 함께 확인하십시오. 연결 준비 등의 실패는 측정 결과를 출력하기 전에 명령을 종료할 수 있습니다.
현재는 topology.servers에 나열한 서버의 /var/lib/rancher/rke2/server/tls 아래
*.crt를 하위 디렉터리까지 읽습니다. 개인 키는 열지 않고, 번들에 반복 포함된 인증서는
노드별로 중복 제거합니다. agent 전용 노드, 사용자 지정 RKE2 데이터 디렉터리,
Gateway가 제공하는 인증서와 다른 경로의 인증서는 이 명령의 점검 범위가 아닙니다.
내부 leaf 경보는 잔여 150·100·30일, 갱신 창 판정은 120일, CA 경보는 180일을 사용합니다. 현재 도구의 임계값이지 현장의 유지보수 정책이나 모든 RKE2 버전에 대한 보장은 아닙니다. 갱신 창 진입으로 표시돼도 갱신을 실행하지 않습니다.
점검 결과를 보고서로 보존¶
점검마다 기본적으로 ./out/runs/ 아래에 실행 기록을 만듭니다.
최신 실행을 추정하지 말고 해당 점검이 출력한 실행 ID를 지정하십시오.
실행의 artifacts/ 디렉터리에 audit-report.md와 handoff.json을 생성하며,
해당하면 DNS 기록도 생성합니다. 보고서는 실시간 클러스터가 아닌 저장된 실행을
읽습니다. 나중에 report를 다시 실행해도 만료일을 재측정하지 않습니다.
certs --bundle PATH를 썼다면 report에도 같은 --bundle PATH를 지정하십시오.
handoff.json의 certificates.measured는 점검 기록이 있다는 뜻이지 모든 인증서를
읽었다는 뜻이 아닙니다. certificates.items와 certificates.unmeasured를 함께
확인하십시오. 각 항목에는 노드·subject·절대 만료 시각 notAfter·점검 당시 잔여일·
진단 코드가 담깁니다. 인증서 점검이 없던 이전 실행은 certificates.measured: false이며,
보고서를 다시 만들어도 측정값이 생기지 않습니다.
점검 전용 실행에는 apply 완료 이벤트가 없어 run.result: incomplete일 수 있습니다.
점검 성공 여부는 설치 결과 필드가 아니라 인증서 필드와 명령 종료 코드로 판단하십시오.
일회성 점검이므로 정기 실행·알림·갱신 결정은 운영자가 맡습니다. 설정과 보고서에는 내부 호스트명·주소·인증서 subject가 포함될 수 있으므로 보호하십시오.