DevOps BootCamp/네트워크 기초

두 번째 발표

cloudmaster 2023. 4. 7. 10:35

[C514] 다음의 헤더를 보고 유추할 수 있는 내용을 모두 작성하세요. 

.

 

1. 응답 헤더

 ● HTTP/1.1 버전을 사용하고 있으며, 상태코드는 200으로 응답 완료 상태입니다.

 

 ● 브라우저가 구동되는 웹 서버 환경은 nginx이며, 데이터는 2022년 12월 6일 화요일 4:41:09초에 만들어졌습니다

 

 ● 데이터 타입은 text / html 형식이며, 브라우저는 내가 작성한 데이터를 utf-8형식으로 변환한다는 것을 알 수 있습니다.

 

 ● 데이터 압축 방식은 chunked인 것으로 보아 대용량의 데이터를 여러 조각으로 쪼개서 보내는 것으로 보입니다.

 

 ● connection 부분에서 연결을 유지 한다는 것을 알 수 있으며, keep-alive 구문에서 연결 허용 시간은 60초인 것을 알 수 있습니다.

 

 ●  key-event-id는 클라이언트가 서버로부터의 응답을 추적하거나 중복 요청을 방지하기 위해 사용됩니다.

 

 ● x-toss-event-id : 네이버 토스(Toss) 서비스에서 사용되는 HTTP 요청 또는 응답 헤더 중 하나입니다. 네이버 토스는 대한민국의 온라인 금융 결제 서비스로, 이체, 송금, 결제 등을 처리하는데 사용됩니다. 

 

 ● vary ; 클라이언트의 요청 헤더 필드 중 어떤 필드가 응답의 캐시 키에 영향을 미치는지를 나타냅니다. 요청 헤더 필드 값이 변경되면, 해당 응답이 다른 응답과 다른 것으로 간주되어 클라이언트에게 캐시된 응답을 제공하지 않고 원 서버로부터 새로운 응답을 가져와야 함을 나타냅니다.

 

 ● x-content-type-options : 브라우저에게 서버에서 전송된 콘텐츠의 MIME 타입을 처리하는 방법을 지시하는 역할을 합니다. 보안 상의 이유로 사용되며, 브라우저의 콘텐츠 타입 스니핑(Content Type Sniffing)을 방지하는 데 도움이 됩니다.

: "nosniff" : 브라우저는 서버에서 전송된 콘텐츠의 MIME 타입을 무시하고, 해당 응답에서 명시된 MIME 타입을 사용합니다.

: "sniff" : 브라우저는 콘텐츠의 MIME 타입을 스니핑하고, 해당 응답에서 명시된 MIME 타입이 없을 경우에만 스니핑한 결과를 사용힙니다.

 

 ● 웹 페이지에서 다른 페이지로의 참조(Referrer) 정보를 어떻게 다룰 것인지를 지정하는 역할을 합니다.

 : same-origin인 것으로 보아 출처가 같은 페이지 이동에서 참조 정보를 전송하는 것을 알 수 있습니다.

 

 ● cross-origin-opener-policy :  다른 출처의 웹 페이지가 자신의 창 또는 프레임을 열 수 있는 권한을 제어의 역할을 합니다.

 : "same-origin": 동일한 출처(Same Origin)의 웹 페이지만 자신의 창이나 프레임을 열 수 있습니다.

 

 ● x-encoy-upstream-service-time : 업스트림 서비스의 처리 시간을 나타냅니다. 

 : Envoy는 오픈 소스 프록시 및 로드 밸런서이며, 대규모 분산 시스템에서 사용되며, 이 헤더를 통해 업스트림 서비스의 응답 처리 시간을 클라이언트에게 알려줍니다.

 

 ● content-encoding : 콘텐츠의 압축 방식을 의미합니다. gzip으로 압축 되어 있는 것을 보실 수 있습니다.

 

 ● x-toss-response-code-detail : TOSS 서버의 응답 상태 코드에 대한 상세 정보를 제공합니다.

 : via_upstream인 것으로 보아 사용자 정의 헤더로 확장된 것을 알 수 있습니다.  애플리케이션, 시스템 또는 프레임워크의 문서나 설정을 참고하여 확인하는 것이 가장 정확한 방법입니다.

 

 ● x-Frame-Options : 웹 페이지가 다른 웹 사이트의 프레임 안에서 로드되는 것을 방지하기 위한 HTTP 응답 헤더입니다. 웹 사이트의 클릭재킹, 크로스 사이트 스크립팅 (XSS), 포스팅된 iframe 공격 등과 같은 보안 공격을 방지하기 위해 사용됩니다. 

 : ALLOW-FROM <https://gather.town>인 것으로 보아 gather.town의 도메인의 프레임 내에서만 로드되도록 허용하는 것을 알 수 있습니다.

 

 ● Content Security Policy (CSP) :  웹 애플리케이션의 보안을 강화하기 위해 사용되는 HTTP 응답 헤더입니다. 웹 페이지에서 허용되는 리소스의 출처와 유형을 지정하여, 악의적인 스크립트 실행, XSS (Cross-Site Scripting), 데이터 유출 등의 웹 공격을 예방하는 데 도움을 줍니다.

 : "frame-ancestors" : 웹 페이지를 iframe으로 포함할 수 있는 출처를 지정하는 것입니다. 이 경우, 정책은 https://gather.town 설정되어 있으며, 이는 해당 웹 페이지가 https://gather.town 출처에서 로드된 iframe 내에서만 포함될 수 있음을 의미합니다.

 ※ iframe : HTML에서 사용되는 태그로, 다른 웹 페이지를 현재 웹 페이지 내에 포함시키는 기능을 제공합니다.

 

 

2. 요청 헤더

 ● get 요청을 하는 것을 알 수 있습니다.

 

 ● Accept : 콘텐츠 협상 헤더이며, text / html, application / xhtml+xml, application / xml 응답 형식을 선호하는 것을 알 수 있습니다.

 

 ● Accpt-encoding : 선호하는 압축 방식을 뜻하며, gzip, deflate, br을 선호하는 것을 알 수 있습니다.

 

 ● Accept-Language : 선호하는 자연 언어를 뜻하며, 1순위 한국어 , 2순위 영어 임을 알 수 있습니다.

 

 ● cache-control : max-age=0인 것으로 보아 캐시 최대 유지 시간이 0초인 것을 알 수 있고,  응답이 캐시에 저장되지 않는 것을 알 수 있습니다.

 

 ● connection : keep-alive인 것으로 보아 연결 유지 기능이 있는 것을 알 수 있습니다.

 

 ● Host : 클라이언트가 서버에 접속할 목적지의 호스트명(도메인 이름)을 지정합니다.

 :  toss.im이 목적지의 호스트명인 것을 알 수 있습니다.

 

 ● sec-fetch-dest : 요청의 대상 리소스의 목적지를 나타내는 값입니다. 브라우저가 요청을 처리할 때 요청이 어떤 형태의 리소스를 대상으로 하는지를 나타내며, 보안 및 개인 정보 보호와 관련된 정책을 적용하기 위해 사용될 수 있습니다.

 : "document"인 것으로 보아 html 문서를 나타내는 것을 알 수 있습니다.

 

 ● sec-fetch-mode : 브라우저가 요청을 처리할 때 요청의 처리 방식을 나타내며, 보안 정책을 적용하기 위해 사용될 수 있습니다.

 : "navigate"는 네비게이션 요청을 나타냅니다.

 

 ● sec-fetch-site : 요청이 발생한 출처(Origin)와 요청이 전송되는 대상 출처 사이의 관계를 나타내는 값입니다.

 : "same-origin" 동일 출처(same-origin) 요청을 나타냅니다.

 

 ● sec-fetch-user : 요청이 사용자를 식별하는 정보를 전송하는지 여부를 나타내는 값입니다.

 : "?1" 은 해당 요청이 사용자를 식별하는 정보를 전송하는 것을 나타냅니다.

 

 ● upgrade-insecure-requests  : HTTP로 요청된 웹 페이지의 자원들을 HTTPS로 업그레이드하는 것을 시도합니다.

 

 ● user-agent : 클라이언트(웹 브라우저 또는 애플리케이션)가 서버에게 자신의 소프트웨어 및 버전 정보를 전달하는 값입니다.

 : Mozila/5.0 버전인 것을 알 수 있습니다.

 

sec-ch-ua : 브라우저의 User Agent 정보를 보호하기 위한 보안 헤더인 "Sec-CH-UA"의 약어이며, 브라우저가 현재 요청에 대한 User Agent 정보를 전달할 때 사용됩니다.

 

 sec-ch-ua-mobile : User Agent 정보 중에서 모바일 기기인지 여부를 나타내는 보안 헤더입니다. 브라우저가 생성한 User Agent 정보 중에서 모바일 기기인지를 신뢰하고 사용할 수 있도록 도와줍니다.

 

sec-ch-ua-plaform : User Agent 정보 중에서 플랫폼 또는 운영 체제 정보를 나타내는 보안 헤더입니다.

 

 

[C513] 리눅스에서 ifconfig 명령의 결과를 먼저 살펴보세요. 결과 중 lo0와 en의 차이가 뭘까요? ifconfig에서 ether, inet6, inet은 무엇을 의미하나요?

 

 - "ifconfig" : 리눅스 운영 체제에서 네트워크 인터페이스의 구성 및 상태를 확인하는 명령어입니다.

 

 - "lo" :  "loopback"의 약어로, 시스템 내부에서의 루프백(Loopback) 통신을 위한 가상의 네트워크 인터페이스입니다.

이 인터페이스를 통해 시스템 내부에서만 통신이 가능하며, 주로 로컬 호스트에서의 네트워크 서비스에 사용됩니다.

 

- "en" 또는 "eth" : 이더넷(Ethernet) 인터페이스를 나타내는 접두사로, 네트워크 카드(Network Card)를 통해 외부 네트워크와의 통신을 담당하는 실제 네트워크 인터페이스입니다. "en" 또는 "eth" 뒤에 숫자가 붙는 경우, 여러 개의 이더넷 인터페이스가 있는 경우를 나타냅니다.

 

 - "ether" :  이더넷(Ethernet) 인터페이스의 물리적(MAC) 주소를 나타냅니다. 

 -  "inet6" :  IPv6 주소를 나타냅니다. 

 -  "inet" :  IPv4 주소를 나타냅니다.

 

'DevOps BootCamp > 네트워크 기초' 카테고리의 다른 글

로드밸런서(Load Balancer)  (0) 2023.04.07
프록시  (0) 2023.04.07
첫 번째 발표  (0) 2023.04.06
Physical Layer - 네트워크 액세스 계층  (0) 2023.04.06
Data Link Layer - 데이터 링크 레이어  (0) 2023.04.06