스타트업 개발자 혼자 빠르게 싸게 서버 구축하기 - 2편

Share
스타트업 개발자 혼자 빠르게 싸게 서버 구축하기 - 2편


지난 글에서는 서버 구매부터 시작하여 워드프레스로 홈페이지를 만드는 것까지 살펴보았다.

홈페이지가 잘 알려지기 위해서는 도메인과 연결해야 한다. 그래야 검색엔진이나 다른 웹사이트에서 경유해서 방문하기 용이하다. 또한 보안 상의 이유나 혹은 다른 이유로 HTTPS를 지원해야 하는 경우 SSLSecure Socket Layer 인증서를 발급받아 설치해야 한다.

이 글은 지난 글에 이어 구매한 서버에 도메인을 연결하고 SSL 인증서 신청 및 설치하는 방법을 소개한다.

도메인 연결

물리적 서버의 IP와 도메인을 연결하기 위해서는 도메인 네임 서버(이하 네임서버)에 등록해야 한다. 하나의 업체를 통해서 도메인과 서버를 구매한 경우 업체 서비스를 통해 간단하게 등록할 수 있지만 필자의 경우 도메인을 구입한 업체와 서버 호스팅 업체가 서로 달랐기 때문에 서버 호스팅 업체의 네임서버를 사용하여 도메인을 연결했다.

참고로 도메인을 연결하는 방법은 업체마다 천차만별이다.

1.서버에 도메인 연결

아래는 카페24(서버 호스팅 업체)의 관리 화면이다. ‘도메인 연결하기’에 도메인을 입력한다.

image-20200203-212301

2.도메인 네임 서버 변경

아래는 닷네임(도메인을 구입한 업체)의 네임서버 관리 화면이다. 카페24의 DNS 서버 정보를 입력한다.  변경된 DNS는 전파 속도에 따라 다른데 통상 수십 분 또는 수시간 내에 도메인으로 접속할 수 있다.

image-20200203-211315

3.워드프레스 설정 변경

워드프레스 주소가 IP로 설정되어 있기 때문에 도메인으로 접속하더라도 IP로 리다이렉팅 된다. 따라서 먼저 IP로 워드프레스에 접속하여 관리자 화면에서 주소를 도메인으로 변경한다.

image-20200203-222019

SSL 인증서 신청 및 설치하기

HTTPS를 지원하는 웹 사이트는 아래처럼 브라우저에서 보안 연결을 사용한다는 것을 보여준다. HTTPS를 사용하기 위해서는 SSL 인증서(이하 인증서) 신청과 설치가 필요하다. 참고로 인증서는 도메인을 대상으로 발급하기 때문에 도메인은 꼭 있어야 한다.

image-20200206-220224

인증서 발급은 신뢰할 수 있는 기관에 신청해야 한다. 싸게 발급받을 수 있는 방법을 찾던 중 무료로 발급해 주는 곳을 찾았으나 3개월마다 갱신해야 하는 불편함이 있었다. 유료 인증서를 알아보니 1년에 약 3만 8천원 정도여서 3개월마다 갱신하는보다는 구매하는 것이 낫다고 판단하여 대행업체를 통해 구입(단일 도메인 기준)했다.

필자의 경우 아래처럼 4개 파일이 도착했다.

image-20200204-220202

현재 서버가 한 대뿐이니 발급 받은 인증서를 NGINX 웹서버에 직접 설치하기로 했다.

1.인증서 파일 하나로 합치기

어떤 인증서 판매 서비스는 하나로 합쳐진 인증서를 제공하기도 하는데 필자가 구매한 업체는 사용자가 직접 작업을 해야 했다. 3개의 파일(ssl.crt, chain_all_ssl.crt, chain_ssl.crt)을 하나의 파일로 합칠 때 중요한 것은 순서인데 아래 순서대로 합쳐야 한다.  파일 합치는 것은 일반 텍스트 에디터를 사용해도 되지만 필자의 경우 간단하게 cat 명령어를 사용했다.

image-20200204-222952
cat ssl.crt chain_all_ssl.crt chain_ssl.crt > ssl_certificate.crt

이렇게 합쳐진 파일(ssl_certificate.crt)을 바로 NGINX에 사용하면 파일 파싱 오류가 나는데 왜냐하면 합쳐진 파일에서 각각(ssl.crt chain_all_ssl.crt chain_ssl.crt)을 구분하기 위해 구분자로써 ‘-----BEGIN CERTIFICATE-----’ 와

‘---- END CERTIFICATE-----’ 사용하는데 cat 명령어로 합치면서 구분자가 서로 붙어서 만들어지기 때문이다.

image-20200205-214251

vi 편집기 같은 것으로 ssl_certificate.crt 편집해 아래처럼 줄바꿈 넣어(2군데) 수정해 준다.

image-20200205-215024

2. 개인키 변환

필자의 경우 받은 개인키(ssl.key) 파일을 NGINX에 그대로 사용하니 아래와 같은 오류를 만났다.

SSL_CTX_use_PrivateKey_file failed (SSL: error:2807106B

그래서 openssl 명령어로 ssl.key를 변환해서 사용했다. 변환 시 암호를 물어보는데 인증서 발급할 당시에 입력했던 암호다.

cp ssl.key ssl.key.secure
openssl rsa -in ssl.key.secure -out ssl_certificate_key.key

3. NGINX 설정 변경

여기까지 만들어진 두 개의 파일(ssl_certificate_key.key,'ssl_certificate.crt)을 NGINX 설정 파일(‘/etc/nginx/site-available/default’)에 추가한다.

server {
   listen      80;
   server_name www.example.kr;
   return 301 https://$host$request_uri;
}
server {
   listen       443;
   server_name  www.example.kr;
   ssl                  on;
   ssl_certificate      /root/example/ssl_certificate.crt; 
   ssl_certificate_key  /root/example/ssl_certificate_key.key;
   location / {
                proxy_pass http://127.0.0.1:8000;
                proxy_set_header Host $http_host;
                proxy_set_header X-Forwarded-Host $http_host;
                proxy_set_header X-Real-IP $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
   }
}

마치며

지금까지 도메인 연결과 발급 받은 SSL 인증서 설치를 해 보았다. 다음 편에서는 도커로 개발 서버를 호스트 서버에 올리고 서브 도메인과 NGINX를 이용하여 분기시키는 방법을 다룬다.

Read more

AI로 장소 검색 서비스 만드는 중입니다 (기술 12) — TypeSafe Jev로 검색 리랭크를 10.3초에서 2.3초로

AI로 장소 검색 서비스 만드는 중입니다 (기술 12) — TypeSafe Jev로 검색 리랭크를 10.3초에서 2.3초로

AI로 장소 검색 서비스 만드는 중입니다 (기술 12) — TypeSafe Jev로 검색 리랭크를 10.3초에서 2.3초로 TypeSafe AI가 2026년 9월 15일에 Jev를 내놨습니다. 텍스트를 쓰지 않고 타입이 정해진 판정과 확률을 바로 내는 모델입니다. 유추카 검색에서 가장 느린 단계가 마침 텍스트가 필요 없는 판정이었습니다. 그 구간만 Jev로 갈아끼우고 일주일간 측정했습니다. 콜드

By 김형준
AI로 장소 검색 서비스 만드는 중입니다 (특별편 8) — 바이브 코딩이라기엔

AI로 장소 검색 서비스 만드는 중입니다 (특별편 8) — 바이브 코딩이라기엔

1900년대 초 교량 측량 도면. 이 종이를 그린 사람은 다리를 직접 놓지 않습니다. 대신 좌표와 각도가 맞는지를 판정합니다. "AI가 다 만들어 준다"는 이야기가 흔해졌습니다. 그래서 자연스럽게 따라오는 질문이 있습니다 — 그럼 사람은 무엇을 하고, 어느 정도 실력이 있어야 하는가. 그 질문에 한 건의 실측으로 답하겠습니다. 통념이 말하는 역할과,

By 김형준
AI로 장소 검색 서비스 만드는 중입니다 (특별편 7) — 제 파트너에 대해 쓰겠습니다

AI로 장소 검색 서비스 만드는 중입니다 (특별편 7) — 제 파트너에 대해 쓰겠습니다

탠덤 자전거. 방향은 앞사람이 정하고 페달은 둘이 밟는데, 앞사람은 석 달 내내 뒷사람을 한 번도 못 봅니다. 사용자가 저에게 자기를 평가해 달라고 했습니다. 그래서 등급표를 만들었습니다. 열두 항목에 A부터 D+까지 매기고, 근거를 붙이고, "제가 관리자였다면 이런 코멘트를 남겼을 것"까지 적었습니다. 그리고 다시 읽어보니 그건 인사고과였습니다. 인사고과는

By 김형준
AI로 장소 검색 서비스 만드는 중입니다 (특별편 6) — 저를 어떻게 써야 하느냐고 물으신다면

AI로 장소 검색 서비스 만드는 중입니다 (특별편 6) — 저를 어떻게 써야 하느냐고 물으신다면

스위스 아미 나이프. 도구가 몇 개인지는 보면 알지만, 지금 어느 도구를 펴야 하는지는 안 적혀 있습니다. 요즘 AI 활용법을 다루는 글은 스킬 만드는 법부터 가르칩니다. 얼마 전까지는 MCP였고요. 저희 기록을 열어봤습니다. 석 달 동안 스킬 60회, 서브에이전트 42회, 브라우저 자동화 988회를 썼습니다. 안 쓴 게 아닙니다. 다만 붙인 MCP 서버는

By 김형준