오늘날 웹 트래픽의 상당 부분은 HTTPS를 사용하여 암호화됩니다. 특히 업계의 주요 기업에서 지원하는 인증 기관(CA)인 Let's Encrypt가 도입된 이후로 점점 더 보편화되고 있습니다. Let's Encrypt는 90일 유효 기간의 SSL/TLS 인증서를 완전 무료로 제공합니다.
일반적으로 인증서는 하나 이상의 특정 도메인 이름에 연결되므로 "www.example.com"에 대한 인증서가 있는 경우 이 정확한 도메인 이름으로만 사용할 수 있습니다. 반면에 와일드카드 인증서는 상위 도메인 이름에 대해 발급되며 상위 도메인의 모든 하위 도메인과 함께 사용할 수 있습니다. 예를 들어 *.example.com에 대한 와일드카드 인증서는 "www.example.com", "account.example.com", "mail.example.com" 등에 사용할 수 있습니다. 따라서 와일드카드 인증서는 이점을 가져옵니다. 현재 및 미래의 모든 하위 도메인에 대해 단일 인증서를 획득하고 갱신하기만 하면 됩니다.
Ubuntu, Debian 및 기타 Debian 기반 배포의 Let's Encrypt에서 등록된 도메인 이름에 대한 와일드카드 인증서를 얻는 방법은 다음과 같습니다.
1. acme.sh 설치
Let's Encrypt는 ACME(Automated Certificate Management Environment) 프로토콜을 사용하여 도메인 이름을 소유하고 있는지 확인하고 인증서를 발급/갱신합니다. Acme.sh는 쉘 스크립트로 구현된 인기 있는 ACME 클라이언트입니다. 설치하려면 먼저 git을 설치해야 합니다.
sudo apt update sudo apt install -y git
github에서 저장소 다운로드:
git clone https://github.com/Neilpang/acme.sh.git
복제된 디렉토리를 입력하고 설치 스크립트를 시작하십시오:
cd acme.sh/ ./acme.sh --install
acme.sh 사용을 시작하려면 셸 세션을 다시 로드하세요.
exec bash
2. acme.sh를 사용하여 와일드카드 인증서 발급.
Let's Encrypt에서 와일드카드 인증서를 발급하려면 DV(도메인 유효성 검사)라고 하는 DNS 기반 문제를 해결해야 합니다. Acme.sh는 여러 주요 DNS 제공업체의 API와 편리하게 통합되며 이 프로세스를 완전히 자동화합니다.
클라우드플레어
Cloudflare의 DNS 서비스를 사용하는 경우 계정에 로그인하고 글로벌 API 키를 복사합니다. 시스템에 환경 변수로 저장:
export CF_Key="your_cloudflare_api_key" export CF_Email="your_cloudflare_email_address"
이제 와일드카드 인증서를 요청할 수 있습니다.
acme.sh --issue --dns dns_cf -d '*.example.org'
저렴한 이름
NameCheap 네임서버를 사용하는 경우 API 액세스 활성화에 대한 지침을 따른 다음 필수 변수를 내보냅니다.
export NAMECHEAP_SOURCEIP="your_server_ip" export NAMECHEAP_USERNAME="your_namecheap_username" export NAMECHEAP_API_KEY="your_namecheap_api_key"
와일드카드 인증서 요청:
acme.sh --issue --dns dns_namecheap -d '*.example.org'
디지털 오션
도메인에서 DigitalOcean의 DNS를 사용하는 경우 읽기 및 쓰기 권한이 있는 개인 액세스 토큰 생성에 대한 지침을 따르십시오. API 키/토큰 내보내기:
export DO_API_KEY="your_digitalocean_api_token"
와일드카드 인증서 요청:
acme.sh --issue --dns dns_dgon -d '*.example.org'
고대디
도메인에서 GoDaddy의 DNS를 사용하는 경우 API 키와 암호를 복사합니다. 환경으로 내보내기:
export GD_Key="your_godaddy_api_key" export GD_Secret="your_godaddy_api_secret"
와일드카드 인증서 요청:
acme.sh --issue --dns dns_gd -d '*.example.org'
볼트르
Vultr의 DNS를 사용하는 경우 개인 액세스 토큰 또는 "DNS 관리" 권한이 있는 하위 프로필이 필요합니다.
export VULTR_API_KEY="your_vultr_api_key"
와일드카드 인증서 요청:
acme.sh --issue --dns dns_vultr -d '*.example.org'
랙스페이스
RackSpace를 사용하는 경우 사용자 이름과 API 키가 필요합니다. 아래와 같이 내보내기:
export RACKSPACE_Username="your_rackspace_username" export RACKSPACE_Apikey="your_rackspace_api_key"
와일드카드 인증서 요청:
acme.sh--issue --dns dns_rackspace -d '*.example.org'
수동 프로세스
DNS 공급업체에서 제공한 API를 사용하고 싶지 않거나 사용할 수 없는 경우 DNS 레코드를 수동으로 생성하여 도메인 유효성 검사를 완료할 수 있습니다. 하지만 도메인을 갱신하려면 이 수동 프로세스를 정기적으로 반복해야 합니다.피>
acme.sh --issue --dns --yes-I-know-dns-manual-mode-enough-go-ahead-please -d '*.example.org'
이 명령은 DNS TXT 레코드로 추가해야 하는 확인 토큰을 표시합니다.
토큰을 복사하고 DNS 제어판에 로그인합니다. _acme-challenge
에 대해 TXT 유형의 새 DNS 레코드를 만듭니다. 하위 도메인에 토큰을 붙여넣습니다.
새 레코드에 액세스할 수 있을 때까지 몇 분 정도 기다린 다음 인증서를 요청하십시오.
acme.sh --renew --yes-I-know-dns-manual-mode-enough-go-ahead-please -d '*.example.org'
파일 위치
홈 폴더의 ".acme.sh" 디렉토리에서 인증서 및 기타 관련 파일을 찾을 수 있습니다.
- 인증서 자체는 "~/.acme.sh/*.example.org/*.example.org.cer"로 저장됩니다.
- 인증서는 "~/.acme.sh/*.example.org/*.example.org.key"로 저장됩니다. 이 파일은 비공개로 유지해야 하며 절대 공유해서는 안 됩니다.
- 가장 많이 사용하게 될 전체 체인 인증서 파일은 "~/.acme.sh/*.example.org/fullchain.cer"로 저장됩니다. 이 파일은 귀하의 인증서를 발급 기관의 인증서(중간 인증서라고 함)와 결합합니다.
위의 단계를 수행하면 Let's Encrypt 와일드카드 도메인 인증서를 얻을 수 있습니다.