메타코딩 유튜브를 참고하여 정리한 내용입니다.
devOps
: 소프트웨어의 개발과 운영의 합성어로서, 소프트웨어 개발자와 정보기술 전문가 간의 소통, 협업 및 통합을 강조하는 개발 환경이나 문화를 말한다.
✔️ 학습 목표(AWS)
CI/CD
사용자의 요구에 따라 필요한 인프라 구축될 경우
사용자가 많아질수록 서버가 증가, 적어지면 서버가 감소
➡️ 온디맨드(demand : 요구)
✔️ 전산실 구축시 고려사항
1. 토지 - Premise, on Premise, off Premise(원격, 클라우드 시스템)
2. 건물
3. 하드웨어 장비 - 서버, 침입 방지, 차단 시스템, 로드밸런서, 각종 네트워크 장비
4. 에어컨 - 온도 유지, 서버 : 데몬 (열 : 반도체)
5. 전기
6. 복잡한 케이블 정리
7. 소방 시설 - 이중화
8. 전산실 보안 - 인건비
➡️ 추가적인 비용이 많이 든다.
제프 베이조스
세일 기간 = 블랙프라이데이
개인이 세일 기간에 올라온 서비스를 임대해서 사용할 수 있다.
개인(Iaas)입장에서는 off premise (빌려쓰게 된다.) ➡️ 전세계에 서비스 하며 빌려서 쓰는 것을 AWS
IP, Packet, Port
(1) 서킷 스위칭 : 선이 늘어나야 한다.
(2) 패킷 스위칭 : 비용이 적게 든다.
✔️ IPv4 방식
IPv4 : 0.0.0.0 (255.255.255.255)
IPv홀수 : 테스트 용
IP 주소 : 10.1.5.7
데이터 : 안녕
➡️ 10.1.5.7:port번호?안녕
✔️ A → 라우터 → B로 데이터를 보낼 때
패킷 → 헤더(데이터 설명) → 포트번호와 IP주소
➡️ 데이터를 패킷으로 분할해서 데이터가 목적지까지 도착하는 것이다.
EC2 서버 : 빈 컴퓨터(인프라)를 제공(임대)받는다.
✔️ OS 제어
SHELL
: 사람이 OS에게 내리는 명령
📌 정리
- 서울 리전 컴퓨터 한 대를 임대 → 운영체제를 하나 선택해서 설치한 것이다. → 그 컴퓨터에 원격으로 접속하기 위해 22번 port를 인바운드 규칙에서 개방한 것이다. → 개방해서 OS, Shell 써서 원격으로 접속한다.
- 원격으로 접속은 됬지만, 원격으로 보내는 명령어가 다른 사람에게 노출되지 않기 위해,
Secure Shell
을 사용한다.- 암호화가 되어 명령어가 전송 된다.
✔️ 비밀번호 암호화 방식
✔️ RSA는 어떻게 만들어질까?
공개 키 기반 암호화 방식, key 두개를 만든다.
➡️ 위와 관련된 대표적인 알고리즘 : RSA
데이터 암호화 : 상대방의 공개키로 잠근다.
데이터 전송 방법 | 데이터 받는 방법 |
---|---|
데이터를 수신자의 공개키로 잡는다.(암호화) | 데이터를 송신자의 공개키로 연다.(서명 검증) |
그 데이터를 다시 송신자의 비밀키로 잠근다.(전자서명) | 열리면, 수신자의 개인키로 연다.(데이터 복호화) |
전송한다. |
대칭키 : A <-> B (키 전송에 문제가 있다.)
공개키 : A(공개키, 비밀키) <-> B(공개키, 비밀키) : 키 교환이 필요 없다.
✔️ ssh로 접속
.ssh
폴더로 접근한다.