ServBay에서 ACME 방식을 이용한 웹사이트 SSL 인증서 신청
ServBay는 ACME(Automated Certificate Management Environment) 프로토콜을 이용해 로컬 개발 웹사이트에 SSL/TLS 인증서를 자동으로 신청할 수 있습니다. ACME는 인증서의 신청, 갱신, 폐기를 포함한 수명 주기 관리를 자동화하는 표준 프로토콜입니다. ServBay가 제공하는 ACME 관리 패널을 통해 로컬 사이트에 신뢰받는 SSL 인증서를 쉽게 설정할 수 있으며, 이는 실제 운영 환경을 시뮬레이션하고 HTTPS 연동 및 관련 기능을 테스트할 때 매우 중요합니다.
ServBay는 기본적으로 ZeroSSL에서 인증서를 우선 발급받으며, 필요에 따라 Let's Encrypt 또는 Google Trust Services 등 다른 ACME 호환 기관(CA)을 자유롭게 선택할 수 있습니다.
TIP
운영 환경과 로컬 개발 환경을 최대한 일치시키려면 신뢰받는 SSL 인증서를 사용하는 것이 매우 중요합니다. ServBay의 ACME 기능으로 그 과정이 매우 간편해집니다.
핵심 개념 설명
시작에 앞서, ServBay의 ACME 기능을 더 잘 활용하려면 다음 주요 개념을 숙지하는 것이 좋습니다:
- ACME 프로토콜: 인증서 발급 기관(CA)과 서버 간의 상호작용을 자동화하여 인증서를 신청, 갱신, 관리할 수 있도록 해주는 개방형 표준 프로토콜입니다.
- DNS-01 인증 (DNS API 방식): ACME 프로토콜은 다양한 도메인 소유권 인증 방식을 지원합니다. ServBay는 주로 DNS-01 방식을 사용하며, 이는 CA가 도메인 DNS 레코드에 지정된 TXT 레코드를 추가하도록 요구함을 의미합니다. 이 레코드가 존재하고 내용이 정확함을 확인하면, CA가 도메인에 대한 제어권을 확인하게 됩니다. DNS-01 방식의 장점:
- 로컬 개발 환경이 외부 인터넷에 노출될 필요가 없습니다.
- 로컬의 80/443 포트가 방화벽이나 ISP에 의해 차단되어도 인증이 가능합니다.
- 외부 계정 연동 (EAB - External Account Binding): 일부 CA(예: Google Trust Services, ZeroSSL)에서는 ACME로 최초 인증서 신청 시, 사용자의 ACME 클라이언트(여기서는 ServBay에 내장된 acme.sh)를 해당 CA 계정과 연동해야 합니다. EAB 정보는 보통 Key ID와 HMAC Key로 구성됩니다.
- ECC vs RSA 인증서:
- RSA: 전통적인 암호화 방식으로 호환성은 뛰어나지만 보안을 위해 장키(2048비트 혹은 4096비트)를 사용하므로 연산 부담이 상대적으로 큽니다.
- ECC(타원 곡선 암호화): 최신 암호화 방식으로, 동일한 보안 수준에서 더 짧은 키(보통 256비트 또는 384비트)로 효율성을 높이며, 속도, 대역폭, 프라이버시 측면에서 우수합니다. ServBay는 기본적으로 ECC 인증서를 권장합니다.
사전 준비 사항
ServBay는 ACME 인증서 신청 시 DNS API 방식을 사용하므로, 로컬 사이트가 인터넷에 노출될 필요가 없습니다. SSL 인증서를 ACME 방식으로 신청하려면 다음 조건을 충족해야 합니다:
- 도메인 보유: 이미 등록되어 DNS 레코드를 관리할 수 있는 도메인을 보유해야 합니다.
- 도메인 DNS 공급자의 API Key 확보: ACME 신청 시 DNS API를 이용해 TXT 레코드를 자동으로 추가/삭제하므로, 도메인 DNS 서비스를 제공하는 플랫폼(도메인 등록업체와 다를 수 있음)의 API Key 또는 인증서가 필요합니다. ServBay에서 지원하는 DNS 서비스와 해당 API Key 발급 방법은
acme.sh공식 Wiki의 DNS API 사용법 섹션(영문)을 참고하세요. - EAB 정보 확보(최초 Google Trust Services, ZeroSSL 사용 시): 만약 Google Trust Services로 인증서를 신청하고자 한다면, Google Cloud에서 EAB 정보를 받아야 합니다. 자세한 방법은 Google Cloud 공식문서 Obtaining EAB credentials from Google Cloud를 참고하세요. ZeroSSL은 최초 신청 시 이메일 인증이나 API Key 입력이 필요할 수 있습니다.
ServBay에서 ACME 방식으로 SSL 인증서 신청하기
아래 절차를 따라 ServBay에서 ACME 방식으로 로컬 개발 웹사이트의 SSL 인증서를 신청하세요:
ServBay 관리 패널 열기 ServBay 앱을 실행 후, 시스템 메뉴바 또는 Dock 아이콘을 통해 관리 패널에 진입합니다.
SSL 인증서 관리로 이동 관리 패널 좌측 메뉴에서
SSL 인증서를 선택합니다.신규 인증서 신청 시작 우측 상단의
+버튼을 클릭하여신규 인증서 신청을 선택합니다.인증서 기본 정보 설정
- 인증서 이름: 쉽게 구분할 수 있도록 인증서의 이름(예:
servbay-demo-ssl)을 입력합니다. - 용도:
TLS/SSL을 선택합니다. - 신청 방식:
ACME를 선택합니다.
- 인증서 이름: 쉽게 구분할 수 있도록 인증서의 이름(예:
인증서 발급 기관(CA) 선택
발급 기관드롭다운에서 원하는 CA를 선택합니다. 기본값은ZeroSSL이며, 필요에 따라Let's Encrypt또는Google Trust Services를 선택할 수 있습니다. 여기서는ZeroSSL예시로 설명합니다.DNS API 공급자 선택
DNS API 공급자드롭다운에서 도메인의 DNS 서비스를 제공하는 회사를 선택합니다(예:Cloudflare). 이 항목은 실제 도메인 DNS를 관리하는 서비스이며, 도메인을 구매한 등록업체와 다를 수 있음을 유의하세요.인증서 알고리즘 및 키 길이 선택
- 알고리즘: 기본 및 추천은
ECC(성능과 보안을 제공)입니다. 구형 장치 호환성이 필요하면RSA를 선택해도 됩니다. - 키 길이: ECC를 선택할 경우, 기본값인
384비트로 충분합니다. RSA일 경우2048또는4096비트를 선택할 수 있습니다.
- 알고리즘: 기본 및 추천은
인증 정보 입력 선택한
발급 기관과DNS API 공급자에 따라 필요한 입력란이 표시됩니다.- ZeroSSL은 이메일 주소가 필요할 수 있습니다.
- Cloudflare DNS API는 API Key 또는 인증 정보가 필요합니다.
acme.sh위키에서 제공하는 공급자의 안내에 따라 입력하세요.
WARNING
주의: 입력란에는 API Key나 비밀 값만 붙여넣고,
export등의 쉘 명령어 프리픽스는 절대 포함하지 마세요.도메인 입력
도메인필드에 인증서를 신청할 도메인(예:servbay.demo또는*.servbay.demo)을 입력하세요. 와일드카드(*.servbay.demo) 인증서를 신청하려면, DNS 공급자가 와일드카드 TXT 레코드 자동화를 지원해야 합니다.신청 시작 모든 정보를 확인한 후
요청버튼을 클릭하세요. ServBay는 내장된acme.sh를 호출해, DNS API 정보로 자동 도메인 인증을 진행하고 CA로부터 인증서를 받아옵니다.

신청에는 DNS 전파 속도 및 CA의 응답에 따라 다소 시간이 소요될 수 있습니다. 진행 상황은 ServBay의 로그 혹은 인증서 목록에서 확인 가능합니다. 인증서 발급이 성공하면, 새 인증서가 SSL 인증서 목록에 표시됩니다.
진행 중인 신청 중지하기
ACME 인증서 신청이 진행 중일 때는 요청 버튼이 신청 중지로 변경됩니다. 만약 오래 걸리거나(DNS 전파 지연, 입력 실수 등) 잘못 입력한 정보를 수정하려면 신청 중지를 눌러 현재의 acme.sh 프로세스를 종료하고, 정보를 다시 입력해 신청을 새로 시작할 수 있습니다.
고급 옵션: DNS 전파 대기 및 DNS 자체 검사 건너뛰기
인증서 신청 시, acme.sh는 인증용 TXT 레코드를 추가한 후, 로컬에서 해당 레코드가 적용됐는지 자체 점검 후 CA에 인증을 요청합니다. 만약 로컬 네트워크 환경이 특이해서(예: DNS 하이잭, fake-ip 사용, 로컬/공인 DNS 불일치) 이 검사가 자주 실패하거나 멈춘다면, 실제로는 공개 DNS에 반영됐음에도 인증이 지연될 수 있습니다.
이런 경우를 위해 ServBay 인증서 신청화면에는 아래와 같은 고급 옵션이 있습니다:
- 대기 초: DNS 전파 대기 시간을 설정합니다(기본값 120초). CA에 전달되기 전, DNS 레코드가 전파될 시간을 보장합니다.
- DNS 자체 검사 건너뛰기: 활성화하면
acme.sh가 로컬 DNS 체크를 건너뛰고, 설정한 대기 시간 후 바로 CA에 인증을 맡깁니다. fake-ip 방식 등에서 로컬 점검이 신뢰할 수 없을 때 유용합니다.
TIP
로컬 네트워크와 DNS 환경이 정상이라면 기본값 그대로 사용하면 됩니다. TXT 레코드는 인터넷에 적용됐지만 로컬에서 계속 실패하는 경우에만 ‘DNS 자체 검사 건너뛰기’와 ‘대기 초’ 값을 조정해보세요.
ServBay 웹사이트 설정에 인증서 적용하기
발급된 ACME 인증서를 ServBay에 설정된 웹사이트에 적용하려면 다음 단계를 따라주세요:
- ServBay 관리 패널 좌측
웹사이트메뉴로 이동합니다. - SSL을 설정하려는 사이트에서 우측 편집(연필 아이콘) 버튼을 클릭합니다.
- 웹사이트 상세 설정에서
SSL 인증서항목을 찾습니다. - 드롭다운에서 방금 신청한 ACME 인증서 이름을 선택합니다.
SSL 사용스위치를 켜줍니다.- 웹사이트 설정을 저장합니다. 이제 사이트는 HTTPS로 접근 가능합니다.

ACME 인증서 갱신
ACME로 발급한 인증서(Let's Encrypt, ZeroSSL 등)는 주로 90일간 유효합니다. 사이트가 항상 안전한 HTTPS 연결을 유지하려면, 만료 전에 인증서가 갱신되어야 합니다.
ServBay는 자동으로 ACME로 발급된 인증서의 만료일을 모니터링하고, 만료가 임박하면 기존에 입력한 DNS API 정보로 자동 갱신을 시도합니다.
일반적으로 DNS API 정보가 유효하고 도메인의 DNS 서비스가 정상이면, 인증서 갱신은 별도의 조치 없이 자동으로 이루어집니다. ServBay 백그라운드에서 알아서 처리하므로 걱정하지 않으셔도 됩니다.
자주 묻는 질문(FAQ) 및 문제해결
- 신청 실패, DNS 인증 실패 오류 발생 시?
- 입력한 DNS API 인증 정보가 정확한지, TXT 레코드 수정 권한이 있는지 확인하세요.
- ServBay에서 선택한
DNS API 공급자가 실제 도메인 DNS 서비스 업체와 일치하는지 확인하세요. - DNS 레코드는 전파에 시간이 걸릴 수 있으니 몇 분 이상 기다렸다가 다시 시도해보세요.
- 입력한 도메인명이 정확한지 재확인하세요.
- 인터넷에 TXT 레코드는 반영됐는데 로컬 인증만 계속 실패한다면(fak-ip 모드, DNS 하이잭 등), 신청화면에서 'DNS 자체 검사 건너뛰기'를 켜고 '대기 초' 값을 늘려보세요(위 고급 옵션 참고).
- EAB 관련 오류로 신청 실패 시?
- Google Trust Services 또는 ZeroSSL을 최초 사용하는 경우, EAB 정보를 정확히 입력했는지 확인하세요.
- 이전에 성공했다가 재시도 시 실패하면, EAB 정보가 만료됐거나 무효화됐을 수 있으니 새로 받아 입력하세요.
- Rate Limit(속도 제한) 오류 발생 시?
- 인증서 발급 기관은 도메인 또는 IP별로 일정 시간 내 신청할 수 있는 인증서 개수를 제한합니다. 너무 자주 신청하거나 여러 번 반복 시도하면 속도 제한에 걸릴 수 있습니다. 몇 시간~며칠 후 다시 시도하세요.
- 인증서 신청 성공 후에도 사이트에 '보안되지 않음' 오류가 뜰 때?
- ServBay에서 새 인증서를 사이트에 적용하고 SSL을 활성화했는지 확인하세요.
- 브라우저 캐시를 지우거나 시크릿(익명) 모드에서 접속해보세요.
- hosts 파일이나 네트워크 설정이 ServBay로 올바르게 연결되는지 점검하세요.
- ServBay는 언제 자동 갱신을 시도하나요? ServBay는 보통 인증서 만료 30일 전 등 특정 시점에 자동 갱신을 시작합니다. ServBay 앱이 실행 중이고 인터넷에 정상 연결되어 있다면, 백그라운드에서 자동으로 갱신됩니다.
요약
ServBay는 강력하면서도 직관적인 ACME 기능을 제공하여, 개발자가 DNS API 방식으로 로컬 개발 환경에 신뢰받는 SSL/TLS 인증서를 쉽고 빠르게 신청·관리할 수 있도록 합니다. 인증서 구성 과정을 단순화할 뿐만 아니라, 실서비스와 보다 유사한 HTTPS 지원 로컬 환경을 구축함으로써 높은 품질의 개발과 테스트를 도와줍니다.
이 문서가 ServBay에서 ACME로 SSL 인증서를 성공적으로 설정하고, 보다 안전하고 효율적인 개발 환경을 마련하는 데 도움이 되기를 바랍니다.
