Notice
Recent Posts
Recent Comments
Link
«   2024/10   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31
Archives
Today
Total
관리 메뉴

Super Coding Addict

무료 SSL 인증받기 본문

Today I learned

무료 SSL 인증받기

밍응애 2021. 1. 3. 14:41

호스팅의 길은 너무나도 험난하다......

마치 개발ver.2를 하고 있는 느낌이랄까....?ㅋㅋㅋㅋㅋ

팀프로젝트가 끝나서 개운~상쾌~한 기분은 잠시... 호스팅이 날 쥐어팰줄이야 ㅋㅋㅋ

카페24에서 서비스만 사서 프로젝트 파일만 업로드하면 일사천리로 모든 걸 다 알아서 해줄 줄 알았지만...

그게 아니었다 ㅋㅋㅋ

 

호스팅을 하자마자 이상했던 점이 몇 개 있었다.

1. 카카오 소셜로그인이 안됨

2. 접속하자마자 바로 gps 동의창이 떠야하는데 그게 안돼서 현재 위치를 못잡음

 

1번은 당연히 localhost를 기준으로 redirectURI를 맞춰놓았기 때문에

카카오로그인을 맡았던 팀원에게 URI를 바꿔달라해서 간단히 해결은 했으나

2번이 문제였다...

 

처음에는 카카오지도를 사용하기 위해 플랫폼에서 도메인주소가 1번과 마찬가지로 localhost로

되어있어서 그런가보다하고 이 부분을 고치면 되겠지 했는데....

역시나 gps를 못잡음....

(물론 플랫폼에서 도메인주소를 로컬에서 본도메인주소로 바꿔줘야 하는 건 당연한 작업이었다)

 

개발은 이런 것이다.

아유 간단하네 이것만 고치면 되는 거구나 -> 안됨 -> 역시...

간단하다고 생각하는 순간 그건 내 무지를 인증하는 모먼트인 것이다 ㅋㅋㅋ

 

지도부분이 내 파트가 아니어서 이렇게 간단하게 생각했는데,....

생각해보니 gps를 잡는 건 구글api를 활용했는데 카카오지도랑 관련이 없는 거 아닌가?

혹시나해서 f12를 켜서 확인해보니...

 

gps를 잡는 함수가 안전하지 않은 환경에서 작동하지 않는다는 그런 얘기...?

이게 무슨 소린가하여 오류를 통째로 긁어 구글링해보니

http가 문제였다.

http프로토콜 사용시 HTML5 Geolocatioin API 등의 위치정보가 보안문제로 사용제한이 된다고 한다.

(참조: medium.com/witinweb/http-%ED%94%84%EB%A1%9C%ED%86%A0%EC%BD%9C-%EC%82%AC%EC%9A%A9%EC%8B%9C-html5-geolocation-api-%EB%93%B1-%EC%9C%84%EC%B9%98%EC%A0%95%EB%B3%B4-%EC%82%AC%EC%9A%A9%EC%A0%9C%ED%95%9C%EC%97%90-%EB%8C%80%ED%95%98%EC%97%AC-e024772cc280)

 

위치정보도 민감한 정보에 속하기 때문에 https연결을 도입해야 한다는 것이다.

그래... 민감한 정보가 맞으니 해결해야 하는 문제가 분명했다.

 

개발을 하며 느끼는 건, CS지식을 왜 기술면접에서 물어볼 수밖에 없는 지를 확실히 알게된다는 것이다.

단순히 개발툴을 잘 다루거나 코드를 잘 짠다고 만능개발자가 될 수 없는 것이다.

 

영어를 전공으로 한 사람으로서 생각해보면 문법을 잘한다고한들

막상 회화를 하려면 정줄을 놓게 되는 것과 비슷한 느낌이랄까..?

하지만 문법적 지식이 있으면 확실히 회화도 조금 더 수월하게 배우게 되는데,

마찬가지로 개발을 하면 할수록 그 전과는 다른 시각으로 컴퓨터세상을 바라보게 되는 것 같다.

 

아무튼 본론으로 돌아와서,

지도부분을 맡은 팀원과 고민해보고 같이 자료서칭을 한 결과,

https로 마이그레이션하기 위해선 ssl인증을 받아야하는데 이 ssl인증부터가 또 다른 난관의 시작이었다.

 

그냥 포스팅 여러개 찾아보고 따라하면 ssl인증을 쉽게 딸 수 있겠지 했는데, ssl인증을 받기위해

내가 도메인의 소유주임을 증명하는 절차에서 꽉 막혔다.

팀원과 2시간을 머리를 싸매고 정말 별 방법을 다써도 ftp로 서버에 파일을 업로드하는 게 안되어서

우리 웹사이트가 방화벽으로 막혀있나 했으나,

카페24 톰캣호스팅서비스는 방화벽 기능을 제공하지 않는다....?

결국 밤1시가 되어서야 손을 떼고 어제 하루는 푹 쉬었다.

 

오늘 아침, 다시 DNS로 인증을 해야겠다는 생각에 도메인부터 붙잡기 시작했다.

 

카페24 무료도메인은 dns관리를 할 수가 없어서 새로운 도메인을 구입해야만 한다.

무료도메인으로 해봤지만, 왜때문인진 알 수 없게 카페24가 무료도메인 형식이 잘못되었다고 등록을 안시켜줌 흐에에엥

서러워... 카페24에서 호스팅 사는 데만 2번 돈을 썼는데!!!!!

 

결국 가비아라는 곳에서 도메인을 하나 샀다.

주소가 xyz으로 끝나서 웃기긴하지만 1년간 약 2000원에 도메인을 쓸 수 있다니 이걸로 결정!

(카페24 도메인은 1년에 2만원대였다)

 

그럼 이제 이 유료도메인을 가지고 어떻게 무료 ssl 인증을 받을 수 있는 지 알아보자!


1. 무료 ssl인증을 해주는 웹사이트 ZeroSSL : www.sslforfree.com/

 

SSL For Free - Free SSL Certificates in Minutes

Wildcard SSL Certificates Wildcard certificates allow you to secure any sub-domains under a domain. If you want to secure any sub-domains of example.org that you have now or in the future you can make a wildcard certificate. To generate wildcard certificat

www.sslforfree.com

무료 ssl 인증 서비스를 제공하는 곳은 많다.

ftp서버로 파일을 올려 도메인 주인임을 인증하는 방법이 계에에에속 안되어서 다른 사이트도 뒤져봤지만

렛츠인크립트는 생각보다 복잡해보여서 ZeroSSL을 선택했다.

 

사이트에 접속하면 다음과 같은 화면이 나오는데

밑에 검색창에 본인의 도메인 주소를 입력하고 Create Free SSL Ceritificate 버튼을 누른다.

사실 아무거나 쳐도 별 의미가 없다..ㅋㅋㅋ 뒤에가서 또 도메인 주소 입력해야 하기 때문에..

 

그리고 회원가입(Register)후에 로그인(Sign in)을 한다.

 

 

Dashboard를 클릭하면 SSL 인증을 신청할 수 있다. 여기서 New Cerificate 버튼 클릭!

 

Enter Domains밑에 본인의 도메인 주소를 넣어주면 옆에 초록체크박스가 뜬다. Next Step 클릭!

 

그 담에 90일짜리 Certificate를 선택한다. 이말인 즉슨... 90일 후 갱신을 해주어야 한다는 것!

90일 후가 되기 2주전에 등록한 계정 메일로 연장하라는 알림이 오는데, 다시 이 절차를 거쳐주면 되는 듯 하다.

 

Auto로 선택하고 Next Step~

 

우린 Free를 쓸거니까 자동선택되어 있는 Free로 간다! Next Step 클릭!

 

내가 이 화면을 몇 번을 본건지 모른다...ㅋㅋㅋ

여기선 선택지가 3개가 있다. 이메일 인증 / DNS / HTTP 파일 업로드 인증 

우선 이메일 인증을 누르면 도메인을 기준으로 자동완성된 메일들만 선택을 할 수가 있다.

가비아에서 도메인을 따오기 전 카페24 무료도메인을 쓰고 있었기에 그 도메인으로 진행했더니

선택가능한 이메일이 모두 ~~~@~~~.cafe24.com 이런식이 아니겠는가 ㅠㅠ...

그래서 카페24에서 웹메일 서비스를 쓸 수 있나 했더니 그것은 또다른 +a의 유료 서비스이더이다...

2000원에 메일을 사볼까 했더니 설치비가 무려 만원이다...

 

그래서 FTP로 파일을 올리는 방법을 처음에 썼는데

파일을 아무리 잘 올려도 웹사이트가 확인을 못해줘서 팀원과 분노의 재업로드를 20번은 한 것 같은데

여기서 이 방법도 포기할 수밖에 없었다...

모든 포스팅이 다 성공한 포스팅 뿐이라 절망이었기에 마지막 방법을 쓸 수 밖에 없었다.

 

혹시나 파일업로드에 실패하는 분들이 있다면...

저렴한 유료도메인을 하나 사서 DNS로 인증을 하는 게 정신 건강에 이로울 수 있음을 강조하는 바다. 

 

자 이제 DNS로 인증을 해보자. 여기서 Name과 Point To를 복붙해야 하는데~

나는 가비아 도메인 서비스를 쓰고 있으니 가비아를 기준으로 안내해 보겠다.

 

먼저 가비아에서 도메인을 산 뒤 네임서버를 카페24에서 가져와서 등록해준다.

이 부분은 서비스관리 하단부에 있는 도메인관리툴에서 진행하면 되니 생략하겠다.

 

자 이렇게 서비스관리에서 DNS관리툴로 들어간다.

 

여기서 DNS를 설정할 수 있는데 나는 아까 CNAME으로 등록을 했기에 CNAME정보가 남아있다.

여기서 설정 버튼을 클릭!

 

여기서 몇번 띠용스러운 모멘트가 있었으나, 무료도메인 사이트에서 CNAME을 한번 등록해봤기에

나름 잘 설정을 해서 성공하였다.

 

우선 타입은 CNAME으로 선택하고,

아까 ZeroSSL사이트에서 본 Name과 Point to를 각각 호스트와 값/위치에 넣어주면 된다.

 

Name은 ~~~~.도메인주소로 되어있는데 도메인주소는 빼고 ~~~부분만 호스트 부분에 복붙,

Point to 부분은 그대로 값/위치에 복붙하되 마지막에 . 을 붙여줘야 한다. 안그럼 .붙이라고 알림이 뜬다.

그리고 TTL은 600으로 설정한다. ssl free사이트에서 3600 또는 그 이하로 안내해서

3600으로 했더니 안되길래 무료도메인사이트에서 600으로 했던 걸 생각해서 600으로 했더니 된다.

 

그리고 확인을 누른 후 저장한 후 다시 ssl free사이트로 돌아와 다음 단계로 진행해주면 된다.

 

맨 밑에 Verify Domain을 누르면 방금 도메인사이트에서 작업한 것을 확인하여 인증서를 내어준다...

계속 오류만 보다가 인증서 발급을 성공적으로 받았을 때 정말 울뻔했다. 

 

자, 이제 인증서를 들고 카페24로 가보자~

 

2. 카페24에 외부인증서 등록하기

 

인증서를 다운 받고 압축을 풀면 3개의 파일이 생긴다.

3개 중 필요한 건 도메인 인증서(certificate.crt)와 개인 키(private.key)이다.

이 두 가지를 열 때는 연결프로그램으로 메모장을 선택해서 열어주도록 한다.

(메모장이라 쓰고 갓모장이라 읽는다...)

 

그리고 그대로 긁어서 카페24에서 붙여주는 작업만 하면 되는데...

이 인증서가 ZeroSSL이 개편되며 예전과 다른 형식이 되어서 카페24가 인식을 못한다.

그렇기에 이 인증서를 다른 형식으로 변환하는 작업이 필요한데, 그 부분은 내가 참조한 포스팅을 덧붙인다.

아주 친절하게 설명해주셨다!

 

이러쿵저러쿵 :: ZeroSSL 인증서 base64 X509방식으로 변환하기 (카페24 등록) (ooz.co.kr)

 

ZeroSSL 인증서 base64 X509방식으로 변환하기 (카페24 등록)

최근에 ZeroSSL 무료 인증서 발급이 일부 유료화 되면서 사이트도 개편이 되었습니다. 계정당 3개까지 90일짜리 인증서는 무료로 발급해주지만, 3개를 초과화면 월정액 상품을 이용해야 합니다. (

ooz.co.kr

인증서 형식 변환까지 마쳤다면 카페24에서 나의 서비스관리로 들어온다.

 

왼쪽 메뉴에 보면 인증서관리 - 외부인증서 관리로 들어오면 다음과 같은 화면이 나타나는데 

이 때 연결도메인이 아까 ZeroSSL에서 넣은 도메인주소와 일치해야 한다!

내가 무료도메인을 못쓴 이유가 바로 여기에 있다...

무료도메인을 연결도메인으로 카페24가 무슨 이유에선지 계속 등록거부를 하는 바람에..

그래서 연결을 2번이나 했다...  유료도메인으로 다시..ㅠㅠ

 

자, 메모장에서 인증서와 개인키를 연 다음 각각 복사-붙여넣기 해주고 신청하기를 하면 된다.

하단의 비밀번호에는 딱히 입력하지 않아도 되는 것 같다. 난 안했다.

인증서와 개인키를 열어보면 맨 윗줄과 아랫줄에 BEGIN과 END 포인트를 표시해놓았는데

인식을 위해 그것까지 포함해서 통째로 복붙하면 되시겠다. 안하면 인식을 못한다...

 

신청하기를 누르면 3일내로 승인을 해준다고 해서 오래 걸릴 줄 알았는데,

몇분 내로 완료되니 다른 작업하다가 보면 승인으로 상태가 바뀌어 있다!

승인이 되면 본인 도메인주소 앞에 https://를 붙여주고 접속해보면 SSL인증이 완료되었음을 확인할 수 있다~

GPS도 이제 잘 잡힌다 :)