일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- kafka배포
- 자바
- nplus1
- selenium
- N+1문제
- 자동화워크플로우
- 메소드
- Java
- springboot
- 스프링시큐리티
- 엘라스틱서치
- 헥사고날아키텍처
- 프로토콜역할
- 자료구조
- Kafka
- XSS
- n8n
- 오블완
- 티스토리챌린지
- 부트캠프
- 캐시의 작동 원리
- JPA
- 테스트케이스
- 한화시스템부트캠프
- STOMP
- 하이브리드접근법
- 오버로딩
- QA
- 프로세스와스레드의차이
- jwt토큰
- Today
- Total
아쿠의 개발 일지
[Network] HTTP/HTTPS 차이점, SSL 인증서 다운로드 받기 본문
CI/CD
지속적 통합(Continuous Integration) 및 지속적 제공/배포(Continuous Delivery/Deployment)를 의미하며, 소프트웨어 개발 라이프사이클을 간소화하고 가속화하는 것을 목표로 한다.
지속적 통합이란 어플리케이션의 새로운 코드 변경 사항이 정기적으로 빌드 및 테스트 되어 공유 레포지토리에 통합하는 것을 의미한다.
진행 순서를 정리 해 봤을 때 > K8S 배포 기준
- Kubernetes 클러스터 배포 및 MetalLB 설정
- LoadBalancer 서비스 및 Ingress 설정
- 도메인 연결 및 SSL 설정
- CI/CD 파이프라인 설정 (Jenkins 사용)
- 무중단 배포 설정
으로 이뤄집니다. 여기에서 3번째인 도메인 연결 및 SSL설정은 HTTPS로 적용하는 것인데,
그 전에 HTTP와 HTTPS의 차이점에 대해서 알아봅시다.
1. HTTP (HyperText Transfer Protocol)
- 정의: 인터넷 상에서 웹 브라우저와 웹 서버 간의 데이터를 주고받는 기본 프로토콜.
- 특징:
- 데이터를 암호화하지 않고 **평문(Plain Text)**으로 전송.
- 속도는 빠르지만, 보안에 취약.
- 주로 보안이 덜 중요한 일반적인 웹사이트(예: 뉴스 사이트)에서 사용.
- 포트 번호: 기본적으로 80번 포트 사용.
2. HTTPS (HyperText Transfer Protocol Secure)
- 정의: HTTP에 **SSL/TLS(Secure Socket Layer / Transport Layer Security)**를 추가해 보안을 강화한 프로토콜.
- 특징:
- 데이터 암호화: 클라이언트와 서버 간의 데이터가 암호화되어 중간에서 가로채도 내용을 알 수 없음.
- 데이터 무결성: 데이터가 전송 중 변조되지 않도록 보장.
- 인증: 서버가 신뢰할 수 있는 인증기관(CA, Certificate Authority)에서 발급받은 SSL 인증서를 사용해 통신 상대방의 신뢰성을 보장.
- 보안이 중요한 웹사이트(예: 금융, 전자상거래, 로그인 페이지)에서 사용.
- 포트 번호: 기본적으로 443번 포트 사용.
HTTPS의 작동 원리
- SSL/TLS 핸드셰이크:
- 클라이언트와 서버가 서로 암호화 키를 교환하여 안전한 통신 채널을 설정.
- 데이터 암호화:
- 데이터를 암호화하여 전송하며, 수신자가 복호화하여 내용을 확인.
- 인증서 검증:
- 서버의 SSL 인증서를 검증하여 통신 상대방의 신뢰성을 확인.
왜 HTTPS를 사용하는가?
- 보안 강화: 데이터 도난 및 중간자 공격(MITM)을 방지.
- SEO 우대: Google과 같은 검색 엔진은 HTTPS 웹사이트를 우선적으로 노출.
- 사용자 신뢰도 증가: HTTPS는 브라우저에서 자물쇠 아이콘을 표시해 사용자에게 안전하다는 인식을 줌.
- 브라우저 경고: 최신 브라우저는 HTTP 사이트를 "안전하지 않음"으로 표시.
SSL 인증서 발급 받는 방법
HTTPS를 구현하기 위해서 SSL 인증서를 발급 받아야 한다.
ZeroSSL에서 발급 받았다.
사용 할 도메인 입력
무료 도메인 인증 센터인 [내 도메인 한국] 에서 등록 가능합니다.
https://xn--220b31d95hq8o.xn--3e0b707e/
내도메인.한국 - 한글 무료 도메인 등록센터
한글 무료 도메인 내도메인.한국, 웹포워딩, DNS 등 무료 도메인 기능 제공
xn--220b31d95hq8o.xn--3e0b707e
도메인을 생성 해 주고, IP연결에는 K8S에 배포한 frontend 서비스의 IP를 적어주면 된다.
위에 생성한 도메인 주소를 입력 해 주고 Next Step을 넘어간다.
90-Day 로 설정 해 주고 Next Step
무료가 너무너무 중요하니까, 추가 기능은 아무것도 체크하지 않고 Next Step
무료 버전을 선택하고, Next
아래에 나오는 Name, Point To 를 잘 복사해서 내 도메인 한국에 있는
이 칸에 잘 넣어주시면 됩니다. 그럼 이제 키를 다운 받을 수 있는데, 이 키의 압축을 해제하고 내가 찾을 수 있는 폴더 안에 잘 넣어주시면 됩니다. 저는 c드라이브에 넣었습니다.
이제 이 key를 병합해서 넣어주면 되는데, 이건 다른 페이지에서 작성하겠습니다.!
대부분의 웹사이트에서는 HTTPS 사용이 표준화되고 있습니다. 다들 신규 웹사이트를 개발하거나 운영한다면 HTTPS를 사용하는 것을 권장하고 있습니다!
'Programming > CS' 카테고리의 다른 글
운영체제(Operating System)의 핵심 개념 (0) | 2025.01.14 |
---|---|
[Network] SSL 인증서 적용 & K8S 클러스터 Ingress-nginx 활용 (0) | 2025.01.08 |
[Security] UsernamePasswordAuthenticationFilter 인증 과정 (1) | 2025.01.02 |
[Security] JWT(JSON Web Token)토큰이란? (2) | 2024.12.31 |
[OOP] 디자인 패턴(Design Pattern)? (0) | 2024.12.30 |