해외 호스팅 사이트그라운드에서 와일드카드 SSL 인증서 설치 문제

해외호스팅 중 하나인 사이트그라운드에서는 무료 와일드카드 SSL 인증서를 제공합니다. 따라서 서브도메인에도 SSL 보안서버 인증서를 적용하려는 경우에 유용합니다. (카페24의 경우 Comodo 와일드카드 인증서를 연간 462,000원에 판매하고 있습니다.)

하지만 저는 서브도메인에 SSL 인증서를 적용할 때 오류가 발생하여 여러 번 시도하여 어떻게 하다 보니 잘 설치되었습니다. 간혹 잘 안 되면 SiteGround 지원팀에 라이브 채팅으로 지원을 요청하면 해결해주었기 때문에 와일드카드 SSL 인증서를 올바로 적용하는 방법에 대해 깊이 생각해보지 않았습니다.

그러다가 어제 SSL 인증서 때문에 문제가 생긴 사이트를 잠깐 봐주면서 서브도메인에 어떻게 SSL 인증서를 적용해야 하는지 감을 잡게 되었습니다. 서브도메인에 SSL 인증서를 설치하려는 경우 아래 글을 참고하면 도움이 될 것입니다.

먼저 사이트그라운드에서 도메인에 SSL 인증서를 설치하려면 cPanel에 접속하여 Security > Let's Encrypt 아이콘을 클릭합니다.

해외 호스팅 사이트그라운드에서 와일드카드 SSL 인증서 설치 문제 2

그러면 Let's Encrypt SSL 인증서를 관리하고 설치할 수 있는 화면이 표시됩니다. 아래 부분으로 이동하면 Install new Let's Encrypt Certificate(새 Let's Encrypt 인증서 설치) 섹션이 있습니다. 여기에서는 SSL 인증서가 설치되지 않은 도메인(서브도메인 포함)에 대하여 새 SSL 인증서를 설치할 수 있습니다.

Domain에서 Let's Encrypt 인증서를 설치할 도메인을 선택합니다.

와일드카드 SSL 인증서 설치하기

Let's Encrypt SSL Type(Let's Encrypt SSL 타입)에서 Let's Encrypt SSLLet's Encrypt Wildcard SSL을 선택할 수 있습니다. 만약 Let's Encrypt Wildcard SSL을 선택하여 인증서를 설치하면 목록에 다음과 같이 표시됩니다.

와일드카드 SSL 인증서

'와일드카드'를 사전에서 찾아보면 다음과 같이 정의되어 있습니다.

[컴퓨터] 파일을 지정할 때, 구체적인 이름 대신에 여러 파일을 동시에 지정할 목적으로 사용하는 특수 기호. `*', `?' 따위.

Let's Encrypt Wildcard SSL 인증서를 선택하여 설치하면 메인 도메인과 모든 서브도메인에 대한 인증서가 설치됩니다.

하지만 서브도메인을 만들 때 경로를 메인 도메인과 다르게 설정하는 경우 와일드카드 SSL 인증서를 설치하여 테스트해보면 이상하게 작동합니다. 예를 들어, example.com에 와일드카드 인증서를 설치한 후에 wordpress.example.com이라는 서브도메인을 추가한 다음에 워드프레스를 설치한 후에 wordpress.example.com에 접속하면 브라우저 창의 주소란에 wordpress.example.com이 표시되지만 실제 사이트는 example.com이 표시됩니다.

이 상태에서 wordpress.example.com에 대하여 SSL을 설치하면 잘 작동합니다. 하지만 나중에 예상치 못한 문제가 발생할 수도 있습니다.

서브도메인의 도큐먼트 루트(Document Root) 폴더를 보통 메인 도메인의 폴더와 다르게 설정할 것입니다. 그런 경우 다음 두 가지 옵션 중에서 선택할 수 있을 것 같습니다.

  1. cPanel > Security > Let's Encrypt에서 메인 도메인과 서브 도메인 각각에 대하여 (Let's Encrypt Wildcard SSL이 아닌) Let's Encrypt SSL을 설치합니다. 또는,
  2. cPanel > Security > Let's Encrypt에서 메인 도메인에 대하여 Let's Encrypt Wildcard SSL을 설치하고(서브도메인에 대한 SSL 인증서가 설치되어 있으면 삭제), cPanel > Security > SSL/TLS manager > Manage SSL Sites > [해당 서브도메인 선택] > Autofill by Domain > Install을 선택하여 SSL을 설치합니다.

어제 SSL 인증서 문제로 사이트그라운드의 일반 상담원과 몇 시간 동안 이야기해도 해결이 되지 않았습니다. 워드프레스 캐시 플러그인 문제인 줄 알고 그쪽으로 초점을 맞추어 모든 조치를 다 취해 보아도 문제가 수정되지 않았습니다. 문제를 시니어 기술팀으로 전달하니까 약 10분만에 문제를 해결해주네요. 시니어 기술자에 의하면 서브도메인의 폴더가 메인 도메인의 폴더가 다르면 서브도메인에 대해 따로 설치해주어야 한다고 합니다. (설정을 살펴보니 위에서 제시한 방법 중 두 번째 방법이 적용되어 있네요.)

When the document root (the folder) of a subdomain is different from the folder of the main domain, the WildCard SSL has to be installed on said subdomain separately. This is easily done via cPanel -> SSL/TLS manager -> Manage Sites -> <the subdomain in question> -> Autofill -> Install.

서브도메인에 SSL 인증서 설치

위의 내용은 고객지원 담당자와 상의해서 나름대로 파악한 내용과 테스트를 통해 확인한 것을 정리한 것입니다. 정확하지 않은 내용이 있으면 댓글을 통해 알려주시기 바랍니다. 그러면 내용을 정정하도록 하겠습니다.

개인적으로는 편리하고 속도면에서도 괜찮아서 사이트그라운드를 선호하는 편이지만, 저렴하면서도 비교적 괜찮은 사양의 호스팅을 원하는 경우 블루호스트 공유호스팅도 고려해볼 만 한 것 같습니다. (블루호스트에서는 SSL 인증서를 무료로 제공하지만, 와일드카드 SSL 인증서는 제공되지 않습니다.)

참고로 이 링크를 클릭하여 Bluehost(블루호스트)에 가입하면 1달러가 할인된 월 2.95달러부터 서비스를 이용할 수 있습니다. 저렴하게 비교적 괜찮은, 즉 가성비가 뛰어난 웹호스팅을 이용하려는 경우에 고려해볼 수 있습니다. 이 글의 링크를 클릭하여 웹호스팅에 가입하면 제가 약간의 커미션을 받을 수 있습니다. 하지만 저는 커미션만을 위해 특정 서비스를 추천하지는 않습니다. 직접 서비스를 이용하고 있고, 나름대로 느낀 점을 알려드리려고 노력하고 있으니 요구에 맞는 서비스를 선택하시기 바랍니다.

참고:


12개 댓글

  1. 안녕하세요~ 링크통해 사이트그라운드에 가입했어요.
    SSL 질문인데요.
    기존 카페24에 있던 홈페이지 이전 완료 했습니다.

    크롬: 이 사이트의 보완 연결(HTTPS)은 완벽하지 않습니다.
    익스플로어: 정상적으로 자물쇠가 보여요.

    유튜브 보니깐 simple ssl 설치하라는 외국분도 있고, 어떻게 해야하는지
    조언 부탁합니다. 혹시 아시면 답변 부탁드릴께요~ ㅠㅠ

    1. 안녕하세요, 야드세일님.

      1) 기본적으로 이 문제를 해결하려면 모든 "http://사이트주소" 로 되어 있는 것을 https://사이트주소 로 바꾸는 것입니다.
      가령 이미지가 http://... 주소로 로드될 수 있습니다.

      다음 글에서 소개하는 플러그인을 사용해볼 수 있습니다.
      https://www.thewordcracker.com/basic/velvet-blues-update-urls-to-update-urls-in-wordpress/

      (플러그인을 사용하여 주소를 http://... 에서 https://로 변경한 후에 플러그인은 삭제해도 됩니다.)

      2) 이 방법으로 해결이 안 되는 경우, Simple SSL 플러그인을 사용해볼 수 있습니다.
      https://www.thewordcracker.com/basic/really-simple-ssl-%ED%94%8C%EB%9F%AC%EA%B7%B8%EC%9D%B8/

      이 플러그인을 사용하면 매우 편리합니다만, 직접 http://... 주소를 https://... 주소로 바꾸는 방법이 더 바람직한 것 같습니다. 이 때문에 플러그인을 사용하는 것은 개인적으로 별로 추천하지는 않습니다.

      3) 또, 다른 방법으로는 사이트그라운드에서 제공하는 캐시/최적화 플러그인을 사용하는 것입니다. 캐시 플러그인을 사용 중이라면 비활성화하시고 SG Optimizer를 설치할 수 있습니다. 플러그인을 설치한 후에 캐시 관련 설정을 하여 테스트해보시고, '안전하지 않는 콘텐츠' 오류를 해결하려면 'Fix Insecure Content' 옵션을 활성화해보시기 바랍니다.

      다음 스크린샷을 참고해보세요.

      https://www.screencast.com/t/K72C6cY5p

      그림에서는 비활성화되어 있는데요. 활성화시키면 혼합된 콘텐츠 문제가 해결될 것입니다.

      문제가 잘 해결이 안 되면 다시 알려주세요.

      1. 안녕하세요~ ^^

        외국영상보고, 워드프레스>알림판>Elementor>Tools>Replace URL 변경했는데 되었더라구요. 근데, 위에 답변 보니, 이미지 URL이 Https로 로드 안될수 있겠다고 생각이 듭니다. 위에 Simple SSL과 플러그인으로 다시 해봐야 겠어요.
        근데 제가 한 방법도 맞는 방법인가요? 사이트 속도가 느린거 같아서요. ㅠㅠ
        등록 시, 테스트 URL 첨부했습니다.

      2. 테스트 URL은 작동하지 않네요.

        참고로 SSL을 설치할 때 개별 도메인 및 서브도메인에 대하여 와일드카드 SSL 인증서를 설치하지 말고 그냥 "Let's Encrypt SSL"을 설치하시기 바랍니다.

        그리고, 사이트그라운드에서 제공하는 캐시/최적화 플러그인을 사용할 수 있습니다. 이전 댓글에서 말씀드렸듯이 캐시 플러그인을 사용 중이라면 비활성화하시고 SG Optimizer를 설치해보시기 바랍니다. 플러그인을 설치한 후에 캐시 관련 설정을 하여 테스트해보시고, '안전하지 않는 콘텐츠' 오류를 해결하려면 'Fix Insecure Content' 옵션을 활성화해보시기 바랍니다.

        다음 스크린샷을 참고해보세요.

        https://www.screencast.com/t/K72C6cY5p

        수동으로 하려면 모든 이미지 URL 및 문제가 되는 URL을 모두 http에서 https로 변경하고 https://www.thewordcracker.com/miscellaneous/%EB%AC%B4%EB%A3%8C-%EB%B3%B4%EC%95%88%EC%84%9C%EB%B2%84ssl-%EC%9D%B8%EC%A6%9D%EC%84%9C%EB%A5%BC-%EC%A0%81%EC%9A%A9%ED%96%88%EC%8A%B5%EB%8B%88%EB%8B%A4/ 글에 제시되어 있는 코드를 .htaccess 파일에 추가하면 됩니다.

        수동으로 http 주소를 https 주소로 일괄 변경하는 방법은 Velvet Blues Update URL 플러그인이나 다음 글에서 소개하는 플러그인을 사용해보세요.

        https://www.thewordcracker.com/basic/%EC%9B%8C%EB%93%9C%ED%94%84%EB%A0%88%EC%8A%A4-%EC%82%AC%EC%9D%B4%ED%8A%B8-url-%EC%9D%BC%EA%B4%84-%EB%B3%80%EA%B2%BD%ED%95%98%EB%8A%94-go-live-update-urls-%ED%94%8C%EB%9F%AC%EA%B7%B8%EC%9D%B8/

      3. 답변 감사합니다. ^^ 웹사이트 꾸준히 들어와서 모두 읽고 있습니다! 즐거운 하루 되세요~

  2. 안그래도 해외 호스팅이 필요했는데 오늘중으로 위 링크로 결제하나 해야겠네요. 상세한 설명 정말 감사드립니다. 혼자서 막막했는데 진짜 대단하시네요~~ 혹 질문하나 드려도 될까요? 현재 제 사이트에 구글맵을 적용시켰는데 그럴려면 구글맵 API 키가 필요하잖아요? 가이드대로 진행하고 키 생성을 해서 기재까지 했는데 1초정도는 잘나오다가 바로 "죄송합니다. 문제가 발생했습니다.
    Google 지도가 제대로 로드되지 않았습니다. 자바스크립트 콘솔에서 자세한 기술 정보를 확인하세요." 라고 나옵니다. 최근 키 생성 방법이 바뀌어서 신용카드 정보를 넣어야 한다고 하던데 그거 넣기 싫어서(혹 결제될까봐) https://avada.tistory.com/899 <= 여기 포스팅 그대로 따라 했는데도 안되네요;; 키 생성은 문제없이 되는데 적용시키면 위 문구가 나옵니다. 뭐가 문제일까요? http://*.abc.com/* <= 이렇게 도메인을 넣었는데 별표 넣는게 잘못된건가요;; 답변 좀 부탁드리겠습니당

    1. 안녕하세요?

      구글 맵에 대한 내용을 종합적으로 정리해볼까 생각하고 있었는데요.
      신용카드 없이 구글 맵 API 키를 생성하는 방법은 기존에 프로젝트를 가입하여 Google Maps API 키를 생성한 경우에만 제대로 작동하는 것 같습니다.
      저는 예전에 테스트 용도로 프로젝트를 만들고 API 키도 생성해놓았습니다. 그 키로 테스트하니까 잘 되었습니다. 하지만 이전에 API 키를 만든 적이 없는 상태에서는 말씀하신 문제가 발생하는 것을 며칠 전에 확인했습니다.

      그러므로 기존에 프로젝트를 만든 적이 없다면 결제 계정을 연결할 수밖에 없을 것 같습니다.

      1. 참.. 초보분들의 질문이 word 님 입장에선 귀찮을 수 있는데 정말 친절한 답변에 감탄을 금치 못하겠습니다. 진심으로 감사드립니당

      2. 감사합니다. 궁금한 점이 있으면 어떤 내용이든 관련 글의 댓글을 통해 올려주시면 시간이 날 때 짧은 지식이나마 아는 범위 내에서 답변드리도록 노력하겠습니다. 새벽부터 비가 오네요...즐거운 하루 보내시기 바랍니다:)

댓글 남기기

* 이메일 주소는 공개되지 않습니다.