1. SSL/TLS 인증서
SSL이란 흔히 서버와 클라이언트가 통신할때 암호화를 위해 사용된다.
흔히 우리가 쉽게 말하자면 웹사이트를 제작할때 https를 입히려고할때 한다.
2. Cloudflare SSL/TLS 방식
Cloudflare의 SSL 인증 방식은 총 4가지가있다.
( ←🔒→ 는 SSL로 연결됨, ←─→ 는 일반적으로 연결됨을 의미한다)
1. 끄기
브라우저 ←─→ Cloudflare ←─→ 원본서버
아무 암호화도 적용되지않는다.
2. 가변
브라우저 ←🔒→ Cloudflare ←─→ 원본서버
사용자 입장에서는 HTTPS가 적용된 것으로 보이나 사실은 Cloudflare와 원본 사이 트래픽은 암호화가 되어있지 않다..
3. 전체
브라우저 ←🔒→ Cloudflare ←🔒→ 원본서버
모든 구간이 SSL로 연결되어있다.
4. 전체(엄격)
브라우저 ←🔒→ Cloudflare ←🔒→ 원본서버
모든 구간이 SSL로 연결되어있다. 그러나 Cloudflare와 원본 서버 사이에는 신뢰할 수 있는 인증서만 사용된다.
3. Cloudflare 인증서 발급
Cloudflare에서는 3가지 인증서를 발급해준다.
브라우저 ← ⓐ → Cloudflare ← ⓑ → 원본서
1. 에지 인증서 (Edge)
해당 인증서는 브라우저와 Cloudflare간의 ⓐ구간에서 사용되는 인증서이다. 별도로 다운 받을 순 없고 업로드만이 허용된다 (유료)
2. 클라이언트 인증서 (Client)
해당 인증서는 말그대로 사용자의 Client에 미리 허용해두는 인증서이다. 해당 인증서를 사용하기위해선 유저와 서버에 모두 설정해두어야 사용 할 수 있다.
3. 원본 서버 (Origin Certificate Authrority 보 CA라고함)
해당 인증서는 Cloudflare와 원본서버 간 ⓑ구간에서 사용되는 인증서이다. 서버에 적용시켜두면 작동은 하나 최대 단점으로는 클라이언트가 바로 직접 접속할 시 인증서를 신뢰 할 수 없다 오류가 표시된다. (Cloudflare Docs 참고)
4. Let's Encrypt with NPM(Nginx Proxy Manager) 기준
필자는 NPM(Nginx Proxy Manager)와 Cloudflare을 사용하여 설명하겠다. 사실상 내부적으로는 Let's Encrypt를 사용하는 것과 동일하다.
NPM 로그인 > SSL Certificates > Add SSL Certificate로 들어간 후 아래의 포맷 대로 작성한다.
여기서 <Cloudflare API Key>는 https://dash.cloudflare.com/profile/api-tokens에서 발급받을 수 있다.
토큰 생성 > 영역 DNS 편집 템플릿 사용을 들어가고
이와 같이 설정하고 요약 계속 > 토큰 생성 을하면 해당 값이 생성된다.
다만 NPM이 80포트가 열려있어야 자동적으로 SSL 파일이 생성된다.
'⭐개발 > ⭐홈서버' 카테고리의 다른 글
집에서도 ChatGPT처럼 LLM을 사용해보기 with Ollama + OpenWebUi + Llama 3 (0) | 2024.04.24 |
---|