Trong quá trình khắc phục sự cố các dịch vụ chạy trên hệ thống Linux, kiểm tra các cổng đang mở là một trong những nhiệm vụ mà bất kỳ người dùng hoặc quản trị viên nào cũng nên xem xét thực hiện. Trong bài viết này Thế Giới Số sẽ hướng dẫn các bạn cách kiểm tra các cổng đang được mở trên hệ thống Linux.
1. Kiểm tra các cổng mở bằng lệnh ss
Lệnh ss cung cấp cho bạn thông tin chi tiết về các cổng mở và listen socket. Nó lấy thông tin từ nhân Linux và được ưa thích hơn so với lệnh netstat đã không được sử dùng nữa.
Để hiển thị các kết nối TCP đang nghe, hãy chạy lệnh
ss -tl
- l – Hiển thị listening sockets
- t – Viết tắt của cổng TCP
Để hiển thị các kết nối UDP đang nghe, hãy chạy lệnh
ss -lu
Để hiển thị cả tcp, udp và process name hãy dùng lệnh
ss -lntup
Để in ra tất cả các kết nối socket, chỉ cần sử dụng lệnh ss ở định dạng mặc định của nó
ss
2. Kiểm tra các cổng mở bằng lệnh netstat
Lệnh netstat là một công cụ mạnh mẽ được sử dụng để kiểm tra các cổng TCP và UDP đang mở cùng với các thuộc tính khác. Để kiểm tra các cổng mở, hãy dùng lệnh:
netstat -pnltu
- p – Hiển thị ID Procees được liên kết với một dịch vụ hoặc Tên chương trình
- n – Hiển thị cổng đang chạy, ví dụ 3306 cho mysqld và 22 cho sshd.
- l – Hiển thị listen socket
- t – Hiển thị các kết nối TCP
- u – Hiển thị các kết nối UDP
3. Kiểm tra các cổng mở bằng lệnh lsof
Lệnh lsof cũng có thể được sử dụng để kiểm tra các cổng mở trong hệ thống Linux. Để hiển thị các cổng mở, hãy chạy lệnh
lsof -i
Nếu bạn muốn hiển thị các sockets mở, hãy sử dụng lệnh lsof và kết hợp với lệnh grep như sau:
lsof -n -P | grep LISTEN
Để xem tất cả các kết nối TCP thực thi:
lsof -i tcp
Để hiển thị tất cả các kết nối UDP chạy lệnh:
lsof -i udp
4. Kiểm tra các cổng mở bằng tiện ích Nmap
Nmap là một công cụ quét mạng miễn phí thường được sử dụng để kiểm tra các cổng đang mở. Theo mặc định, Nmap không được cài đặt trên hệ thống của bạn. Để cài đặt Nmap, hãy chạy lệnh sau
# For Debian/ Ubuntu sudo apt install nmap -y # For RedHat/ CentOS yum install nmap -y # For Fedora sudo dnf install nmap -y #ArchLinux pacman -S nmap -y
Để quét các cổng TCP đang mở, hãy chạy lệnh
nmap -sT -O localhost
Để quét các cổng UDP đang mở, hãy chạy lệnh:
nmap -sU localhost
Như vậy chúng ta đã kiểm tra được các cổng đang mở trên server linux, chúc bạn thành công.