BẢO MẬTCĂN BẢNTUẦN 01 & 02
BÀI 05

IP, port, client và server: dữ liệu được gửi tới đâu

Từ bài này ta theo đường đi của dữ liệu trên mạng. Cần đọc được hai đầu của một kết nối: ai gửi, ai nhận, qua địa chỉ IP và cổng nào, và điểm này liên quan gì đến bảo mật.

Mũi tên ở đây là đường truyền dữ liệu. Địa chỉ dùng cho minh họa, không phải đích thực hành.
Mũi tên ở đây là đường truyền dữ liệu. Địa chỉ dùng cho minh họa, không phải đích thực hành.
01

Client và server

Trình duyệtClient: gửi yêu cầu
Chương trình websiteServer: xử lý, trả lời

Khi mở website, trình duyệt gửi một yêu cầu và chương trình web trả nội dung về. Bên gửi yêu cầu là , bên nhận và phục vụ là . Đây là vai trò của chương trình, không phải loại máy: client và server có thể chạy trên cùng một máy.

Về bảo mật, điều này quan trọng vì mỗi chương trình đang chờ yêu cầu từ mạng là một điểm có thể bị người khác gửi yêu cầu tới. Ta gọi tổng các điểm đó là bề mặt tấn công (attack surface). Càng ít dịch vụ lắng nghe ra ngoài, bề mặt càng nhỏ.

02

Địa chỉ IP và cổng (port)

192.168.1.10:51514IP và port nguồn
203.0.113.10:443IP và port đích

xác định máy (chính xác hơn là một giao diện mạng) trên mạng. là số từ 0 đến 65535, xác định chương trình nào trên máy đó nhận dữ liệu. Một kết nối được ghi dạng IP:port cho cả hai đầu:

ĐỊA CHỈ MINH HỌA
192.168.1.10:51514  →  203.0.113.10:443
  • 192.168.1.10: IP của máy khách trong mạng riêng giả định.
  • 51514: port nguồn tạm thời, hệ điều hành chọn cho kết nối này.
  • 203.0.113.10: IP máy chủ (dải địa chỉ dùng cho tài liệu).
  • 443: port đích, quy ước dùng cho HTTPS. Port 80 là HTTP, 22 là SSH.

Cách nhớ: IP như địa chỉ tòa nhà, port như số cửa của từng bộ phận trong tòa nhà. Nhưng số port chỉ là quy ước: 443 không bảo đảm dịch vụ phía sau là đúng loại hay đáng tin.

Phân biệt nhiều kết nối

Kết nốiIP nguồnPort nguồnIP đíchPort đích
A192.168.1.1051514203.0.113.10443
B192.168.1.1051515203.0.113.10443

Hai kết nối chỉ khác port nguồn, đủ để hệ điều hành phân biệt. Phản hồi cho A đi theo chiều ngược: 203.0.113.10:443 → 192.168.1.10:51514. Số kết nối không bằng số tab: trình duyệt có thể dùng lại hoặc mở thêm kết nối nền.

03

Mạng LAN, router và gateway

Laptop192.168.1.10
Router nhà192.168.1.1 (gateway)
Máy chủ203.0.113.10

là mạng nội bộ như mạng Wi-Fi ở nhà. Để gửi dữ liệu ra ngoài LAN, máy gửi cho , thiết bị chuyển tiếp dữ liệu giữa các mạng. Địa chỉ router mà máy dùng làm lối ra mặc định là , ở ví dụ là 192.168.1.1.

Router chỉ là một điểm chuyển tiếp. Thực tế còn nhiều router trung gian giữa nhà bạn và máy chủ. Router, và những thiết bị trên đường đi, đều có thể nhìn thấy IP và port của gói dữ liệu, nên nội dung nhạy cảm phải được mã hóa (bài 6).

Ba dải IPv4 dành cho mạng riêng, dùng trong nội bộ và không định tuyến thẳng ra Internet:

DảiVí dụ
10.0.0.0/810.1.2.3
172.16.0.0/12172.20.1.5
192.168.0.0/16192.168.1.10

Hai nhà có thể cùng dùng 192.168.1.10 trong hai mạng riêng độc lập mà không xung đột. Hai dải 198.51.100.0/24 và 203.0.113.0/24 trong bài là dải dành cho tài liệu, không phải máy để thử kết nối.

04

Xem địa chỉ trên máy của bạn

Đối chiếu sơ đồ với máy thật bằng lệnh hệ điều hành. Kết quả dưới đây là ví dụ, không phải máy của bạn:

VÍ DỤ CẤU HÌNH
IPv4 Address . . . : 192.168.1.10
Subnet Mask . . . : 255.255.255.0
Default Gateway . : 192.168.1.1
Hệ điều hànhXem địa chỉXem đường ra
Windowsipconfigroute print
macOSifconfigroute -n get default
Linuxip addrip route

Biểu diễn địa chỉ

dài 32 bit, viết thành bốn số từ 0 đến 255. cho biết bao nhiêu bit đầu xác định mạng: trong 192.168.1.10/24, 24 bit đầu là phần mạng (192.168.1), phần còn lại phân biệt từng máy. Không giả định mọi mạng đều là /24.

dài 128 bit, viết bằng nhóm số hệ 16 cách nhau dấu hai chấm. Một máy thường có cả IPv4 và IPv6; thấy hai loại địa chỉ là bình thường.

Về bảo mật, quản trị viên nên biết máy mình đang dùng giao diện nào, đang lắng nghe port nào, và dịch vụ nào cần mở ra ngoài. Bài 6 nói về việc kiểm soát điều đó.

Tóm tắt

Tự kiểm tra · 3 câu có giải thích +
1. Trong 192.168.1.10:51514 → 203.0.113.10:443, số 443 là gì?
2. Hai kết nối cùng máy nguồn và cùng đích khác nhau ở đâu để phân biệt?
3. Vì sao nên hạn chế số dịch vụ lắng nghe từ mạng?

Ghi chú cá nhân +

Tự lưu trên trình duyệt. Không nhập thông tin bí mật.

Có thể bỏ đánh dấu bất cứ lúc nào.
Tài liệu tham khảo chính thức

Tra thuật ngữ