
기존의 로드밸런서만을 사용하던 프로젝트에서 docker를 이용한 무중단 배포를 적용을 해야했습니다.이때, 추가적으로 Nginx를 도입하면서 했던 생각들과 여기서 어떤 방식이 제일 효율적이며 안정적인가 고민을 하면서 도입을 했는데 이번에 이를 정리해보려 합니다. 기존 프로젝트에선 로드밸런서에 ACM과 Route53을 통해 https를 적용하고 뒷단의 서버는 ci-cd로 중단 배포가 적용되었습니다. 이를 그림으로 간단하게 보면 다음과 같습니다. AWS ELB가 앞단에 존재하고, 요청을 받게 되면 뒤에 있는 EC2로 요청을 전달하는 과정으로 통신이 진행됩니다.이때, ELB에는 Route53을 통해 기존에 저희가 사두었던 도메인이 적용되어 있으며, ACM을 통해 SSL 인증서가 적용되어 앞단의 ELB는 443포..

이번엔 SSH에 대해서 알아보도록 하겠습니다. 저희가 개발을 할 때, 서버 배포를위해 클라우드에 접속을 할때 흔히 SSH로 원격접속을 하고, SCP로 파일전송을 했던 경험이 있을 겁니다. 그때는 "아 그냥 이런거구나~" 하고 넘어갔는데, 이번 기회에 SSH란 무엇이고 어떤원리로 진행이 되는지를 알아보도록 하겠습니다.ㅕㅣ 우선 SSH란 뭘까요? SSH(Secure Shell)이란? 암호화를 통해 클라이언트와 서버 간에 연결하기 위해 개발된 보안 프로토콜로, 서로간의 통신을 암호화하여 전송하여, 원격접속, 파일전송 등의 명령을 안전하게 진행할 수 있는 장점을 가지고 있습니다. 즉, 굉장히 안전한 클라이언트 서버 연결 방식이라고 생각하시면 됩니다. SSH 특징 안전한 통신 -SSH는 비밀번호나 공개키를 이용하..

공개키 암호화 방식 공개키로 암호화, 개인키로 복호화 개인키로 암호화, 공개키로 복호화 공개키의 기능 메세지 암호화 -발신자와 수신자가 서로 공개키, 개인키로 암호화를 하여 메세지를 보호 할 수있습니다. 전자서명 -발신자의 개인키로 암호화한 키는 공개키로 복호화를 할 수 있습니다. 개인 키는 그 사람만 가질 수 있기에, 그사람을 전자서명하는데에 쓸 수 있습니다. 키교환 -암호화에 사용할 대칭키를 교환할 때,공개키로 암호화 해서 전송합니다. 공개키 암호 알고리즘 종류 RSA 알고리즘 - 암호화/복호화, 디지털 서명, 키 교환 방식에 다 쓰이는 알고리즘입니다. - e와 n이 주어 졌을 때 d를 구하는 것이 불가능해야합니다. - 하지만 현재 RSA는 양자 컴퓨터의 발달로 보안성 위험이 생겨 PQC라는 기법이 ..

해시함수란? -어떠한 랜덤한 길이의 입력 데이터를 받아서 고정된 길이의 '해시값'이라는 고정된 길이의 문자열로 변환하는 것을 해시함수라고 합니다. 해시함수는 데이터를 요약하는 역할을 하는함수로, 같은 데이터는 항상 같은 결과를 가집니다. 해시함수의 특징 입력값 크기 자유 -해시함수의 입력값의 크기는 자유로워 어떠한 길이의 입력값을 넣어도 다 가능합니다. 출력값 크기 고정 -입력값과는 다르게 출력값은 길이가 고정되어 있습니다. 일방향 성질 -해시함수는 해시값으로 만드는건 쉽지만, 그걸되돌려서 입력값을 아는건 거의 불가능합니다. 충돌 저항성 -어떤 두개의 서로 다른 데이터가 같은 해시값을 가지는 것을 찾기 어렵습니다. 해시함수의 활용 MDC(메세지 변조감지코드) -전달된 데이터가 중간에 변조되지 않았는지 확..

대칭키(Symmetric key) - 암호화 복호화를 할때 같은 키를 사용하는 방식으로, 암호화된 데이터를 복호화 하기 위해서 같은 키가 필요합니다. 이방식은 간단하고 빠르게 처리할 수 있지만 키관리가 어렵고, 키 유출될경우 보안이 취약해질 수 있습니다. 아래 그림을 보시면 Client와 Server둘다 같은 대칭 키를 가지고 있어 암호화와 복호화가 같은 키로 이루어 집니다. 통신하는 노드가 많아지면 키를 각자가져야하기에 복잡성이 생깁니다. 대칭키 주요개념 키(Key) 암호화와 복호화에 사용되는 키입니다. 암호 알고리즘(Encryption algorithm) 입력값으로 들어온 평문을 다양한 방법으로 치환하고, 변환하여 암호화하는 알고리즘입니다. 평문(Plaintext) -암호화되기 전의 원본 데이터를 의..

포트포워딩이란? -네트워크에서 라우터에 들어오는 통신중에 특정 포트에 들어온 통신을 라우터 내부 망에 있는 특정 ip주소의 포트로 전송하는 것을 말합니다. 라우터에 특정 포트(EX.8000)로 통신이 들어왔다고 가정했을 때, 내부망 특정 IP(EX.192.168..13.2)의 특정 포트(EX.7000)쪽으로 전송합니다. 즉, WAN 네트워크에서 외부에서 내부와 통신을 하기 위해서 포트포워딩 설정을 필수적으로 해야합니다. 포트포워딩의 필요성 -외부 네트워크에서는 라우터 내부의 내부 네트워크 장치에 접근이 불가능합니다. 라우터는 공인IP로 전체 WAN네트워크에서 식별이 가능하지만, 라우터 내부 네트워크는 서로 사설IP로 설정이 되어있기때문에, 외부에서는 식별이 불가능 하기 때문에 내부네트워크로 접근이 불가능..

서브넷 마스크란? -IP주소의 네트워크 부분과 호스트 부분을 구분하는데 사용되는 비트 패턴입니다. 32비트로 구성된 IPv4주소에서 서브넷 마스크는 0과 1로 이루어진 32비트 숫자로 표현되며, 서브넷 마스크의 1비트는 네트워크부분, 0비트는 호스트 부분을 나타냅니다. 이를 사용해 ip주소를 조금더 효율적으로 나누어서 사용할 수 있으며 네트워크에서 ip주소를 좀더 효율적으로 사용할 수 있습니다. 서브넷 마스크 특징 IP주소 세분화 -서브넷 마스크를 이용해 IP주소를 네트워크 부분과 호스트 부분을 나눕니다. 이를 이용해 IP주소를 효율적으로 세분화하여 관리할 수 있습니다. 이진 비트 패턴 -서브넷 마스크는 이진 비트패턴(0,1)으로 표현되며, 1은 네트워크, 0은 호스트 부분을나타냅니다. 네트워크 크기 결..
- Total
- Today
- Yesterday
- 배포
- 문법
- 네트워크
- 컴퓨터구조
- 깃허브
- 웹소켓
- 프로토콜
- 포트포워딩
- 소프트웨어공학
- 인공지능
- 깃
- IP주소
- 컨테이너
- 자바
- 데이터
- 도커
- 자동화
- 스프링
- DB
- 파인튜닝
- 데이터베이스
- 쿼리
- 클라우드
- 보안
- JPA
- 서버
- 테이블
- nat
- sql
- 메세지큐
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |