iBetter Books
수정

★심화 선택 — 보안과 견고한 서버

두 번째 심화 선택입니다. 지금까지 우리가 만든 서버는 모두 한 가지 전제 위에 서 있었습니다. 데이터가 안전하게 오가고, 모두가 예의 바르게 행동한다는 전제입니다. 현실은 그렇지 않습니다. 통신은 도청될 수 있고, 악의를 가진 접속이 서버를 무너뜨리려 들 수 있습니다. 이 PART에서 그 현실에 맞서는 법을 배웁니다.

먼저 평문 통신이 얼마나 위험한지를 직접 확인합니다. 우리가 주고받은 메시지가 누구에게나 훤히 보인다는 사실을 마주하면, 암호화의 필요성이 절실해집니다. 그다음 그 해법인 TLS로 소켓을 감싸, 우리 통신을 도청으로부터 지킵니다. 이어서 프로덕션 수준의 견고성을 다룹니다. 우아하게 종료하고, 자원이 새지 않게 하고, 악의적 접속을 견디는 패턴들입니다. 마지막으로 이 모든 것을 모아, 암호화된 보안 채팅 서버를 완성합니다.

이 PART를 마치면 장난감 서버를 넘어, 실제 세상에 내놓아도 부끄럽지 않은 안전하고 단단한 서버를 만들 수 있게 됩니다.