Study 185

[Network]DNS(Domain name System)

DNS Domain Name System 도메인 이름 시스템 사람이 읽을 수 있는 도메인 이름(www.test.com)을 머신이 읽을 수 있는 IP 주소(192.168.0.74)로 변환한다. DNS 서비스는 전 세계에 배포된 서비스로서, www.example.com과 과 같이 사람이 읽을 수 있는 이름을 192.0.2.1과 같은 IP 주소로 변환하여 컴퓨터가 서로 통신할 수 있도록 한다. 인터넷의 DNS 시스템은 이름과 숫자 간의 매핑을 관리하여 마치 전화번호부와 같은 기능을 한다. DNS 서버는 이름을 IP 주소로 변환하여 도메인 이름을 웹 브라우저에 입력할 때 최종 사용자를 어떤 서버에 연결할 것인지를 제어한다. 이 요청을 쿼리라고 한다. hosts 파일 전에는 전화번호부처럼 IP 주소를 각자의 컴퓨..

Study/Network 2023.06.14

[Network]HAProxy

HAProxy(High Availbility Proxy) 하드웨어 기반의 L4/L7 스위치를 대체하기 위한 오픈소스 소프트웨어 솔루션 TCP 및 HTTP 기반 애플리케이션을 위한 고가용성, 로드 밸런싱 및 프록시 기능을 제공하는 매우 빠르고 안정적인 무료 Reverse 프록시 *Reverse 프록시: 서버로 들어오는 요청을 대신 받아서 서버에 전달하고 요청한 곳에 그 결과를 다시 전달해주는 역할을 함 포워드 프록시와는 반대로 클라이언트와 인터넷, 서버가 있을 때 인터넷과 서버 사이에 프록시가 위치한다. -> 클라이언트가 서버에게서 받은 응답이 정확히 어떤 서버로부터 받은건지 알 수 없는 형태의 프록시 반면 포워드 프록시는 클라이언트와 인터넷 사이에 프록시 서버가 위치한다. -> 서버로 하여금 클라이언트로..

Study/Network 2023.06.11

[Network]Load Balancing(로드밸런싱)

로드 밸런싱 애플리케이션을 지원하는 리소스 풀 전체에 네트워크 트래픽을 균등하게 배포하는 방법 네트워크 또는 서버에 가해지는 부하(로드)를 분산(밸런싱)해주는 기술 *로드 밸런서: 사용자와 서버 그룹 사이에 위치하며 보이지 않는 촉진자 역할을 하여 모든 리소스 서버가 동일하게 사용되도록 하는 디바이스 로드 밸런서는 클라이언트와 네트워크 트래픽이 집중되는 서버들 또는 네트워크 허브 사이에 위치 알고리즘 정적 로드 밸런싱 고정된 규칙을 따르며 현재 서버 상태와 무관 라운드 로빈 방식 이름 서버는 서버 팜에 있는 여러 서버의 IP 주소를 차례대로 또는 라운드 로빈 방식으로 반환한다. 가중 기반 라운드 로빈 방식 우선순위 또는 용량에 따라 각 서버에 서로 다른 가중치를 할당할 수 있다. 가중치가 높은 서버는 이..

Study/Network 2023.06.10

NFS 서버

Network File System 네트워크 상에 연결된 다른 컴퓨터의 하드 디스크를 내 컴퓨터의 하드처럼 사용하는 것 네트워크에 연결된 리눅스끼리 NFS를 통해 파일 공유 가능 공유저장소로 동작 서버와 클라이언트는 IP로 연결되어야 함 AWS에서는 동일 기능은 EFS로 제공 서버가 네트워크상의 클라이언트에게 하나 이상의 디렉토리를 공유한다. 클라이언트는 공유된 디렉토리를 자체 시스템에 마운트하고 로컬인 것처럼 해당 디렉토리 내의 파일에 접근할 수 있다. 구축 과정 1. 서버/클라이언트에서 nfs-utils 설치 yum -y install nfs-utils 2. 방화벽, selinux 해제 systemctl stop firewalld setenforce 0 본 실습에서는 편의를 위해 모두 종료하였으나 보..

Study 2023.06.08

SSH 인증 과정(Authentication Process)

서버 인증 사용자가 서버를 인증하는 단계 클라이언트가 서버에 처음 접속 시도 시 연결을 진행할지 여부를 물어봄 yes를 선택 시 서버의 /etc/ssh에 있는 공개키 값을 클라이언트의 .ssh/known_hosts에 추가 클라이언트에서 난수값을 생성 > 해시값으로 변환 > 클라이언트에 저장 > 공개키로 해시값 암호화 > 서버에 전송 암호화된 해시값을 전달받은 서버는 비밀키로 복호화 > 클라이언트로 다시 전송 클라이언트는 저장해 두었던 해시값과 서버로부터 받은 해시값을 비교하여 서버를 인증 서버 인증을 위해 서버에서 key-pair를 만들고 이를 사용하여 사용자가 서버를 인증 사용자 인증 서버가 사용자를 인증하는 단계 비대칭키를 생성 (ssh-keygen 명령어 활용) 비밀키: 클라이언트 소유(.ssh/i..

Study 2023.05.29

[Network]NAT(Network Address Translation)

NAT(Network Address Translation) 1개의 실제 공인 IP 주소에, 다량의 가상 사설 IP 주소를 할당 및 매핑하는 주소 변환 방식 IP패킷에 있는 출발지 및 목적지의 IP 주소와 TCP/UCP 포트 숫자 등을 바꿔 재기록하면서 네트워크 트래픽을 주고 받게 하는 기술 Private Network(사설망) 인터넷 어드레싱 아키텍처에서 사설 IP 주소 공간을 이용하는 네트워크 가정, 사무실, 기업 랜에서 쓰인다. IPv4 중 특정 대역을 공인 인터넷이 아닌 한정된 공간에서 사용하는 네트워크를 의미 10.0.0.0 ~ 10.255.255.255 172.16.0.0. ~ 172.31.255.255 192.168.0.0 ~ 192.168.255.255 이러한 IP 대역은 사설 IP 대역으로..

Study/Network 2023.05.26

[Network]ACL(Access Control List)

Access Control List 라우터 등의 장비에서 '패킷 필터링', '패킷 분류'를 결정짓는 일련의 규칙(Rules) 목록 번호나 이름으로 정책을 생성하고 생성된 정책을 이용하여 트래픽을 분류, 필터링 할 수 있는 기술 일반적으로 L3, L4를 담당 AWS에서는 subnet과 subnet 사이에서 네트워크 트래픽을 필터링 사용 목적 트래픽 제어 보안 - router, firewall 패킷 식별 기본 규칙 1. Top-Down 방식이므로 순서가 매우 중요하다. 예) 외부에서 유입되는 트래픽을 1.1.1.1이 유해 트래픽을 보내고 있다. 이를 차단하고 나머지 모든 IP의 접근을 허용한다. access-list deny host 1.1.1.1 access-list permit any 2. 각 ACL의 ..

Study/Network 2023.05.25

[Network]Static Route

Routing(라우팅) 패킷의 전송 경로를 지정하는 네트워크 계층의 가장 중요한 역할 들어온 패킷을 어느 출력 경로를 통해 다음 호스트로 전달해야 가장 효과적일지 결정하는 것 2가지 종류로 나눌 수 있다. 1. Static (정적 경로): 특정 목적지 네트워크로 가는 경로를 관리자가 직접 지정하는 방법 - 수동 2. Dynamic (동적 경로): 라우터에서 사용하는 경로 정보를 네트워크 상황에 맞춰 적절하게 설정하는 방법 - 자동 Routing Table(라우팅 테이블) 패킷의 전송 과정에서 라우터들이 패킷의 적절한 경로를 쉽게 찾도록 하기 위한 가장 기본적인 도구 예) ip route 192.168.74.0 255.255.255.0 192.168.0.85 목적지가 192.168.74.0인 IP는 192..

Study/Network 2023.05.22

2023 정보처리기사 필기 합격 후기

정보처리기사 필기 시험 독학 후기를 적어보려 한다. 우선, 전공자(정보보호학전공)이면서 4학년이기에 기초지식은 가지고 있다. 그러나 이론적인 내용 암기에 약해서 공부하면서 새로 배우는 것도 꽤 되었고 JAVA는 공부해 본 적이 없었다. 물론 C언어와 python은 경험이 있어서 대략 때려맞추면서 JAVA 공부함... 일단 시험접수 기간에 신청을 할 수 없었기에 빈자리접수 기간을 노려서 신청하였다. 집 주변으로 구하려고 했으나 빠르게 마감되면서 서울까지 가게 되었다. 그나마 가까운 서울지역으로 재빠르게 신청 그렇게 해서 필기 공부를 시작하게 되었다. 필기시험의 경우 총 100문항으로 구성되어 있으며 5과목으로 이루어진다. 1과목 당 20문제이며, 각 과목 40점 이상이 나와야 하고 평균 60점이 넘어야 합..

Study 2023.03.17

[Docker]Docker 사용하기 2 (공유)

저번 게시글에 이어 Docker에 대해 좀 더 살펴보겠습니다. [Docker]Docker 사용하기 Docker 이미지 가져오기 해당 명령어를 통해 docker hub에서 centos를 찾는다. $ docker search centos 컨테이너 이미지를 pull하여 가져오자. $ docker pull docker images 명령어를 통해 컨테이너 이미지들을 확인 pul seomj74.tistory.com 이렇게 만들어진 docker 이미지를 공유해서 사용하게 된다. Dockerfile을 사용하기도, docker-compose를 사용하기도 한다. Dockerfile 컨테이너 이미지에 대한 정보를 기술하고 docker build 명령어로 컨테이너 이미지를 설계서에 기술된 대로 조립 Dockerfile 생성 ..

Study/Docker 2023.02.11