TDCLOUD  ·  0%
Kiến Thức

Port là gì? Ý nghĩa các cổng 22, 80, 443, 3389 và cách mở port trên VPS

C
Cố Tổng
06/10/2026
3 lượt xem

Khi thuê VPS, bạn sẽ liên tục gặp những con số như 22, 80, 443, 3389: "mở port 443 cho website", "đổi port Remote Desktop", "port 22 bị chặn". Vậy port là gì, vì sao mỗi dịch vụ lại dùng một port riêng, và mở port thế nào cho đúng mà không làm VPS kém an toàn? Bài này giải thích từ ví dụ đời thường tới các lệnh kiểm tra thực tế.

Tóm tắt nhanh:

  • Port (cổng mạng) là số từ 0 đến 65.535 dùng để phân biệt các dịch vụ chạy trên cùng một địa chỉ IP.
  • Port phổ biến: 22 SSH, 80 HTTP, 443 HTTPS, 3389 Remote Desktop, 3306 MySQL.
  • Mỗi port đi kèm giao thức TCP hoặc UDP.
  • Chỉ mở ra Internet những port thật sự cần. Kiểm tra bằng ss -tulpn (Linux) hoặc netstat -ano (Windows).

Port là gì? Hiểu qua ví dụ toà nhà

Hãy hình dung VPS là một toà nhà. Địa chỉ IP (ví dụ 203.0.113.25) là địa chỉ toà nhà, giúp dữ liệu tìm đúng tới VPS của bạn. Nhưng trong toà nhà có nhiều phòng, mỗi phòng một "người" làm việc riêng: phòng 443 là web server, phòng 22 là dịch vụ SSH, phòng 3389 là Remote Desktop. Port chính là số phòng.

Minh họa VPS như một toà nhà có địa chỉ IP, mỗi phòng là một port: 22 SSH, 3389 RDP, 80 HTTP, 443 HTTPS, 3306 MySQL
IP đưa dữ liệu tới đúng VPS, port đưa dữ liệu tới đúng dịch vụ bên trong VPS.

Khi bạn gõ https://tencuaban.vn, trình duyệt tự hiểu cần gõ cửa phòng 443. Khi bạn mở Remote Desktop tới VPS, ứng dụng gõ cửa phòng 3389. Một phòng chỉ "có người mở cửa" khi có chương trình đang lắng nghe (listen) trên port đó. Phòng trống thì gõ mãi cũng không ai trả lời.

Về con số: mỗi địa chỉ IP có 65.536 port (từ 0 đến 65.535), chia thành ba nhóm:

  • 0 – 1023: port "nổi tiếng", dành cho dịch vụ chuẩn như HTTP, SSH, DNS.
  • 1024 – 49151: port đăng ký, dùng cho các phần mềm cụ thể như MySQL (3306), Remote Desktop (3389).
  • 49152 – 65535: port động, hệ điều hành tự cấp tạm cho các kết nối đi ra.

TCP và UDP: hai cách gửi dữ liệu qua port

Mỗi port luôn đi kèm một giao thức. TCP 443 và UDP 443 là hai "cửa" khác nhau, nên khi mở port trên tường lửa bạn cần chọn đúng giao thức.

So sánh TCP như gửi thư bảo đảm và UDP như gửi thư thường, kèm ví dụ dịch vụ sử dụng
TCP chú trọng độ chính xác, UDP chú trọng tốc độ.
  • TCP giống gửi thư bảo đảm: hai bên "bắt tay" trước, mỗi gói tin đều được xác nhận, mất gói nào thì gửi lại. Website, SSH, Remote Desktop, email dùng TCP.
  • UDP giống gửi thư thường: gửi đi ngay, không chờ xác nhận. Nhanh hơn nhưng có thể mất vài gói. DNS, gọi video, game online, VPN WireGuard dùng UDP.

Một số dịch vụ dùng cả hai. Ví dụ Remote Desktop chạy chính trên TCP 3389 và dùng thêm UDP 3389 để hình ảnh mượt hơn khi mạng tốt.

Các port thường gặp trên VPS

Bảng các port thường gặp trên VPS: 21, 22, 25, 53, 80, 443, 3306, 3389, 8080 kèm giao thức và có nên mở ra Internet
Các port bạn sẽ gặp thường xuyên nhất khi quản trị VPS.
PortDịch vụGhi chú
21FTPTruyền file nhưng không mã hoá mật khẩu. Nên dùng SFTP qua port 22 thay thế.
22SSH, SFTPQuản trị VPS Linux. Nên dùng SSH key, xem bài bảo mật VPS Linux cơ bản.
25SMTPGửi email giữa các máy chủ. Chỉ cần khi bạn tự chạy mail server.
53DNSPhân giải tên miền. Chỉ mở khi VPS làm máy chủ DNS.
80HTTPWebsite không mã hoá; thường chỉ để chuyển hướng sang HTTPS và xác thực SSL.
443HTTPSWebsite có SSL. Xem cách cài SSL Let's Encrypt.
3306MySQL, MariaDBCơ sở dữ liệu. Nên chỉ cho phép kết nối nội bộ (127.0.0.1).
3389Remote DesktopQuản trị VPS Windows. Có thể đổi sang port khác để giảm lượt dò mật khẩu.
8080Web phụ, proxyThường dùng cho ứng dụng thử nghiệm hoặc panel quản trị phụ.

Cách kiểm tra port đang mở trên VPS

Có hai câu hỏi khác nhau cần trả lời: trên VPS có chương trình nào đang lắng nghe port đó không, và từ bên ngoài có kết nối tới port đó được không (tức tường lửa có cho qua không).

Xem port đang lắng nghe trên VPS Linux

ss -tulpn

Cột Local Address:Port cho biết port và địa chỉ đang lắng nghe. 0.0.0.0:443 nghĩa là nhận kết nối từ mọi nơi; 127.0.0.1:3306 nghĩa là chỉ nhận kết nối từ chính VPS, người ngoài không chạm tới được.

Xem port đang lắng nghe trên VPS Windows

Mở PowerShell hoặc Command Prompt trên VPS và chạy:

netstat -ano | findstr LISTENING

Cột cuối là PID của chương trình. Muốn biết PID đó là phần mềm nào, mở Task Manager, tab Details, tìm theo cột PID.

Kiểm tra từ máy tính của bạn

Trên Windows, PowerShell có sẵn lệnh:

Test-NetConnection 203.0.113.25 -Port 443

Kết quả TcpTestSucceeded : True nghĩa là port mở và có dịch vụ trả lời. Trên macOS hoặc Linux dùng:

nc -zv 203.0.113.25 443
Kết quả lệnh ss -tulpn trên VPS Linux và lệnh Test-NetConnection trong PowerShell kiểm tra port 443
Trên: các port đang lắng nghe trên VPS. Dưới: kiểm tra từ máy bạn xem port 443 có kết nối được không.

Nếu dịch vụ đang chạy trên VPS mà kiểm tra từ ngoài vẫn thất bại, gần như chắc chắn tường lửa đang chặn port đó.

Cách mở và đóng port trên VPS

Trên Linux với UFW (Ubuntu, Debian)

# Mở port SSH TRƯỚC khi bật tường lửa để không tự khoá mình
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable

# Xem danh sách luật
sudo ufw status numbered

# Đóng một port
sudo ufw delete allow 8080/tcp

Quan trọng: luôn mở port SSH (hoặc port SSH bạn đã đổi) trước khi chạy ufw enable. Lỡ tự khoá mình ở ngoài thì vào VPS qua VNC Console để sửa lại.

Trên Windows Server với PowerShell

# Mở port TCP 8080 cho ứng dụng web
New-NetFirewallRule -DisplayName "Web 8080" -Direction Inbound -Protocol TCP -LocalPort 8080 -Action Allow

# Đóng lại bằng cách xoá luật
Remove-NetFirewallRule -DisplayName "Web 8080"

Nếu thích giao diện, bạn mở Windows Defender Firewall with Advanced Security → Inbound Rules → New Rule… → chọn Port, nhập số port và giao thức.

Vì sao không nên mở thừa port?

Trên Internet luôn có các bot quét hàng loạt địa chỉ IP để tìm port đang mở, sau đó thử mật khẩu hoặc khai thác lỗ hổng của phần mềm phía sau. Mỗi port mở là thêm một cánh cửa để chúng thử.

Sơ đồ tường lửa cho qua port 443 và 22, chặn port 3306 và 8080 trước khi tới VPS
Tường lửa cho qua những port cần thiết và chặn phần còn lại.
  • Cơ sở dữ liệu (3306, 5432, 27017) chỉ nên lắng nghe ở 127.0.0.1. Website chạy cùng VPS vẫn kết nối bình thường.
  • Panel quản trị, ứng dụng thử nghiệm: dùng xong thì tắt hoặc chặn port, hoặc chỉ cho phép IP của bạn truy cập.
  • Port quản trị (22, 3389): bật kèm mật khẩu mạnh hoặc SSH key, cân nhắc đổi port mặc định.
  • Định kỳ chạy ss -tulpn hoặc netstat -ano để xem có port lạ nào xuất hiện không.

Câu hỏi thường gặp

Đổi port SSH hay Remote Desktop có làm VPS an toàn hơn không?

Có giúp giảm đáng kể số lượt dò mật khẩu tự động, vì phần lớn bot chỉ quét port mặc định. Nhưng đây không phải lớp bảo vệ chính: mật khẩu mạnh, SSH key và cập nhật hệ thống vẫn quan trọng hơn.

Mở port trên tường lửa rồi mà vẫn không truy cập được?

Kiểm tra theo thứ tự: dịch vụ có đang chạy không (ss -tulpn), dịch vụ có lắng nghe ở 0.0.0.0 hay chỉ 127.0.0.1, đã mở đúng giao thức TCP hay UDP chưa, và phần mềm diệt virus trên VPS Windows có tường lửa riêng không.

Một port có dùng được cho hai chương trình cùng lúc không?

Không. Mỗi port trên một địa chỉ IP (cùng giao thức) chỉ một chương trình lắng nghe được. Nếu chương trình thứ hai khởi động sẽ báo lỗi kiểu address already in use.

Mạng nhà tôi có chặn port không?

Một số mạng công ty, trường học, quán net chặn các port ngoài 80 và 443. Nếu không kết nối được tới VPS qua 22 hoặc 3389, hãy thử bằng mạng khác như 4G để loại trừ.

Nếu bạn cần mở port cho một ứng dụng cụ thể trên VPS mà chưa chắc cấu hình đúng, đội kỹ thuật TDCLOUD có thể kiểm tra cùng bạn. Đang tìm VPS để bắt đầu? Tham khảo các gói VPS giá rẻ và VPS tiêu chuẩn.

Nếu bạn thấy bài viết này hữu ích...

Nhấp vào ngôi sao để đánh giá!

Chưa có đánh giá nào. Hãy là người đầu tiên!

Có thể bạn quan tâm