Quản lý mạng với Netcat
Netcat là một tiện ích đa năng đọc và ghi dữ liệu qua các
kết nối mạng bằng giao thức TCP/IP. Nó là một công cụ hữu ích cho
gỡ lỗi mạng và khám phá, và nó cũng được sử dụng trong nhiều
hoạt động bảo mật như quét cổng, truyền tệp và tạo
lỗ hổng sau trong quá trình kiểm tra xâm nhập. Bài viết này cung cấp
hướng dẫn từng bước về cách cài đặt và sử dụng tính năng lắng nghe của Netcat trên
hệ thống Ubuntu hoặc Debian.
Cài đặt của
Netcat
Netcat là một tiện ích tiêu chuẩn có sẵn trong kho lưu trữ của hầu hết các
bản phân phối Linux. Dưới đây là hướng dẫn cài đặt cho một số
bản phân phối Linux phổ biến nhất.
nc -h

Ubuntu/Debian
Trên Ubuntu hoặc Debian, bạn có thể cài đặt Netcat bằng lệnh sau
lệnh
sudo apt-get update
sudo apt-get install netcat
CentOS/RHEL
Đối với CentOS hoặc Red Hat Enterprise Linux, bạn có thể dùng YUM (hoặc DNF trên
các phiên bản mới hơn) để cài đặt Netcat:
sudo yum install nc
Sử dụng Netcat
Người nghe
Tính năng lắng nghe của Netcat cho phép bạn giám sát lưu lượng mạng trên
những cổng cụ thể, cung cấp thông tin chi tiết theo thời gian thực về truyền dữ liệu và
hỗ trợ khắc phục sự cố mạng hoặc phân tích bảo mật.
Phần 1: Quét cổng
Mở Cổng
Trước khi thiết lập lắng nghe, sẽ rất hữu ích nếu xác định các cổng mở trên
máy chủ của bạn. Netcat có thể quét một cổng hoặc một dãy cổng.
Quét Một Dãy Cổng:
Để quét một dãy cổng, hãy dùng lệnh sau, thay thế
[REMOTE_COMPUTER_IP] bằng địa chỉ IP của máy chủ và
[PORT_RANGE] bằng dãy cổng muốn quét, chẳng hạn như
2000-5000:
netcat -z -v -n [REMOTE_COMPUTER_IP] [PORT_RANGE]
Ví dụ:
Để quét các cổng từ 2999 đến 3014 trên máy chủ có địa chỉ IP
127.0.0.1, lệnh sẽ là:

Để lọc kết quả và chỉ hiển thị các cổng mở, bạn có thể
sử dụng grep:
netcat -z -v -n 172.86.74.34 2000-5000 2>&1 | grep succeeded!

Quét Một Cổng Đơn Lẻ:
Nếu bạn cần kiểm tra một cổng, bạn có thể dùng:
netcat -z -v -n [REMOTE_COMPUTER_IP] [PORT]
Ví dụ, để quét cổng 3000 trên máy chủ:
netcat -z -v -n 172.86.74.34 3000

Lệnh này sẽ cho biết cổng 3000 có mở hay đóng.
Phần 2: Thiết Lập
một Netcat Listener
Khi bạn đã xác định một cổng mở hoặc nếu bạn có một cổng cụ thể
bạn muốn giám sát, bạn có thể thiết lập một trình lắng nghe Netcat. Để lắng nghe trên cổng
2200, chẳng hạn, hãy sử dụng lệnh sau:
netcat -l -p 2200

Lệnh này sẽ hướng dẫn Netcat lắng nghe trên cổng 2200 cho bất kỳ
dữ liệu đến
Phần 3: Gửi Một Bài Kiểm Tra
Tin nhắn
Để xác minh rằng trình lắng nghe Netcat của bạn được thiết lập đúng cách, bạn có thể gửi
một tin nhắn kiểm tra từ máy khác. Mở terminal trên máy tính khác
và sử dụng lệnh sau:
netcat [SERVER_IP] 2200
Thay thế [SERVER_IP] với địa chỉ IP của
máy chủ nơi trình lắng nghe Netcat đang chạy. Sau khi kết nối được
thiết lập, bạn có thể nhập tin nhắn của mình và nhấn Enter. Tin nhắn
sẽ xuất hiện trên máy chủ nơi trình lắng nghe Netcat được thiết lập.

Phần 4: Lưu Dữ Liệu Vào
Tệp
Nếu bạn muốn giữ một bản ghi của dữ liệu đi qua cổng
mà bạn đang giám sát bằng Netcat, bạn có thể chuyển hướng đầu ra tới một tệp.
Đây là cách lưu dữ liệu đến một tệp có tên
output.txt:
netcat -l -p 2200 > output.txt
Thực thi lệnh này sẽ chuyển hướng bất kỳ dữ liệu nào được nhận bởi Netcat
lắng nghe trên cổng 2200 đến tệp
output.txt Bạn có thể xem lại tệp này sau với bất kỳ trình soạn thảo văn bản nào
biên tập viên

Phần 5: Đang gửi
Tệp
Để gửi một tệp bằng Netcat, bạn cần thực hiện các hành động trên cả hai
máy gửi và máy nhận.
Trên Máy Nhận:
Thiết lập Netcat để lắng nghe trên một cổng cụ thể và chuyển hướng dữ liệu đến
vào một tệp. Chẳng hạn, để lắng nghe trên cổng 2200 và lưu
dữ liệu đến output.zip, sử dụng:
netcat -l -p 2200 > archive.zip
Trên máy gửi:
Gửi tệp bằng Netcat bằng cách kết nối đến địa chỉ IP của máy nhận
và cổng, sau đó chuyển hướng tệp vào Netcat. Thay thế
[RECEIVER_IP] bằng địa chỉ IP của máy nhận
máy:
netcat [RECEIVER_IP] 2200 < yourfile.zip
Thay thế yourfile.zip bằng đường dẫn và tên của
tệp zip mà bạn muốn gửi.

Lưu ý: Khi chuyển tệp, hãy đảm bảo rằng
không có tường lửa chặn kết nối và tiến trình
Netcat trên máy nhận đã được khởi động trước khi lệnh gửi được thực thi.
Bổ sung
Khả năng của Netcat
Netcat có thể làm nhiều hơn so với chuyển tệp và
lắng nghe cổng. Đây là công cụ đa năng phục vụ nhiều
mục đích liên quan đến mạng, từ bảo mật đến truyền thông. Dưới đây là
một số khả năng bổ sung của nó:
-
Tạo máy chủ trò chuyện: Netcat có thể được cấu hình
để tạo điều kiện giao tiếp văn bản thời gian thực giữa các người dùng, đóng vai trò như một
máy chủ trò chuyện cơ bản. -
Lấy banner dịch vụ: Bằng cách kết nối với công khai
cổng, Netcat có thể truy xuất banner dịch vụ, giúp xác định
các phiên bản phần mềm có khả năng dễ bị tấn công. -
Gỡ lỗi Mạng: Đây là công cụ tuyệt vời để
chẩn đoán các dịch vụ mạng, cho phép bạn gửi các yêu cầu tùy chỉnh và
phân tích phản hồi để khắc phục sự cố. -
Quản Lý Từ Xa Netcat có thể liên kết một shell
với một cổng mạng, cho phép truy cập dòng lệnh từ xa vào máy khác
máy tính, đặc biệt hữu ích cho các hoạt động hệ thống
quản trị viên -
Kiểm thử Network Daemon: Các nhà phát triển có thể sử dụng
Netcat để tương tác với các network daemon, gửi dữ liệu kiểm thử và lệnh
để xem dịch vụ hoạt động như thế nào. -
Chức năng Proxy Server: Với Netcat, việc thiết lập
một proxy cơ bản rất đơn giản, cho phép bạn chuyển tiếp lưu lượng và
có thể giám sát hoặc phân tích nó cho nhiều mục đích khác nhau. -
Mô phỏng Network Service: Nó có thể mô phỏng
các network service, cung cấp phản hồi giả cho các yêu cầu mạng
đến, điều này hữu ích cho việc kiểm thử các ứng dụng phía khách. -
Thiết lập Basic TCP/UDP Server: Netcat có thể lắng nghe trên
các cổng được chỉ định để nhận các yêu cầu TCP hoặc UDP, làm cho nó trở thành công cụ
để tạo các máy chủ đơn giản. -
Scripting và Automation: Bản chất dòng lệnh của nó
cho phép Netcat được viết script dễ dàng và tích hợp vào các
tác vụ tự động hóa lớn hơn, hợp lý hóa các hoạt động mạng lặp đi lặp lại. -
Đường hầm dữ liệu: Netcat có thể được sử dụng để tạo một
đường hầm dữ liệu, cho phép chuyển hướng các luồng dữ liệu từ một
từ mạng này sang mạng khác. -
Đồng bộ hóa Thời gian: Nó có thể hỗ trợ
đồng bộ hóa đồng hồ hệ thống trên toàn mạng bằng cách gửi dữ liệu thời gian
giữa các máy. -
Kiểm Tra Bảo Mật: Netcat là một công cụ không thể thiếu trong bảo mật
kiểm tra, mô phỏng các cuộc tấn công mạng hoặc đánh giá hiệu quả của
cấu hình tường lửa. -
Kiểm tra kết nối: Kiểm tra nhanh chóng và hiệu quả
khả năng thiết lập các kết nối TCP hoặc UDP, điều cần thiết cho
thiết lập và bảo trì mạng.
Mỗi khả năng này nhấn mạnh tính linh hoạt của Netcat,
khiến nó trở thành công cụ không thể thiếu trong bộ công cụ mạng. Cho dù là
phát triển, khắc phục sự cố hay phân tích bảo mật, tính đơn giản và sức mạnh của Netcat
khiến nó trở thành công cụ lý tưởng cho các chuyên gia mạng. Nếu bạn
có bất kỳ câu hỏi nào, vui lòng liên hệ với chúng tôi qua đang gửi
vé.
Cũng trong Secure Shell Protocol (SSH)
Hướng dẫn liên quan.
Cần giúp đỡ với điều gì khác?
Thời gian phản hồi trung bình dưới 1 giờ. Nhân viên thực tế, không phải bot.