전체 글 5

HTTP란?: 1. 하이퍼텍스트(Hypertext)란?

Intro 바야흐르 WWW(World Wide Web)의 시대다. 사실 꽤 됐다. CERN에서 WWW를 제안하면서 통신 프로토콜이 필요해졌다. 그래서 탄생한 게 HTTP(HyperText Transfer Protocol).이게 1990년대 이야기니. 역시 과학자를 괴롭히면 뭔가 나오는 건 만고불변의 진리인 듯 하다. 하이퍼텍스트(Hypertext)란? HyperText Transfer Protocol. 이름만 보았을 때 사실 Transfer Protocol 말고는 뭔지 이해하긴 어렵다. 일단 뭔가 옮기는 규약이긴 하다. 그럼 하이퍼텍스트란 뭘까? 직관적으로만 받아들인다면, 하이퍼한 텍스트다(...). 좀 더 풀어서 생각해 볼까? 하이퍼가 붙는 말들은 대부분 기존의 무언가를 뛰어넘은(또는 망라한 채 확장된..

Cafe24(카페24) 스푸핑 필터(SPF) 걸기

* 현재 카페24를 통해서 웹메일 호스팅을 진행중.* 도메인 호스팅 업체는 가비아를 사용 중.Intro 카페24에서의 스팸 정책이 생각보다 약한 것 같다. telnet을 통한 간단한 sender의 위·변조에도 아무런 걸림 없이 받은메일함으로 직송되더라. 너무나도 간단한 방법이지만, 일단 기록차 남겨둔다. 기본 SPF 설정스푸핑 설정을 했다면, DNS TXT 레코드에 아래와 같은 설정이 보일지도 모른다.v=spf1 include:spf.cafe24.com ~all 이게 뭔가 하면, SPF(Sender Policy Framework)라는 인증 방식인데, 마지막에 붙은 ~all 이게 핵심이다. 이 물결표는 softfail이라는 뜻인데, 의미를 좀 풀자면 이렇다:“음... 너는 허가받은 IP는 아닌데, 일단은 ..

2. 러스트 서버, 서비스, 앱 만들기: Trait 이해하기

Intro러스트에서의 트레이트(Trait)를 공부해보자. 조사를 먼저 해 봤다. 러스트 공식 문서에서나 다른 검색결과에서나 러스트의 트레이트는 다음과 닽이 정의됐다. 정의 트레이트(trait)는 특정한 타입이 가지고 있으면서 다른 타입과 공유할 수 있는 기능을 정의합니다. 트레이틀르 사용하면 공통된 기능을 추상적으로 정의할 수 있습니다. 트레이트 바운드(trait bound)를 이용하면 어떤 제네릭 타입 자리에 특정한 동작을 갖춘 타입이 올 수 있음을 명시할 수 있습니다.Note: 약간의 차이는 있으나, 트레이트는 다른 언어에서 흔이 인터페이스(interface)라고 부르는 기능과 유사합니다. 설명만 보면, 파이썬(python)의 클래스 상속과 비슷해 보인다. 비단 파이썬 뿐만 아니라, OOP(Obje..

1. 러스트 서버, 서비스, 앱 만들기 따라하기

Intro 이 시리즈는 jpub에서 출간한, 프라부 에스왈라가 지은 러스트 서버, 서비스, 앱 만들기 를 공부하는 시리즈이다. 총 3개의 파트와 12개의 챕터로 이루어져 있고, 오로지 러스트만 사용해서 앱 서비스를 구축하는 것을 목표로 한다.러스트라는 프로그래밍 언어에 대해 묘한 호감을 갖고 있던 나는, 마침 메일서버도 만들고 싶고, OS도 만들어 보고 싶고 해서, 공부를 할 겸 냅다 서비스를 하나 만들어 보기로 했다. 서비스를 구축할 내 서버는 집구석 책상 아래에서 24시간 돌아가고 있는 라즈베리파이 4 8gb이다. 책을 따라하면서 이해가 안 되는 부분 위주로 글을 써 볼 생각이다. 그럼... 다음 글을 써보자.

1. SMTP (Simple Mail Transfer Protocol) 원리 이해 / Telnet SMTP 테스트 메일 전송

Intro개인 공부 차원에서 SMTP 메일서버를 하나 제작해보려고 한다. 보안이 적용되지 않는 심플한 메일서버는 원리 이해와 Telnet을 사용하면 즉시 구현이 가능하므로, 여기서는 SMTP를 이용한 웹메일 서비스 및 POP3, IMAP을 지원하는 메일서버를 만들어 보려고 한다. 언어: Python(3.x) 또는 Rust SMTP란? 이미 넷상에서 많이 찾아볼 수 있는 개념이지만, 공부를 위해 스스로 정리해 보자면, Simple Mail Transfer Protocol이다. Protocol이라는 개념에서 볼 수 있다시피, 메일 전송을 위한 일종의 규약이다. Simple이기에, 단순한 텍스트 기반 프로토콜이므로, 만일 비디오나 오디오 등의 파일 전송 등의 프로토콜은 ESMTP(Extended SMTP)라는..