2025/03 54

[따배셸] 4. Bash Shell Script

이성미 님의 "[따배셸] 셸 프로그래밍 시리즈" 강의를 정리한 글입니다. 1. Shell ScriptLinux command들을 모아놓은 ASCII Text 파일스크립트 파일을 위에서 아래로 읽음 개념설명예시실행 퍼미션실행 권한을 부여해야 실행 가능chmod +x script.sh셔뱅(Shebang)스크립트를 실행할 서브 쉘 지정 (#!)#!/bin/bash (Bash 사용)서브 쉘 (Sub Shell)로그인 쉘이 아닌 특정 쉘에서 실행됨#!/bin/zsh (Zsh 사용)실행 (./)스크립트 파일을 쉘에서 실행하는 명령./script.sh    출처따배셸 - 셸 프로그래밍 시리즈

OS 2025.03.31

[따배셸] 3. Bash Shell과 Rules

이성미 님의 "[따배셸] 셸 프로그래밍 시리즈" 강의를 정리한 글입니다. 1. Quoting RuleMetacharactersShell에서 특별히 의미를 정해놓은 문자들 메타 문자설명예시*모든 문자에 해당 (와일드카드로 사용 가능)*.txt → 모든 .txt 파일?임의의 단일 문자에 해당file?.txt → file1.txt, fileA.txt{a..b}a부터 b까지의 문자 집합 정의{a..c} → a, b, c[]대괄호 안의 문자 중 하나와 일치file[123].txt → file1.txt, file2.txt, file3.txt!명령어 내에서 논리 부정 (이 명령어가 쓰인 위치에서 사용)!file → file이 아닌 모든 파일|파이프(pipe)명령어의 출력을 다른 명령어의 입력으로 전달cat /etc/..

OS 2025.03.31

[따배셸] 2. Bash Shell과 변수

이성미 님의 "[따배셸] 셸 프로그래밍 시리즈" 강의를 정리한 글입니다.1. Shell 변수명령어작업설명예제변수 선언변수에 값을 할당하여 선언별도의 타입 지정 없이 값 저장name=noahname = noah (blank X)변수 확인변수 이름 앞에 $를 붙여 사용echo $name변수 제거unset 명령어로 변수를 제거할 수 있음unset name 2. Shell 환경 변수프로세스에게 영향을 주는 변수 명령어작업설명예제변수 선언환경 변수를 설정하려면 export 명령어를 사용합니다. 이 명령어는 변수를 현재 셸뿐만 아니라 자식 프로세스에도 적용할 수 있도록 만듭니다.export VAR_NAME="value"변수 확인 시스템의 환경 변수를 확인하려면 env 명령어를 사용합니다. 이 명령어는 현재 환경 변..

OS 2025.03.31

[따배셸] 1. Linux Shell 이란?

이성미 님의 "[따배셸] 셸 프로그래밍 시리즈" 강의를 정리한 글입니다. 1. ShellOS Kernel과 사용자간의 인터페이스 역할을 하는 프로그램사용자의 명령어를 입력받고 처리하는 명령어 해석기 종류종류설명특징 및 기능개발자Bourne Shell (sh)원본 쉘- AT&T 벨 연구소에서 만든 최초의 유닉스 쉘기본적인 쉘스크립트 작성에 사용시스템 명령어 인터프리터 역할스티븐 본C Shell (csh)C 언어 문법 적용- C 언어와 유사한 문법을 가진 쉘history, aliases, job control, vi빌 조이Korn Shell (ksh)Bourne Shell + C Shell 기능- Bourne 쉘과 C 쉘의 장점 합친 쉘함수스크립트 편집배열 처리데이비드 콘Bash (Bourne-Again S..

OS 2025.03.31

[러닝 HTTP/2] 5. HTTP/2 프로토콜

스티븐 루딘, 하비에르 가르사 님의 "러닝 HTTP/2" 책을 정리한 글입니다. 1. HTTP/2의 계층프레이밍 계층HTTP 프로토콜을 효율적으로 주고받기 위한 기능을 수행특징설명바이너리 프로토콜 사용HTTP/2는 텍스트 기반이 아닌 바이너리 프로토콜을 사용하여 효율적 전송헤더 압축반복적인 헤더 데이터를 압축하여 네트워크 효율성을 높임암호화데이터를 암호화하여 보안성을 강화 (기본적으로 HTTPS 사용)다중화하나의 연결을 통해 여러 요청과 응답을 동시에 처리하여 성능 향상 데이터 계층HTTP1.1 과의 호환성 유지실제 데이터 전송 2. 연결h2에서 모든 프레임과 스트림은 하나의 연결을 통해 전송됨 매커니즘 클라이언트가 연결을 시작새 연결 열기 or HTTP/1.1에서 Upgrader: h2cHTTP1.1에..

Network 2025.03.30

[러닝 HTTP/2] 4. HTTP/2로의 전환

스티븐 루딘, 하비에르 가르사 님의 "러닝 HTTP/2" 책을 정리한 글입니다. HTTP/2로의 전환을 위해 고려해야 할 항목들1. 브라우저 지원대부분의 브라우저가 지원지원하지 않는 브라우저에서는 프로토콜 협상 절차가 무시되어 h1으로 되돌아와 인프라에 접속할 것 2. TLS로의 전환 대부분의 브라우저가 TLS로만 h2에 접속 가능함TLS 버전은 적어도 1.2 이상이여야 함 (RFC 7540의 9.2절 참고) 고려사항항목설명웹 서버 파악하기웹 서버의 인증서를 확보하고, 보안 설정을 점검함.인증서 확보CSR(인증서 서명 요청)을 생성하고, 도메인 소유권을 검증한 후, 인증기관에서 인증서를 구매함.개인키 보호하기개인키 저장 위치를 결정하고, 접근 권한을 제한하여 보호함.서버 부하 대비하기TLS 핸드셰이크를 ..

Network 2025.03.30

[러닝 HTTP/2] 3. 웹을 파헤치는 이유와 방법

스티븐 루딘, 하비에르 가르사 님의 "러닝 HTTP/2" 책을 정리한 글입니다.1. 오늘날의 성능 문제페이지 내 수 백개의 개체, 수천 개의 도메인, 변동이 심한 네트워크, 광범위한 디바이스 기능이 존재하는 환경일관되고 빠른 웹 경험을 만들어 내는것은 쉬운 일이 아님사용자와의 상호작용을 원활하게 하기 위해 웹 페이지 렌더링 단계마다 내재된 문제를 이해하는것이 필요함 웹 페이지의 요청 과정브라우저에서 링크를 클릭해서 웹 페이지가 표시될 때까지 일어나는 일을 이해하는 것이 중요브라우저는 웹 페이지에 필요한 모든 정보를 반복적으로 요청하는 방식으로 일함 fetching단계설명1️⃣ Fetch Queue 추가가져올 URL을 fetch queue에 push2️⃣ DNS 조회호스트 이름(IP 주소) 조회3️⃣ TC..

Network 2025.03.30

[IBM Technology] What are DNS Zones And Records?

Terry Bernstein 님의 "What are DNS Zones And Records?" 강의를 정리한 글입니다. 1. DNS ZoneDNS 네임스페이스의 일부를 관리하는 영역해당 영역에 대한 DNS 레코드들을 포함네임서버(NS) 레코드를 이용해 하위 영역(서브존)으로 위임 가능 2. DNS Record특정 도메인에 대한 정보를 담은 레코드 (Resource Record Set) 구조[name] [class] [type] [value] www IN A 9.9.9.9 항목설명예시이름(Name)도메인 이름 또는 서브도메인www, subzone, mail클래스(Class)레코드 클래스 종류보통 IN(Internet) 사용IN타입(Type)레코드 종류A, NS, CNAM..

Network 2025.03.29

[IBM Technology] What is DNS?

Pooja Devarajan님의 "What is DNS" 강의를 정리한 글입니다. 1. 소개Domain Name System도메인 이름을 ip 주소로 변환하는 시스템 2. Domain과 IP 주소의 차이점Domain vs IP구분도메인 (Domain)IP 주소 (IP Address)정의사람이 이해하기 쉬운 웹 주소네트워크에서 사용되는 숫자로 된 주소예시example.com192.168.0.1목적사용자가 쉽게 기억하고 입력할 수 있도록 함장치 간 통신을 위해 고유하게 식별형식알파벳, 숫자, .(점) 포함 가능IPv4: 숫자로 이루어진 4개 블록 (A.B.C.D)IPv6: 16진수로 이루어진 8개 블록 (ABCD:EF01:2345:6789::1)사용 방식사용자가 웹사이트에 접속할 때 입력네트워크 장치(서버,..

Network 2025.03.29

[러닝 HTTP/2] 2. HTTP/2 맛보기

스티븐 루딘, 하비에르 가르사 님의 "러닝 HTTP/2" 책을 정리한 글입니다. 1. 서버 구동하기2. 인증서 발급받기 온라인 생성기자세 서명된 인증서. 시험용sslchecker 자체 인증서 생성자세 서명된 인증서. 시험용openssl 인증 기관을 통한 인증서 발급Let's EncryptTLS Everywhere 운동모든 웹 통신은 암호화되고 인증되어야 함무료로 취득하기 쉽고 자동화된 방식 TLS 인증서를 사용할 수 있게 하려는 목적 certbot 클라이언트 라이브러리발급 및 관리 절차를 자동화하여 처리 가능 예제 (Mac OS)brew install certbot 3. 첫 번째 HTTP/2 서버 구동하기 4. 브라우저 선택하기

Network 2025.03.29