220504_TIL

적자생존·2022년 5월 4일
0

TIL

목록 보기
34/35

오늘이 목표

  1. HTTPS/SSL/TLS

  2. 3-WAY-Handshake

  3. SSR

  4. HTTPS/SSL/TLS

루트네임서버
전세계 단 13개만 존재

HTTPS를 사용하려면
인증서가 필요함

무료인증서
유료인증서

인증서를 적용하려면 매우 복잡함
그런데 클라우드를 사용하게 되면 클라우드가 제공해주는 인증서가 있음

인증서 적용하기

GCP-네트워크 서비스-부하분산-만들기 -HTTPS만들기-프런트엔드 구성-인증서만들기

SSL인증서라고 함 근데 최근에 업그레이드 되서 TLS라고 하지만 그냥 관례적으로 SSL이라고 함

데이터 확인 툴
와이어샤크
source - src - 출발지
destination - dst - 도착지

http를 사용하게 되면 내가 날린 쿼리의 내용을 볼 수 있음
그래서 공용와이파이로 http 사이트를 들어가면 쿼리 날린 것들을 볼 수 있음(ARP스푸핑)

https로 하게 되면 정보들이 전부 암호화 되서 날아감

  1. 3-way-handshake

프리플라이트요청(옵션)
상대가 요청을 받을 수 있는 상태인지 알아보기 위해 먼저 요청해보는 것
이 프리플라이트 요청 전에 하는 것이 3-way-handshake임

syn 서버야 나 연결해도 됨? 임시포트(내포트)->http/https포트
syn, ack ㅇㅋ http/https포트->임시포트(내포트)
ack 연결할게 임시포트(내포트)->http/https포트

그 다음 http리퀘스트가 나감
이후 연결이 완료되면 연결이 끊기기 전까지 유지됨

  1. 서버사이드렌더링

서버사이드렌더링은 스토리지에서 할 수 없음
이유: 스토리지는 단순히 다운로드만 받는 곳이기 때문임
24시간 대기하고 있지 않음

그래서 24시간 대기하고 있는 백엔드에서 데이터 요청을 하고 가져올 수 있음

즉 하드코딩된 애들은 ssr이 필요없음
하지만 data.fetchBoard 같이 동적으로 변경되야 하는 부분은 ssr이 필요함

next js에서 ssr을 하는 방법

getSeverSideProps =() => {
}
를 아래에 추가하면 해당 페이지만 서버사이드렌더링이 된다

이때 props로 컴포넌트에 넘겨주게 됨
서버에서 렌더링을 하여 완성본을 프론트로 넘기게 됨
즉 백엔드에서 html을 완성시켜서 가져다 주게 됨

SSR 배포하기
(컴퓨터빌리기)
쉘을 빌리는 것임
내 개인컴퓨터를 종료해도 계속 켜져있음
트래픽하고 상관없이 시간에 따라 계산됨

GCP-컴퓨터엔진-vm인스턴스-인스턴스만들기-우분투로 만드세요

인스턴스를 만들면
VPC(네트워크)
안에 DB도 있고 프런트도 있고 백엔드도 있고 이럼

외부IP VPC밖에서 사용하는 IP(브라우저에서 입력해서 접속할 수 있는 IP)
내부IP VPC내부에서 쓰는 IP 예를들어 프런트가 백엔드에 접속할때

ssh열어서 깃클론

노드js, yarn 깔아야됨
sudo apt update 해주고
밑에 보고 하면 됨
https://jjuon.tistory.com/3

이후 yarn install, yarn build, yarn start

하면 로컬호스트로 나옴
구글컴퓨터 입장에서는 로컬호스트니까,,

근데 이렇게 하면 접속이 안됨
그 이유는?

방화벽 때문에 포트별로 막혀있어서 안됨
그래서 그걸 뚫어 줘야 됨

방화벽 푸는 방법

방화벽 스티커 만들기- 풀어주고 싶은 컴퓨터에 붙히기

GCP - VPC네트워크- 방화벽 - 방화벽 규칙 만들기
다 만들고

컴퓨터엔진 - VM인스턴스- 방화벽 설정할 컴퓨터 클릭-수정하기-네트워크태그에 스티커 붙히기

이렇게 하면 쉬운데? 왜 스토리지 배포에 하는지?

트래픽이 늘어나면 감제하는 사람이 필요함
관리가 쉽게 하려고 스토리지에 보내버림

ssr을 자식으로 넘기는 방법 2가지
프롭스로 받아온걸 자식으로 보내주기
ssr페이지라고 하더라도

profile
적는 자만이 생존한다.

0개의 댓글

관련 채용 정보