AmazonLinux2에서 LetsEncrypt를 사용하여 하위 도메인 와일드카드 SSL화

문서 루트에 .well-known 디렉토리 만들기
mkdir .well-known 
chmod 775 .well-known 

certbot-auto 가져오기
mkdir -p ~/bin
curl -L https://dl.eff.org/certbot-auto \
       -o ~/bin/certbot-auto
chmod a+x ~/bin/certbot-auto

Amazon Linux2에서도 움직이도록 설정을 이지
cd ~/bin
vi certbot-auto
# elif [ -f /etc/issue ] && grep -iq "Amazon Linux" /etc/issue ; then
elif grep -i "Amazon Linux" /etc/issue > /dev/null 2>&1 || \
     grep 'cpe:.*:amazon_linux:2' /etc/os-release > /dev/null 2>&1; then

파일 이동
mv ./certbot-auto /usr/local/bin
#あとパスも通しておく
export PATH="$PATH:/usr/local/bin"

다음 명령을 흘리기
certbot-auto certonly --manual -d *.taroimo.jp -m [email protected] --agree-tos --manual-public-ip-logging-ok --debug

--debug 플래그를 붙이지 않으면 에러가 나오는 것 같다. 실제로 나온다.

아래와 같은 메시지 이외에 Please Enter 같은 것이 나오면
Route53에 TXT 레코드 추가
_acme-challenge.taroimo.jp에 표시된 값을 할당합니다.
Please deploy a DNS TXT record under the name
_acme-challenge.taroimo.jp with the following value:

[TXTレコードの値がここに出る]

Before continuing, verify the record is deployed.

레이와 원년 8월 14일 추가
여러 인스턴스에서 동일한 도메인의 하위 도메인을 사용하는 경우
인스턴스별로 _acme-challenge를 설정해야합니다.
덮어쓰기 덮어쓰면 첫 인스턴스의 인증서가 만료된 시점에
갱신할 수 없었다(당연하지만)
하지만 TXT레코드는 1개밖에 설정할 수 없고 곤란했구나라고 생각했지만 그런 일은 없었다.
이런 느낌으로 여러 줄로 해두면 괜찮습니다.
Value는 각각 더블 쿼트로 둘러싸고, Value마다 개행을 넣습니다.



다른 터미널을 시작하여 nslookup에서 acme-challenge의 TXT 레코드가 위의 값인지 확인
nslookup -q=txt _acme-challenge.taroimo.jp
  _acme-challenge.taroimo.jp text = "TXTレコードの値"

virtualssl.conf에 SSL 화하는 사이트 설정 작성
<VirtualHost *:443>
    # もろもろ設定
</VirtualHost>

Apache를 다시 시작하여 https로 액세스하여 인증서가 적용되었는지 확인
적용되면 .well-known 디렉토리를 삭제하고 완료

끝.

좋은 웹페이지 즐겨찾기