네트워크 기초 · HTTP 와 TLS · 퀴즈
퀴즈: HTTP 와 TLS
문항 7개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.
HTTP/2 가 해결한 문제와 남긴 문제를 옳게 설명한 것은?
- 응용 계층의 줄서기를 없앴지만 TCP 한 연결 위에 있어 패킷 손실 시 모든 스트림이 함께 멈춘다
- TCP 를 UDP 로 바꿔 손실 문제를 완전히 없앴다
- 헤더 압축만 추가했을 뿐 다중화는 없다
- 연결마다 요청 하나만 처리한다
타임아웃이 난 요청을 자동 재시도할 때 가장 위험한 메서드는?
- GET — 목록이나 상세를 조회한다
- PUT — 지정한 자원을 통째로 교체한다
- POST — 새 자원을 만들거나 처리를 요청한다
- DELETE — 지정한 자원을 삭제한다
502, 503, 504 의 차이를 옳게 짝지은 것은?
- 502 는 백엔드가 잘못된 응답, 503 은 서비스가 감당 불가를 선언, 504 는 게이트웨이의 백엔드 대기 타임아웃
- 셋 다 같은 의미이며 구현체마다 다르게 쓴다
- 502 는 타임아웃, 503 은 인증 실패, 504 는 라우팅 실패
- 502 는 클라이언트 오류, 503 과 504 는 서버 오류
브라우저에서는 자물쇠가 정상인데 curl 에서만 인증서 오류가 난다. 가장 정확한 진단은?
- curl 의 CA 번들이 오래되었다
- curl 이 TLS 1.3 을 지원하지 않는다
- 서버가 중간 인증서를 함께 보내지 않았고, 브라우저는 AIA 로 그것을 메워 주고 있다
- 서버 인증서가 만료되었다
openssl s_client 로 서버를 점검할 때 -servername 을 반드시 붙여야 하는 이유는?
- 붙이지 않으면 TCP 연결 자체가 실패하기 때문
- TLS 1.3 에서는 규격상 반드시 붙여야 하는 옵션이기 때문
- 이 옵션이 있어야 인증서 체인 전체가 출력되기 때문
- SNI 가 전송되지 않으면 서버가 기본 가상 호스트의 다른 인증서를 내밀 수 있기 때문
hostname mismatch 오류를 조사할 때 확인해야 할 인증서 필드는?
- Common Name (CN)
- subjectAltName (SAN)
- Serial Number
- Key Usage
alpine 이나 scratch 기반 컨테이너에서 x509: certificate signed by unknown authority 가 나올 때의 원인은?
- 이미지 안에 신뢰할 루트 인증서 묶음이 아예 없다
- 서버 인증서가 자체 서명되어 있다
- 컨테이너의 시계가 틀렸다
- TLS 버전이 맞지 않는다