설치 지점 관리
설치 지점은 clmBot 구성 파일에서 인증서 배포 대상으로, 인증서 형식(format), 파일 경로 및 업데이트 스크립트로 구성됩니다. 하나의 clmBot 노드에서 여러 설치 지점을 관리할 수 있습니다.
clmBot은 다음 설치 지점 관리 명령을 제공합니다.
| 명령 | 용도 |
|---|---|
discover-certificate | 로컬 머신(및 Docker 컨테이너)의 인증서를 자동 스캔하여 설치 지점으로 추가 |
add-server | 대화형으로 설치 지점 수동 추가(로컬 구성에만 기록) |
sync-server | 로컬 설치 지점을 클라우드에 동기화하고 인증서 구독 번호 보정 |
setup | 로컬 웹 구성 페이지를 시작하여 브라우저에서 설치 지점 관리 |
query-certificate | 각 설치 지점에 현재 배포된 인증서 정보를 읽기 전용으로 확인 |
인증서 설치 지점 자동 검색
discover-certificate를 실행하여 서버에 이미 배포된 인증서를 자동 스캔합니다.
./clm-bot-linux-amd64 discover-certificate
스캔 범위:
- Linux: nginx, Apache HTTP Server, Tomcat.
- Windows: IIS.
명령 실행 후 발견된 인증서 정보(출처, 유형, 인증 기관, 주체, 경로, 액세스 포인트, 일련번호 등)가 표 형태로 나열됩니다. 백엔드 관리에 추가할 인증서 번호를 입력하여 확인합니다:
all: 모두 업로드none: 업로드 안 함1,3-5: 번호별 선택, 범위 표기 지원
업로드에 성공하면 이 인증서들은 설치 지점으로 관리 백엔드에 나타나며, clmBot이 config.yaml에서 각 설치 지점에 해당하는 구성을 생성합니다.
사용 가능한 매개변수
| 매개변수 | 설명 |
|---|---|
--yes / -y | 선택을 건너뛰고 모든 설치 지점 업로드 |
--select | 업로드할 일련번호를 직접 지정합니다(all, none 또는 1,3-5). --yes와 상호 배타적입니다 |
--skip-filter / -s | 인증서 도메인(SAN) 필터링을 건너뜁니다. 기본적으로 클라우드에서 허용된 도메인과 일치하는 인증서만 업로드합니다 |
--scan-docker / -d | Docker 컨테이너 내부의 nginx, Apache, Tomcat 설정 추가 스캔(Linux/macOS만 해당) |
--scan-only | 로그인 및 업로드 없이 전체 인증서 설치 지점만 스캔하여 출력, 배포 전 미리보기에 적합 |
Docker 컨테이너 시나리오
--scan-docker 사용 시 clmBot은 현재 머신에서 실행 중인 nginx, Apache, Tomcat 컨테이너를 스캔합니다:
- 컨테이너 내부의 인증서 경로는 반드시 호스트 머신에 마운트되어 있고 쓰기 가능해야 하며, 그렇지 않으면 해당 설치 지점은 무시됩니다.
- 설치 지점의 접근 지점은 호스트 머신이 게시한 IP와 포트를 사용하여 생성됩니다.
CLMBOT_NGINX_CONTAINERS,CLMBOT_APACHE_CONTAINERS,CLMBOT_TOMCAT_CONTAINERS환경 변수를 통해 스캔할 컨테이너 이름을 지정할 수 있습니다(여러 컨테이너 이름은 세미콜론으로 구분).
수동으로 설치 지점 추가
클라우드 인증서가 서버에 배포되지 않았거나 자동 스캔으로 식별하지 못한 경우, 수동으로 설치 지점을 추가할 수 있습니다:
./clm-bot-linux-amd64 add-server 260101AABBCC pem
첫 번째 매개변수는 인증서 구독 번호이고, 두 번째 매개변수는 인증서 형식(pem, pfx, jks, iis 또는 exchange)입니다. 안내에 따라 설치 지점 ID와 해당 형식의 파일 경로 등의 정보를 순서대로 입력합니다.
add-server은(는) 설치 지점을 로컬 config.yaml에만 기록하며 클라우드에 자동으로 업로드하지 않습니다. 클라우드에 동기화하려면 이어서 sync-server을(를) 실행하십시오.
설치 지점을 클라우드에 동기화
sync-server 로컬 구성의 설치 지점을 클라우드에 업로드하고, 클라우드에서 반환된 구독 번호를 사용하여 로컬 구성을 보완하거나 보정합니다:
./clm-bot-linux-amd64 sync-server
실행 후 로컬 설치 지점을 나열하고, 순번을 선택해 업로드할 항목을 고릅니다(마찬가지로 all, none, 1,3-5 지원). --yes로 전체 업로드하거나 --select로 직접 지정할 수도 있습니다.
- 로컬 구독 번호가 비어 있으면 자동으로 채워집니다. 클라우드와 일치하지 않으면 충돌 항목이 표시되며, 확인해야만 덮어씁니다.
- Exchange 형식의 설치 지점은 현재 동기화를 지원하지 않습니다.
로컬 웹 설정 페이지
명령줄 사용이 익숙하지 않다면 setup로 로컬 설정 페이지를 시작해 브라우저에서 설치 지점을 추가·편집·삭제할 수 있습니다.
./clm-bot-linux-amd64 setup
실행 후 무작위 토큰이 포함된 접속 주소(예: http://localhost:<端口>/setup?token=...)가 출력되며, 서버 본机的 브라우저에서 열어 설치 지점을 관리할 수 있습니다.
설정 페이지는 서버 본机的 루프백 주소만 수신하므로 다른 호스트에서 접근할 수 없습니다. 토큰이 포함된 접속 주소를 관계없는 사람에게 공개하지 마십시오. 사용을 마친 후 Ctrl+C(또는 안내에 따라 조작)하여 페이지를 중지하십시오.
포트를 지정하려면 -a 매개변수를 사용할 수 있습니다(예: setup -a localhost:8900). 구버전 브라우저 환경에서는 --legacy를 추가하여 순수 HTML 설정 페이지를 사용할 수 있습니다.
설치 지점 인증서 정보 조회
query-certificate는 각 설치 지점에 현재 배포된 인증서 정보(주체, 발급자, 일련번호)를 읽기 전용으로 조회하며 인증서 파일을 수정하지 않습니다:
./clm-bot-linux-amd64 query-certificate
기본적으로 모든 설치 지점을 조회하며, -i 매개변수를 사용하여 설치 지점 ID를 지정할 수 있습니다. 예: query-certificate -i nginx_pem.
다음 단계
설치 지점이 준비되면 인증서 갱신 방식을 구성하세요. 인증서 갱신 방식을 참조하세요.