GetHTTPS와 Certbot 모두 Let’s Encrypt에서 무료 SSL 인증서를 발급하지만, 근본적으로 다른 접근 방식을 취합니다. GetHTTPS는 브라우저에서 실행됩니다 — 설치도, 서버 접근도 불필요합니다. Certbot은 서버에서 커맨드 라인 도구로 실행되며 자동 갱신과 웹 서버 통합 기능을 제공합니다.
두 도구 모두 완전히 동일한 Let’s Encrypt 인증서를 생성합니다. 차이는 전적으로 발급 과정에 있습니다. 이 가이드에서 모든 측면을 비교하여 상황에 맞는 도구를 선택할 수 있도록 합니다.
GetHTTPS란?
GetHTTPS는 브라우저 기반 ACME 클라이언트입니다. 웹 페이지를 열고, 도메인을 입력하고, 챌린지를 완료하면 인증서 파일을 다운로드합니다. 소프트웨어 설치도, 계정 생성도, 서버 접근도 필요 없습니다.
개인키는 Web Crypto API를 사용하여 브라우저에서 생성되며 기기를 떠나지 않습니다 — GetHTTPS 서버에도 전송되지 않습니다. 이 도구는 프록시나 미들웨어 없이 Let’s Encrypt의 ACME API에 직접 연결합니다.
GetHTTPS는 무료로 사용할 수 있습니다.
Certbot이란?
Certbot은 Let’s Encrypt가 추천하는 공식 ACME 클라이언트로, Electronic Frontier Foundation(EFF)이 유지 관리합니다. 서버에서 실행되는 커맨드 라인 Python 도구로, 인증서를 획득하고 웹 서버를 구성하며 자동 갱신을 처리합니다.
Certbot은 루트/sudo 접근이 필요하며 보통 snap, pip 또는 Docker를 통해 설치합니다. 오픈 소스(Apache 2.0 라이선스)이며 무료입니다.
전체 비교표
| 기능 | GetHTTPS | Certbot |
|---|---|---|
| 실행 환경 | 브라우저 탭 | 서버 커맨드 라인 |
| 설치 | 불필요 — URL 열기만 | snap, pip 또는 Docker |
| 서버 접근 필요 | 불필요 | 필요 (루트/sudo) |
| 운영 체제 | 모두 (브라우저만 있으면 됨) | Linux, macOS (Windows 지원 중단) |
| 개인키 생성 | 브라우저 (Web Crypto API) | 서버 (OpenSSL/Python) |
| 개인키 저장 | 사용자가 다운로드 | 서버의 /etc/letsencrypt/ |
| 자동 갱신 | ❌ 수동 재방문 | ✅ systemd 타이머 / cron |
| 웹 서버 자동 구성 | ❌ 수동 | ✅ Nginx/Apache 플러그인 |
| 챌린지 유형 | HTTP-01, DNS-01 | HTTP-01, DNS-01, TLS-ALPN-01 |
| 제출 전 사전 검증 | ✅ | ❌ |
| 와일드카드 지원 | ✅ (DNS-01) | ✅ (DNS-01) |
| 다중 도메인 (SAN) | ✅ (최대 100개) | ✅ (최대 100개) |
| ECDSA 키 | ✅ P-256 (기본값) | ✅ (플래그 필요) |
| 의존성 | 없음 | Python, snapd 또는 Docker |
| 인증 기관 | Let’s Encrypt | Let’s Encrypt (기본값), 기타 |
| 오픈 소스 | 아니오 | 예 (Apache 2.0) |
| 가격 | 무료 | 무료 |
GetHTTPS를 사용할 때
서버에 SSH 접근이 없을 때
가장 명확한 시나리오입니다. 공유 호스팅, 관리형 WordPress, 기업 방화벽 뒤의 서버 — 소프트웨어를 설치할 수 없다면 GetHTTPS가 개인키를 로컬에 유지하는 유일한 브라우저 기반 옵션입니다.
인증서 파일(privkey.pem, fullchain.pem)을 받아 호스팅이 제공하는 방법으로 업로드합니다: cPanel, Plesk, FTP 또는 파일 관리자.
설치와 의존성이 전혀 없기를 원할 때
브라우저 탭을 열고, 인증서를 받고, 끝입니다. Python 버전 충돌도, snap 격리 문제도, Docker 이미지도 없습니다. certbot이 시스템에 설치되지 않는 이유를 디버깅하느라 30분을 보낸 적이 있다면 이것이 왜 중요한지 알 것입니다.
GetHTTPS는 최신 브라우저가 있는 모든 운영 체제에서 작동합니다 — Windows, macOS, ChromeOS, 심지어 태블릿에서도 가능합니다.
개인키에 대한 최대한의 통제를 원할 때
GetHTTPS는 Web Crypto API를 사용하여 브라우저에서 개인키를 생성합니다. 키는 다운로드를 클릭할 때까지 브라우저 메모리에만 존재합니다. 어떤 서버의 디스크에도 기록되지 않고, 네트워크로 전송되지 않으며, 볼 수 없는 곳에 저장되지 않습니다.
Certbot에서는 키가 서버에서 생성되어 /etc/letsencrypt/live/yourdomain/privkey.pem에 저장됩니다. 서버를 신뢰한다면 괜찮지만 — 루트 접근 권한이 있는 사람은 누구나 읽을 수 있습니다. 공유 인프라의 클라우드 환경에서는 이것이 중요합니다.
다른 사람을 위해 인증서를 발급할 때
클라이언트 서버를 위해 인증서를 생성하는 DevOps. 비기술 팀원 돕기. 관리하지 않는 서버용 인증서 발급. GetHTTPS를 사용하면 상대방의 서버에 접근하지 않고도 인증서를 생성하고 파일을 전달할 수 있습니다.
빠른 일회성 인증서가 필요할 때
스테이징 환경. 테스트 배포. 아직 자동화를 설정하지 않은 새 프로젝트. GetHTTPS는 설정 오버헤드 없이 3-5분 만에 인증서를 제공합니다.
Certbot을 사용할 때
자동 갱신을 원할 때 (#1 이유)
Certbot의 핵심 기능: 인증서가 만료되기 전에 갱신하는 systemd 타이머(또는 cron 작업). 수동 개입 없이, 갱신 누락 없이, 금요일에 인증서가 만료되어 새벽 3시에 허둥대는 일 없이.
# Certbot checks twice daily, renews if within 30 days of expiry
sudo systemctl list-timers | grep certbot
# NEXT LEFT UNIT
# 2026-05-08 14:22:00 UTC 3h left snap.certbot.renew.timer
Let’s Encrypt의 90일 유효 기간(그리고 다가오는 47일 유효 기간)을 감안하면, 자동 갱신은 있으면 좋은 기능이 아닌 — 프로덕션 서버의 필수 요건입니다.
웹 서버 자동 구성을 원할 때
Certbot의 --nginx와 --apache 플러그인은 SSL 지시문, 리다이렉트, 추천 암호 설정을 포함하여 HTTPS를 활성화하도록 서버 구성을 수정합니다. 하나의 명령으로 모든 것을 처리합니다:
# Certbot obtains cert AND configures Nginx
sudo certbot --nginx -d example.com -d www.example.com
# What it does behind the scenes:
# 1. Generates a key pair
# 2. Proves domain control (HTTP-01 on port 80)
# 3. Gets the certificate from Let's Encrypt
# 4. Writes ssl_certificate/ssl_certificate_key to your Nginx config
# 5. Adds a redirect from HTTP to HTTPS
# 6. Reloads Nginx
GetHTTPS에서는 이 모든 것을 수동으로 해야 합니다 — 인증서 받기, 파일 업로드, 구성 편집, 리다이렉트 설정, 서버 재로드. 더 많은 제어권이 있지만, 더 많은 작업이 필요합니다.
대규모 인프라를 관리할 때
Certbot은 스크립트화, 컨테이너화가 가능하며 구성 관리 도구로 배포할 수 있습니다:
# Ansible playbook snippet
- name: Install certbot
snap:
name: certbot
classic: true
- name: Get certificate
command: certbot --nginx -d {{ domain }} --non-interactive --agree-tos -m {{ email }}
10개 이상의 서버에서는 스크립트화된 Certbot이 각 서버마다 GetHTTPS를 방문하는 것보다 빠릅니다.
TLS-ALPN-01 챌린지가 필요할 때
이 챌린지 유형은 파일 배치나 DNS 수정 없이 포트 443을 통해 검증합니다. 포트 80이 차단되어 있고 DNS를 수정할 수 없을 때 유용합니다. CLI 클라이언트(Certbot, acme.sh)만 지원하며 — 브라우저 기반 클라이언트는 지원하지 않습니다.
설치 비교
GetHTTPS — 단계 없음
Open gethttps.com/app/setup in your browser.
이것이 전부입니다. 지금 바로, 어떤 기기에서든, 사전 설정 없이 작동합니다.
Certbot — OS에 따라 여러 단계
Ubuntu/Debian (snap — Certbot 권장):
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
pip (snap을 사용할 수 없는 Linux):
sudo pip install certbot certbot-nginx
Docker (시스템 패키지와 격리):
docker run -it --rm \
-v /etc/letsencrypt:/etc/letsencrypt \
-v /var/www/html:/var/www/html \
certbot/certbot certonly --webroot -w /var/www/html -d example.com
Amazon Linux 2023:
sudo dnf install certbot python3-certbot-nginx
일반적인 설치 문제:
- 비표준 Linux 설치에서의 snap 격리 오류
- pip 설치 시 Python 버전 충돌
python3-certbot-nginx플러그인 패키지 누락- sudo/루트가 필요한 권한 오류
GetHTTPS는 이 모든 것을 피합니다 — 설치가 없으면 설치 문제도 없습니다.
워크플로우 비교
GetHTTPS로 인증서 받기
- gethttps.com/app/setup 열기
- 도메인 입력
- HTTP-01 또는 DNS-01 챌린지 선택
- 챌린지 파일을 배치하거나 DNS 레코드 추가
- GetHTTPS가 제출 전에 챌린지를 사전 검증 (오류를 미리 발견)
privkey.pem,cert.pem,chain.pem,fullchain.pem다운로드- 서버에 업로드
- 웹 서버 구성 (Nginx, Apache, 기타)
- HTTP→HTTPS 리다이렉트 설정
소요 시간: 처음 5-10분, 갱신 시 3-5분.
Certbot으로 인증서 받기
자동 구성 모드 (가장 일반적):
sudo certbot --nginx -d example.com -d www.example.com
독립 모드 (웹 서버 통합 없음):
sudo certbot certonly --standalone -d example.com
Webroot 모드 (서버 실행 유지):
sudo certbot certonly --webroot -w /var/www/html -d example.com
DNS 챌린지 (와일드카드):
sudo certbot certonly --manual --preferred-challenges dns -d "*.example.com"
소요 시간: 2-5분 (설치 완료 후).
프라이버시 및 보안 비교
| 항목 | GetHTTPS | Certbot |
|---|---|---|
| 개인키 생성 | 브라우저 (Web Crypto API) | 서버 (Python 통한 OpenSSL) |
| 키 존재 위치 | 다운로드 폴더만 | 서버 파일 시스템 |
| 키 노출 대상 | 본인만 | 서버의 루트 권한 보유자 전체 |
| ACME 통신 | 브라우저 → Let’s Encrypt (직접 HTTPS) | 서버 → Let’s Encrypt (직접 HTTPS) |
| 프록시/미들웨어 | 없음 | 없음 |
| 계정 데이터 | 브라우저 내, 이메일 불필요 | 서버, 이메일 선택 |
| 텔레메트리 | 없음 | EFF 이메일 가입 안내 (건너뛸 수 있음) |
| 코드 감사 | 브라우저 전용, DevTools로 검사 가능 | Apache 2.0, Python 약 50K LOC |
결론: 둘 다 중개자 없이 Let’s Encrypt에 직접 연결합니다. 보안 차이는 개인키가 어디에 있느냐입니다. GetHTTPS에서는 사용자가 다운로드하고 결정합니다. Certbot에서는 서버에 남습니다 — 서버 관리형 인증서로서는 일반적이지만, 시스템 접근 권한이 있는 누구나 키에 접근할 수 있다는 뜻입니다.
갱신 비교
| GetHTTPS | Certbot | |
|---|---|---|
| 프로세스 | 사이트 재방문, 새 챌린지 완료, 파일 교체 | 자동 (systemd 타이머가 하루 두 번 확인) |
| 수동 작업 | 갱신당 3-5분 | 초기 설정 후 제로 |
| 실패 감지 | 사이트가 중단될 때 알게 됨 | 로그 + 선택적 이메일 알림 |
| 갱신 주기 | 60-90일마다 (수동) | 60일마다 (자동) |
| 47일 인증서 시 (2029) | 약 30일마다 수동 — 고통스러움 | 여전히 자동 — 변경 없음 |
이것이 Certbot의 가장 큰 장점입니다. 프로덕션 서버에서 자동 갱신은 선택이 아닙니다.
하이브리드 접근법 (양쪽의 장점)
많은 팀이 두 도구를 모두 사용합니다:
- 첫 번째 인증서는 GetHTTPS로 — 설정 시간 제로. 서버에 아무것도 설치하지 않고 5분 만에 HTTPS를 작동시킵니다.
- 지속적인 갱신은 Certbot으로 — 서버가 구성되고 안정되면 자동 갱신을 위해 Certbot을 설치합니다.
이는 “지금 작동시키고, 나중에 자동화”하는 워크플로우에서 특히 일반적입니다. 영원히 하나만 선택할 필요 없습니다 — PEM 파일은 표준 형식이며, Certbot은 GetHTTPS가 원래 인증한 도메인을 갱신할 수 있습니다.
최종 판단
| 상황 | 추천 도구 | 이유 |
|---|---|---|
| SSH/루트 접근 없음 (공유 호스팅) | GetHTTPS | 서버 접근 없이 유일한 옵션 |
| 빠른 일회성 인증서 | GetHTTPS | Certbot 설치보다 빠름 |
| 최고 수준의 개인키 프라이버시 | GetHTTPS | 키가 어떤 서버에도 존재하지 않음 |
| 다른 사람을 위한 인증서 발급 | GetHTTPS | 상대 서버 접근 불필요 |
| 프로덕션 서버, 장기 운영 | Certbot | 자동 갱신 필수 |
| Nginx/Apache 자동 구성 | Certbot | 하나의 명령으로 모든 것 처리 |
| 10개 이상 서버 관리 | Certbot | 스크립트화 및 자동화 가능 |
| 초기 설정 + 장기 운영 | 둘 다 | GetHTTPS로 시작, Certbot으로 유지 |
두 도구 모두 무료이며 동일한 Let’s Encrypt 인증서를 생성합니다. Certbot은 오픈 소스(Apache 2.0)입니다. GetHTTPS는 무료이지만 오픈 소스는 아닙니다 — 다만 브라우저 기반 도구로서 JavaScript를 DevTools에서 검사할 수 있습니다. 인증서 자체는 동일합니다 — GetHTTPS의 cert.pem은 같은 도메인에 대해 Certbot이 생성한 것과 바이트 단위로 동등합니다. 차이는 전적으로 워크플로우에 있습니다.
지금 바로 HTTPS를 작동시키려면 GetHTTPS로 시작하세요: gethttps.com/app/setup
자동 갱신이 필요하면 나중에 Certbot을 추가하세요: certbot.eff.org
자주 묻는 질문
GetHTTPS가 Certbot만큼 안정적인가요?
두 도구 모두 같은 Let’s Encrypt ACME API와 통신하며 같은 인증서를 생성합니다. GetHTTPS는 사전 검증 단계를 추가하여 제출 전에 챌린지 구성을 확인합니다 — 이는 Certbot이 챌린지 실패 후에야 발견하는 오류를 미리 잡아내며, 발급 한도 시도를 낭비하지 않습니다.
GetHTTPS에서 Certbot으로 (또는 반대로) 전환할 수 있나요?
네. 인증서 파일은 표준 PEM 형식입니다. 오늘 GetHTTPS로 인증서를 생성하고 내일 갱신을 위해 Certbot을 설정할 수 있습니다 — 또는 수년간 Certbot을 사용하다가 서버 접근 없이 빠른 재발급이 필요할 때 GetHTTPS로 전환할 수 있습니다. 도구 간에 충돌이 없으며 서로를 인식하지 않습니다.
GetHTTPS는 자동 갱신을 지원하나요?
아니요. GetHTTPS는 수동, 온디맨드 인증서 발급을 위해 설계되었습니다. 자동 갱신이 필요하면 서버에서 Certbot이나 acme.sh를 사용하세요. 하이브리드 접근법 (GetHTTPS로 시작, Certbot으로 갱신)이 양쪽의 장점을 제공합니다.
Certbot은 설치가 어렵나요?
시스템에 따라 다릅니다. 최신 Ubuntu에서는 sudo snap install --classic certbot이 10초 만에 작동합니다. 오래된 시스템, 커스텀 환경, 비표준 Linux에서는 Python 의존성 충돌이 흔합니다. GetHTTPS는 설치를 완전히 피합니다 — 설치가 없으면 설치 문제도 없습니다.
acme.sh는 대안이 될 수 있나요?
acme.sh는 루트가 필요 없고 150개 이상의 DNS API 플러그인을 가진 셸 스크립트 ACME 클라이언트입니다. GetHTTPS(단순성)와 Certbot(자동화) 사이에 위치합니다. 루트 없이 CLI 자동화를 원하고 더 나은 DNS 통합이 필요하다면 acme.sh를 고려해볼 만합니다.
인증서 유효 기간이 47일로 줄어들면 어떻게 되나요?
CA/Browser Forum이 2029년까지 최대 유효 기간을 47일로 줄이기로 결의했습니다. 이로 인해 Certbot의 자동 갱신이 더욱 중요해집니다 — 30일마다 수동 갱신은 가능하지만 번거롭습니다. GetHTTPS는 일회성 인증서, 긴급 갱신, 접근 불가 상황에서 여전히 작동하지만, 프로덕션 사이트의 주된 방법으로 자동 갱신을 대체하지는 못합니다.
어느 것이 더 안전한가요?
둘 다 안전합니다. 인증서는 동일합니다. 주요 보안 차이:
- GetHTTPS: 개인키가 어떤 서버에도 존재하지 않음 (브라우저에서 생성, 사용자가 다운로드)
- Certbot: 개인키가 서버 파일 시스템에 존재 (루트가 읽을 수 있음)
대부분의 설정에서 Certbot의 서버 내 키는 괜찮습니다. 키 노출을 최소화하려는 높은 보안 시나리오에서는 GetHTTPS의 브라우저 전용 모델이 더 엄격합니다.
Certbot으로 와일드카드 인증서를 받을 수 있나요?
네, DNS-01 챌린지를 통해 가능합니다. 하지만 Certbot의 와일드카드 워크플로우는 HTTP-01 워크플로우보다 더 수동적입니다 — DNS TXT 레코드를 추가해야 하며 DNS 플러그인이 필요할 수 있습니다. GetHTTPS도 같은 방식으로 와일드카드 인증서를 처리합니다 (가이드).