TCP, HTTP & Web cho Backend/Module 3 — TLS & Công cụ Debug: tổng quan
22/29
Bài 22 / 29~10 phútTLS & Công cụ DebugMiễn phí lượt xem

Module 3 — TLS & Công cụ Debug: tổng quan

Module cuối khoá: bảo mật kết nối (TLS 1.3, certificate, chain of trust) và bộ công cụ debug mạng thực chiến (dig/curl/nc/ss/tcpdump/Wireshark). Kết thúc bằng mini-challenge dựng reverse proxy HTTPS hoàn chỉnh.

TL;DR: Module 3 là chặng cuối của khoá networking-web — nơi bạn hiểu tại sao HTTPS an toàn (TLS 1.3 handshake, certificate, chain of trust) và cách chẩn đoán sự cố mạng bằng công cụ dòng lệnh (dig, curl, nc, ss, tcpdump, Wireshark). Module kết thúc bằng mini-challenge thực tế: dựng một reverse proxy terminate TLS trước backend, tức là bạn tự tay làm điều mà mọi production server đều làm. Sau module này bạn không chỉ biết TLS là gì — bạn biết đọc được handshake và debug được khi nó sai.

Vì sao module này là chặng cuối quan trọng

Module 1 dạy TCP — kênh truyền tin cậy. Module 2 dạy HTTP — ngôn ngữ request/response. Nhưng cả hai đều bỏ ngỏ một câu hỏi: ai đảm bảo dữ liệu không bị đọc, sửa, hoặc giả mạo trên đường truyền?

Câu trả lời là TLS (Transport Layer Security) — lớp bảo mật chạy trên TCP, dưới HTTP. Mỗi lần bạn thấy ổ khoá xanh trên trình duyệt, TLS đang làm việc bên dưới. Hiểu TLS là hiểu vì sao HTTPS quan trọng hơn chỉ mã hoá: nó đồng thời xác thực bạn đang nói chuyện đúng server, và đảm bảo không ai sửa được byte nào giữa đường.

Song song đó, module này trang bị bộ công cụ debug thực chiến mà bất kỳ backend dev hay SRE nào cũng cần: không phải để học thuộc, mà để biết khi nào dùng tool nào và đọc output nó in ra. Một kỹ sư biết dig, curl -v, nc, ss, và tcpdump có thể chẩn đoán phần lớn sự cố mạng trong vòng dưới 5 phút.

Sau module này bạn sẽ

  • Explain được TLS 1.3 handshake và chuỗi tin cậy certificate — tại sao trình duyệt tin một server, root CA là gì, intermediate cert thiếu gây lỗi gì.
  • Diagnose được sự cố mạng bằng dig/curl/nc/ss/tcpdump/Wireshark — biết dùng tool đúng chặng, đọc được output, khoanh vùng lỗi nhanh.
  • Implement được reverse proxy terminate TLS trước backend — dựng Nginx proxy HTTPS thật với Let's Encrypt hoặc self-signed cert.

Bản đồ module

flowchart LR
    A["00<br/>Tong quan"] --> B["01<br/>TLS handshake"]
    B --> C["02<br/>Certificate & CA"]
    C --> D["03<br/>Cong cu debug"]
    D --> E["04<br/>Wireshark"]
    E --> F["05<br/>Latency & RTT"]
    F --> G["06<br/>Mini-challenge<br/>reverse proxy"]
    G --> H["07<br/>Tong ket"]

Hai bài nền tảng (01-02): TLS handshake và certificate là hai mặt của cùng một vấn đề — bảo mật và tin cậy. Bài 01 giải thích cơ chế kỹ thuật (ClientHello, key exchange, symmetric vs asymmetric), bài 02 giải thích cơ chế tin cậy (certificate chứa gì, ai ký, vì sao trình duyệt chấp nhận).

Bộ công cụ (03-04): Bài 03 đi qua năm công cụ CLI với cú pháp thực dụng và workflow chẩn đoán. Bài 04 đi sâu vào Wireshark — bắt và đọc gói TLS thật.

Hiệu năng (05): Latency, throughput, RTT — bộ ba chỉ số để nói chuyện về tốc độ mạng có cơ sở, không đoán mò.

Mini-challenge (06): Dựng reverse proxy HTTPS từ đầu — xâu chuỗi mọi kiến thức của cả khoá.

Yêu cầu trước khi bắt đầu

Bạn đã học Module 1 (TCP) và Module 2 (HTTP) của khoá này. Cụ thể:

  • Hiểu TCP 3-way handshake — TLS chạy bên trong kết nối TCP đã mở.
  • Hiểu HTTP request/response, header, status code — TLS bảo vệ chính lớp này.
  • Biết dùng curltcpdump cơ bản (đã giới thiệu ở Module 1).

Nếu chưa học Module 1-2, nên đọc ít nhất bài TCP 3-way handshake trước — bài 01 module này bắt ngay từ "TLS chạy sau TCP handshake".

Time budget

BàiChủ đềThời lượng
Tổng quan (bài này)Bản đồ module~10 phút
01 — TLS/HTTPS handshakeCơ chế bảo mật TLS 1.3~24 phút
02 — Certificate & CAChain of trust, Let's Encrypt~22 phút
03 — Bộ công cụ debugdig/curl/nc/ss/tcpdump~22 phút
04 — Wireshark bắt góiĐọc gói TLS thật~18 phút
05 — Latency, throughput, RTTĐo và đọc hiệu năng mạng~16 phút
06 — Mini-challengeDựng reverse proxy HTTPS~30 phút
07 — Tổng kết moduleRecap + self-assessment~12 phút
Tổng module~2.5 giờ

Cách học module này hiệu quả

  • Chạy thử mọi lệnh ngay khi đọc. Bài 01-02 nặng lý thuyết nhưng bài 03-04 là thuần thực hành — không chạy lệnh thì không nhớ. Mở terminal song song khi học.
  • Bài 01 và 02 liên thông. Đọc bài 01 xong đọc ngay bài 02 — certificate xuất hiện trong TLS handshake, hiểu cả hai mới thành mạch.
  • Mini-challenge là đích đến. Mọi tool ở bài 03-04 đều xuất hiện lại trong mini-challenge. Đừng bỏ qua bài nào.
  • Bám vào "chặng nào hỏng, dùng tool gì". Đây là tư duy chẩn đoán — không phải nhớ cú pháp, mà nhớ được "lỗi TLS → dùng openssl/curl -v", "port kín → dùng nc".

Bài tiếp theo: TLS/HTTPS handshake — mã hoá, toàn vẹn, xác thực

Bài này đáng gửi cho bạn học cùng?

Copy link đã gắn nguồn — dán group, chat, hoặc LinkedIn.

Bài này có giúp bạn hiểu bản chất không?

Hỏi đáp về bài này

Chưa có câu hỏi

Đặt câu hỏi

Có gì chưa rõ trong bài? Đặt câu hỏi đầu tiên — câu trả lời từ cộng đồng giúp bạn (và người sau).

Đặt câu hỏi đầu tiên

Bài tiếp theo

TLS/HTTPS handshake — mã hoá, toàn vẹn, xác thực