Hướng Dẫn Mở Port trong Linux: Chi Tiết Cho Người Mới Bắt Đầu

Hướng Dẫn Mở Port trong Linux: Chi Tiết Cho Người Mới Bắt Đầu

Mỗi ứng dụng và dịch vụ cần kết nối mạng để hoạt động đều yêu cầu các điểm cuối (endpoint) cụ thể để kết nối và giao tiếp với các dịch vụ khác. Có 65.536 điểm cuối như vậy trong bất kỳ hệ thống Linux nào, được gọi là “Port”. Trong bài viết này, Afropolitan Group sẽ hướng dẫn bạn cách mở port trong Linux một cách chi tiết và dễ hiểu.

Kiểm Tra Trạng Thái Port trong Linux

Trước khi mở bất kỳ port nào, bạn cần kiểm tra trạng thái port để tránh xung đột. Để liệt kê tất cả các port đang mở trong hệ thống, hãy sử dụng lệnh netstat trong Linux:

netstat -l -n -t -u

Trong lệnh trên:

  • -l: Liệt kê tất cả các port đang ở chế độ lắng nghe (chấp nhận kết nối đến).
  • -n: Hiển thị số port.
  • -t: Liệt kê tất cả các port chấp nhận kết nối TCP.
  • -u: Liệt kê tất cả các port chấp nhận kết nối UDP.

Sau khi chạy lệnh này trong Terminal, bạn sẽ thấy kết quả như sau:

Kết quả của lệnh netstat -l -n -t -uKết quả của lệnh netstat -l -n -t -u

Chú ý cột thứ năm có tên “Local Address”. Số này biểu thị địa chỉ cục bộ mà qua đó bất kỳ kết nối đến nào được chấp nhận. Số sau dấu hai chấm biểu thị port đang mở cho bất kỳ kết nối đến nào trên hệ thống Linux của bạn.

Nếu netstat chưa được cài đặt trong hệ thống, bạn có thể sử dụng lệnh ss. Nó cho kết quả tương tự và số port được hiển thị trong cột cuối cùng sau dấu hai chấm:

ss -l -n -t -u

Cách mở Port trong LinuxCách mở Port trong Linux

Cách Mở Port trong Linux

Sau khi xác minh port bạn muốn mở chưa được sử dụng, bạn có thể tiến hành mở nó. Dưới đây là hướng dẫn cụ thể cho các bản phân phối Linux khác nhau:

Hệ Thống Dựa Trên Ubuntu

UFW (Uncomplicated Firewall) là công cụ được sử dụng để quản lý quy tắc tường lửa. Sử dụng cú pháp sau để thêm quy tắc mới mở port:

sudo ufw allow <số_port>/<tcp hoặc udp>

Ví dụ, để mở port 8080 cho kết nối TCP đến, hãy sử dụng lệnh sau:

sudo ufw allow 8080/tcp

Mở port 8080 trong hệ thống Linux sử dụng UFWMở port 8080 trong hệ thống Linux sử dụng UFW

Kiểm tra trạng thái của UFW bằng lệnh:

sudo ufw status numbered

Nếu nó hiển thị “inactive”, hãy kích hoạt nó bằng lệnh:

sudo ufw enable

Và kiểm tra lại trạng thái của UFW. Lần này bạn sẽ thấy port đã mở trong kết quả.

Hệ Thống Dựa Trên CentOS

Firewalld (Firewall-Daemon) là công cụ quản lý quy tắc tường lửa nâng cao. Trước khi sửa đổi bất kỳ quy tắc nào, hãy luôn kiểm tra trạng thái của nó bằng lệnh:

sudo systemctl status firewalld

Kiểm tra trạng thái của firewalldKiểm tra trạng thái của firewalld

Nếu nó hiển thị “inactive”, hãy kích hoạt firewalld bằng lệnh:

sudo systemctl enable firewalld

Để thêm quy tắc mới mở port, sử dụng cú pháp:

sudo firewall-cmd --add-port=<số_port>/<tcp hoặc udp> --permanent
sudo firewall-cmd --reload

Ví dụ, để mở port 8080 cho kết nối TCP đến:

sudo firewall-cmd --add-port=8080/tcp --permanent
sudo firewall-cmd --reload

Các Bản Phân Phối Linux Khác

Mọi bản phân phối Linux đều được cài đặt sẵn iptables, một công cụ linh hoạt được sử dụng để quản lý quy tắc tường lửa. Để cho phép lưu lượng TCP trên port 8080, hãy sử dụng lệnh:

sudo iptables -A INPUT -p tcp --dport 8080 -j ACCEPT

Sau khi thêm quy tắc, hãy lưu nó bằng lệnh:

sudo /sbin/iptables-save

Mở port 8080 cho lưu lượng TCP đếnMở port 8080 cho lưu lượng TCP đến

  1. Port là gì? Port là một điểm cuối giao tiếp logic được sử dụng bởi các ứng dụng mạng. Mỗi port được gán một số duy nhất để phân biệt các dịch vụ khác nhau.

  2. Tại sao cần mở port? Mở port cho phép các kết nối đến từ mạng bên ngoài truy cập vào các dịch vụ cụ thể chạy trên máy tính Linux của bạn.

  3. UFW, Firewalld và iptables khác nhau như thế nào? UFW là một giao diện đơn giản cho iptables, dễ sử dụng hơn. Firewalld là một daemon tường lửa phức tạp hơn với giao diện dòng lệnh riêng. iptables là công cụ cốt lõi để quản lý tường lửa trong Linux.

  4. Làm thế nào để kiểm tra xem port đã được mở thành công chưa? Bạn có thể sử dụng lệnh netstat hoặc ss để kiểm tra danh sách các port đang mở. Ngoài ra, bạn có thể sử dụng các công cụ kiểm tra port trực tuyến.

  5. Mở port có ảnh hưởng đến bảo mật hệ thống không? Việc mở port có thể làm tăng nguy cơ bảo mật nếu không được cấu hình đúng cách. Chỉ nên mở những port cần thiết và sử dụng các quy tắc tường lửa để hạn chế truy cập.

  6. Tôi có cần khởi động lại máy tính sau khi mở port không? Thông thường, bạn không cần khởi động lại máy tính sau khi mở port bằng UFW hoặc Firewalld. Tuy nhiên, với iptables, bạn có thể cần khởi động lại dịch vụ mạng hoặc máy tính.

  7. Làm thế nào để đóng một port đã mở? Bạn có thể sử dụng các lệnh tương tự như khi mở port nhưng thay allow bằng deny (cho UFW) hoặc --remove-port (cho Firewalld) hoặc -D (cho iptables).

Afropolitan Group

Kết Luận

Việc mở port trong Linux là một thao tác quan trọng để cho phép các ứng dụng và dịch vụ hoạt động bình thường. Bài viết đã hướng dẫn chi tiết cách mở port trên các hệ thống Linux phổ biến. Việc lựa chọn công cụ và lệnh phù hợp phụ thuộc vào bản phân phối Linux bạn đang sử dụng. Hãy chắc chắn rằng bạn hiểu rõ các lệnh và tác động của chúng trước khi thực hiện.