본문 바로가기

기타

http와 https

 

 

 

 

HTTP

   - HyperText Transfer Protocol, 하이퍼텍스트 전송 프로토콜이라고 합니다.

   - 월드와이드 웹 (WWW)의 토대이며, 하이퍼텍스트 링크를 사용해 웹 페이지를 로드합니다.

   - 응용계층 프로토콜로, 네트워크 프로토콜 스택의 다른 계층 위에서 실행됩니다.

   - http 요청(request)과 http 응답(response)으로 구성됩니다.

   -  80 포트를 사용합니다.

 

 

 

 

HTTP 요청 구성

   1. HTTP 버전 유형

   2. URL

   3. HTTP 메서드

      - 크게 GET과 POST의 값으로, 서버에 요청하는 작업의 종류를 의미합니다.

 

   4. HTTP 요청 헤더

      - 카값 쌍에 저장된 텍스트 정보입니다.

      - 클라이언트가 사용하는 브라우저 정보 및 요청하는 데이터와 같은 핵심 정보입니다.

google chrome의 네트워크탭의 http 요청 헤더 예시

   

   5. HTTP 본문(선택사항)

      - 정보의 본문으로, 사용자 이름이나 비밀번호등의 웹 서버에 제출하는 모든 정보를 의미합니다.

 

 

 

 

HTTP 응답 구성

   1. HTTP 상태 코드

      - HTTP 요청이 성공적으로 완료되었는지 여부를 나타냅니다.

      - 1XX는 정보, 2XX는 성공, 3XX는 리디렉션, 4XX는 클라이언트 오류, 5XX는 서버 오류입니다.

      - 예를 들어 코드 200 OK와, 404 Not found, 403 Forbidden이 존재합니다.

 

   2. HTTP 응답 헤더

      - 응답 본문에서 전송되는 데이터의 언어 및 형식 등의 정보를 포함합니다.

google chrome의 응답헤더 예시

 

   3. HTTP 본문(선택사항)

      - 일반적으로 요청된 정보가 포함된 본문이 존재합니다.

      - 대부분 웹 브라우저에서 페이지로 변환되는 HTML 데이터입니다.

 

 

 

 

HTTPS?

   - HyperText Transfer Protocol "Secure", 하이퍼텍스트 전송 프로토콜 보안 이라 합니다.

   - 기본 프로토콜인 HTTP의 보안 버전으로, 암호화 프로토콜을 사용하여 통신을 암호화합니다.

   - URL 표시줄에서 https 사용 여부를 확인할 수 있습니다.

   - 일부 브라우저에서는 https가 아닌 모든 웹 사이트는 안전하지 않은 것으로 표시됩니다.

https 의 예시 : naver

   - 443 포트를 사용합니다. 

 

 

 

 

HTTPS와 HTTP의 차이

   - HTTPS와 HTTP는 방식이 동일하지만, HTTPS에서 몇가지 과정이 추가됩니다.

   1. 암호화

      - 공개키와 SSL/TLS 통신을 통한 암호화를 수행합니다.

      - 혹시 스니핑 등의 경로상공격을 당하더라도 정보 유출을 방지할 수 있습니다.

 

   2. 인증서 확인

      - 공개키에 포함된 SSL/TLS 인증서의 디지털 서명을 확인합니다.

      - 이를 통해 정보가 위조되었는지 확인하여 무결성을 확보할 수 있습니다.

 

 

 

 

HTTPS 설정하기

   1. 도메인 받기

      - 도메인을 구매하여 도메인 주소를 확보합니다.

 

   2. 웹 사이트에 SSL 또는 TLS 인증서를 설치합니다.

      - 웹 호스트 업체에서 제공받거나 인증기관에서 직접 설치할 수 있습니다.

      - SSL/TLS 인증서는 정기적으로 갱신해야 할 수 있습니다.

 

   3. 등록받은 인증서를 서버에 등록합니다.

      - 생성한 웹 서버에 인증서를 등록합니다.

      - 등록이 성공하면 https의 기본포트인 443 포트로도 접속이 가능해집니다.

 

   4. http 포트에 https 리다이렉션 설정을 합니다.

      - http의 기본포트는 80포트고, https의 기본포트는 443 포트입니다.

      - 80포트로 접속해도 443포트로 redirect 되게 설정합니다.