- 웹은 HTTP(80) 로 동작하고 암호화된 것이 HTTPS(443) 다.
- 리눅스 웹 서버는 Apache와 Nginx가 대표다.
- 메일 프로토콜은 셋이다 — 보낼 때 SMTP(25), 받을 때 POP3(110) 또는 IMAP(143).
- 메일 서버끼리 주고받는 것도 SMTP 다. 이 점을 묻는 문제가 있다.
- POP3는 내려받아 지우고, IMAP은 서버에 남긴다. 여러 기기를 쓰면 IMAP이다.
기준: 리눅스마스터 2급 출제 기준오류 제보
| 항목 | 내용 |
|---|---|
| WWW | World Wide Web. 1989년 팀 버너스리(CERN)가 고안 |
| HTTP | HyperText Transfer Protocol. 80번 포트 |
| HTTPS | HTTP + 암호화(SSL/TLS). 443번 포트 |
| HTML | 문서를 기술하는 언어 |
| URL | 자원의 위치를 나타내는 주소 |
https :// www.example.com : 443 /docs/index.html
│ │ │ │
│ │ │ └── 경로
│ │ └─────────── 포트 (생략하면 기본값)
│ └───────────────────────── 호스트 이름
└────────────────────────────────────── 프로토콜(스킴)http://는 80, https://는 443이다. 그래서 https://www.example.com:443/ 과 https://www.example.com/ 은 같은 주소다.http://192.168.0.10:8080/.http만 오는 것이 아니다. ftp://, mailto: 처럼 어떤 방법으로 접근할지를 적는 자리다.HTTP는 브라우저가 요청하고 서버가 응답하는 단순한 구조다. 요청 한 번에 응답 한 번이다.
[요청] GET /docs/index.html HTTP/1.1
Host: www.example.com
[응답] HTTP/1.1 200 OK
Content-Type: text/html
<html> … </html>| 요청 방식(메서드) | 하는 일 |
|---|---|
| GET | 자원을 가져온다. 주소창에 URL을 치는 것이 이것 |
| POST | 데이터를 보낸다. 로그인·글쓰기 양식 제출 |
| HEAD | 본문 없이 머리말만 받는다 |
| PUT / DELETE | 자원을 올린다 / 지운다 |
| 상태 코드 | 뜻 | 대표 |
|---|---|---|
| 2xx | 성공 | 200 OK |
| 3xx | 다른 주소로 이동 | 301, 302 |
| 4xx | 요청한 쪽(클라이언트) 의 잘못 | 403 접근 금지, 404 찾을 수 없음 |
| 5xx | 서버 쪽의 오류 | 500 내부 서버 오류, 503 서비스 이용 불가 |
| 구분 | 이름 |
|---|---|
| 웹 서버 | Apache(가장 오래된 표준), Nginx(가볍고 빠름), lighttpd |
| 그래픽 브라우저 | Firefox, Chrome, Konqueror(KDE) |
| 텍스트 브라우저 | Lynx, w3m, links |
wget 이나 curl 을 쓴다.wget http://www.example.com/file.tar.gz # 현재 디렉터리에 file.tar.gz 로 저장
wget -c http://www.example.com/file.tar.gz # 끊긴 내려받기를 이어서
curl http://www.example.com/ # 받은 내용을 화면(표준 출력)에 뿌린다
curl -O http://www.example.com/file.tar.gz # 원래 파일 이름으로 저장wget은 기본이 "파일로 저장", curl은 기본이 "화면에 출력" 이다. curl로 저장하려면 -O(대문자) 또는 -o 파일이름을 준다.httpd 다(데비안 계열에서는 apache2). 제품 이름과 프로세스 이름이 달라 ps로 찾을 때 헷갈린다."웹 브라우저가 아닌 것"을 고르는 문항은 프로그램 이름의 분류를 묻는다. 지난주 X 윈도에서 본 응용 프로그램과 섞여 나온다.
| 이름 | 무엇 |
|---|---|
| Firefox · Chrome · Chromium · Opera | 그래픽 웹 브라우저 |
| Konqueror | KDE의 웹 브라우저 겸 파일 관리자 |
| Epiphany | GNOME의 웹 브라우저 |
| Lynx · w3m · links | 텍스트 웹 브라우저 |
| Thunderbird · Evolution | 웹 브라우저가 아니라 메일 프로그램 |
| Apache · Nginx | 브라우저가 아니라 웹 서버 |
[보내는 사람] [받는 사람]
메일 프로그램 메일 프로그램
│ ▲
│ SMTP POP3 / IMAP
▼ │
보내는 메일 서버 ──── SMTP ────► 받는 메일 서버 ──────┘
(서버 간 전달도 SMTP)| 프로토콜 | 포트 | 하는 일 |
|---|---|---|
| SMTP | 25 | 메일을 보낸다. 서버 간 전달도 담당 |
| POP3 | 110 | 메일을 내려받는다 |
| IMAP | 143 | 메일을 서버에 두고 본다 |
"메일 서버 사이에서 메일을 교환하는 프로토콜은?" → SMTP 다. 받는 것은 POP3·IMAP이지만, 서버끼리 주고받는 것은 SMTP 라는 점이 핵심이다.
alice@example.com이 bob@example.org에게 메일을 보내는 과정이다.
1 alice 의 메일 프로그램이 example.com 메일 서버에 넘긴다 SMTP
2 example.com 서버가 "example.org 의 메일 서버가 어디냐"를 DNS 에 묻는다
3 알아낸 example.org 메일 서버로 전달한다 SMTP
4 example.org 서버가 bob 의 사서함에 넣어 둔다
5 bob 이 메일 프로그램을 열어 사서함의 메일을 가져온다 POP3 또는 IMAP사용자@도메인 이다. @ 뒤의 도메인이 어느 서버로 보낼지를, 앞의 이름이 그 서버의 누구 사서함인지를 정한다.| 문장에 이런 말이 나오면 | 답 |
|---|---|
| 메일을 보낸다, 발송, 서버 간 전송·교환 | SMTP |
| 메일을 가져온다, 내려받은 뒤 서버에서 삭제 | POP3 |
| 서버에 보관한 채 읽는다, 여러 기기, 폴더 동기화 | IMAP |
| 첨부 파일, 한글, 이미지를 메일에 담는다 | MIME |
| 구분 | POP3 | IMAP |
|---|---|---|
| 저장 위치 | 내 컴퓨터로 내려받음 | 서버에 그대로 남음 |
| 서버의 원본 | 보통 삭제 | 유지 |
| 여러 기기 | 동기화가 안 된다 | 모든 기기에서 같은 상태 |
| 오프라인 | 읽기 좋다 | 연결이 필요하다 |
| 포트 | 110 | 143 |
| 프로토콜 | 평문 포트 | 암호화 포트 |
|---|---|---|
| HTTP | 80 | 443 (HTTPS) |
| SMTP | 25 | 465 (SMTPS) |
| POP3 | 110 | 995 (POP3S) |
| IMAP | 143 | 993 (IMAPS) |
| 약자 | 풀네임 | 하는 일 | 예 |
|---|---|---|---|
| MUA | Mail User Agent | 사용자가 쓰는 프로그램 | Thunderbird, Outlook, mutt |
| MTA | Mail Transfer Agent | 서버 간 전달 | Sendmail, Postfix, qmail, exim |
| MDA | Mail Delivery Agent | 사서함에 배달 | procmail, Dovecot |
MUA ──► MTA ──── SMTP ────► MTA ──► MDA ──► 사서함 ──► MUA
(작성) (전송) (수신) (배달) (읽기)| 역할 | 프로그램 |
|---|---|
| MUA — 사용자가 읽고 쓰는 프로그램 | Thunderbird · Evolution · KMail · mutt · mail 명령 |
| MTA — 서버 간 전송 (SMTP) | Sendmail · Postfix · qmail · Exim |
| MDA — 사서함 배달 | procmail |
| POP3·IMAP 서버 — 사용자가 가져가게 해 준다 | Dovecot |
/var/spool/mail/사용자명 에 쌓이며, 배포판에 따라 /var/mail이라는 경로로도 보인다.| 증상 | 살필 곳 |
|---|---|
| 보내기는 되는데 받기만 안 된다 | POP3·IMAP 쪽 설정(받는 서버, 110·143) |
| 받기는 되는데 보내기만 안 된다 | SMTP 쪽 설정(보내는 서버, 25) |
| PC에서 확인한 메일이 휴대폰에서 사라졌다 | PC가 POP3로 내려받으며 서버에서 지웠다 |
웹은 되는데 https://만 안 된다 | 443번 포트가 막혔다 |
내일은 도메인 이름을 IP로 바꿔 주는 DNS를 다룬다.
선택지를 클릭하면 정답·해설이 펼쳐집니다.
문제 1
다음 중 메일 서버 사이에서 메일을 주고받을 때 사용하는 프로토콜로 알맞은 것은?
문제 2
다음 중 메일을 서버에 그대로 두고 여러 기기에서 동일한 상태로 확인할 수 있는 프로토콜로 알맞은 것은?
문제 3
다음 중 HTTPS가 기본으로 사용하는 포트 번호로 알맞은 것은?
문제 4
다음 중 메일 시스템에서 서버 간 메일 전송을 담당하는 구성 요소로 알맞은 것은?
문제 5
다음 중 텍스트 기반으로 동작하는 웹 브라우저로 알맞은 것은?