Linux/Mac Terminal Tutorial: The Grep Command - Search Files and Directories for Patterns of Text
Mục lục:
- Cổng mở là gì
- Kiểm tra cổng mở với
nmap - Kiểm tra cổng mở với
netcat - Kiểm tra cổng mở bằng thiết bị Bash Pseudo
- Phần kết luận
Cho dù bạn đang khắc phục sự cố kết nối mạng hoặc định cấu hình tường lửa, một trong những điều đầu tiên cần kiểm tra là cổng nào thực sự được mở trên hệ thống của bạn.
Bài viết này mô tả một số cách tiếp cận để tìm ra cổng nào được mở ra bên ngoài trên hệ thống Linux của bạn.
Cổng mở là gì
Cổng nghe là cổng mạng mà ứng dụng nghe. Bạn có thể nhận được danh sách các cổng nghe trên hệ thống của mình bằng cách truy vấn ngăn xếp mạng bằng các lệnh như
ss
,
netstat
hoặc
lsof
. Mỗi cổng nghe có thể được mở hoặc đóng (được lọc) bằng tường lửa.
Nói chung, một cổng mở là một cổng mạng chấp nhận các gói đến từ các địa điểm từ xa.
Ví dụ: nếu bạn đang chạy một máy chủ web nghe trên các cổng
80
và
443
và các cổng đó được mở trên tường lửa của bạn, bất kỳ ai (trừ ips bị chặn) sẽ có thể truy cập các trang web được lưu trữ trên máy chủ web của bạn bằng trình duyệt của anh ấy. Trong trường hợp này, cả
80
và
443
đều là cổng mở.
Các cổng mở có thể gây ra rủi ro bảo mật vì mỗi cổng mở có thể được sử dụng bởi những kẻ tấn công để khai thác lỗ hổng hoặc thực hiện bất kỳ loại tấn công nào khác. Bạn chỉ nên hiển thị các cổng cần thiết cho chức năng của ứng dụng và đóng tất cả các cổng khác.
Kiểm tra cổng mở với
nmap
Nmap là một công cụ quét mạng mạnh mẽ có thể quét các máy chủ đơn và mạng lớn. Nó chủ yếu được sử dụng để kiểm tra bảo mật và kiểm tra thâm nhập.
Nếu có sẵn,
nmap
sẽ là công cụ đầu tiên của bạn khi quét cổng. Bên cạnh
nmap
quét cổng cũng có thể phát hiện địa chỉ Mac, loại hệ điều hành, phiên bản kernel và nhiều hơn nữa.
Lệnh sau được phát ra từ bàn điều khiển xác định cổng nào đang lắng nghe các kết nối TCP từ mạng:
sudo nmap -sT -p- 10.10.8.8
-sT
yêu cầu
nmap
quét các cổng TCP và
-p-
để quét tất cả các cổng 65535. Nếu
-p-
không được sử dụng,
nmap
sẽ chỉ quét 1000 cổng.
Starting Nmap 7.60 (https://nmap.org) at 2019-07-09 23:10 CEST Nmap scan report for 10.10.8.8 Host is up (0.0012s latency). Not shown: 998 closed ports PORT STATE SERVICE 22/tcp open ssh 80/tcp open http MAC Address: 08:00:27:05:49:23 (Oracle VirtualBox virtual NIC) Nmap done: 1 IP address (1 host up) scanned in 0.41 seconds
Đầu ra ở trên cho thấy chỉ các cổng
22
,
80
và
8069
được mở trên hệ thống đích.
Để quét các cổng UDP, hãy sử dụng
-sU
thay vì
-sT
:
sudo nmap -sU -p- 10.10.8.8
Để biết thêm thông tin, hãy truy cập trang nmap man và đọc về tất cả các tùy chọn mạnh mẽ khác của công cụ này.
Kiểm tra cổng mở với
netcat
Netcat (hoặc
nc
) là một công cụ dòng lệnh có thể đọc và ghi dữ liệu trên các kết nối mạng, sử dụng giao thức TCP hoặc UDP.
Với
netcat
bạn có thể quét một cổng hoặc một phạm vi cổng.
Ví dụ: để quét các cổng TCP mở trên máy từ xa có địa chỉ IP
10.10.8.8
trong phạm vi
20-80
bạn sẽ sử dụng lệnh sau:
nc -z -v 10.10.8.8 20-80
Tùy chọn
-z
yêu cầu
nc
chỉ quét các cổng mở, không gửi bất kỳ dữ liệu nào và
-v
là để biết thêm thông tin dài dòng.
Đầu ra sẽ trông giống như thế này:
nc: connect to 10.10.8.8 port 20 (tcp) failed: Connection refused nc: connect to 10.10.8.8 port 21 (tcp) failed: Connection refused Connection to 10.10.8.8 22 port succeeded!… Connection to 10.10.8.8 80 port succeeded!
nc -z -v 10.10.8.8 20-80 2>&1 | grep succeeded
Connection to 10.10.8.8 22 port succeeded! Connection to 10.10.8.8 80 port succeeded!
Để quét các cổng UDP, hãy chuyển tùy chọn
-u
cho lệnh
nc
:
nc -z -v -u 10.10.8.8 20-80 2>&1 | grep succeeded
Kiểm tra cổng mở bằng thiết bị Bash Pseudo
Một cách khác để kiểm tra xem một cổng nào đó được mở hay đóng bằng cách sử dụng Bash shell
/dev/tcp/..
hoặc
/dev/udp/..
thiết bị giả.
Khi thực hiện lệnh trên thiết bị giả
/dev/$PROTOCOL/$HOST/$IP
a
/dev/$PROTOCOL/$HOST/$IP
, Bash sẽ mở kết nối TCP hoặc UDP đến máy chủ được chỉ định trên cổng được chỉ định.
Câu lệnh if..else sau đây sẽ kiểm tra xem cổng
443
trên
kernel.org
có mở không:
if timeout 5 bash -c ' /dev/null' then echo "Port is open" else echo "Port is closed" fi
if timeout 5 bash -c ' /dev/null' then echo "Port is open" else echo "Port is closed" fi
Port is open
Làm thế nào để mã trên hoạt động?
Thời gian chờ mặc định khi kết nối với cổng bằng thiết bị giả là rất lớn, vì vậy chúng tôi đang sử dụng lệnh
timeout
để giết lệnh kiểm tra sau 5 giây. Nếu kết nối được thiết lập tới
kernel.org
cổng
443
, lệnh kiểm tra sẽ trả về true.
Bạn cũng có thể sử dụng vòng lặp for để kiểm tra phạm vi cổng:
for PORT in {20..80}; do timeout 1 bash -c " /dev/null" && echo "port $PORT is open" done
for PORT in {20..80}; do timeout 1 bash -c " /dev/null" && echo "port $PORT is open" done
Đầu ra sẽ trông giống như thế này:
port 22 is open port 80 is open
Phần kết luận
Chúng tôi đã chỉ cho bạn một số công cụ mà bạn có thể sử dụng để quét các cổng mở. Ngoài ra còn có các tiện ích và phương thức khác để kiểm tra các cổng mở, ví dụ: bạn có thể sử dụng mô-đun
socket
Python,
curl
,
telnet
hoặc
wget
.
Các công ty gia công phần mềm Ấn Độ nằm trong số 10 công ty hàng đầu thế giới về dịch vụ cơ sở hạ tầng CNTT, phản ánh sự hấp dẫn ngày càng tăng của các dịch vụ ngoài khơi, theo công ty tư vấn gia công phần mềm (TPI). các hợp đồng đóng cửa trong nửa đầu năm nay, không chỉ trong lĩnh vực phát triển và bảo trì ứng dụng truyền thống mạnh mẽ mà còn trong các dịch vụ cơ sở hạ tầng, Siddharth Pai, một đối tác tại TPI, cho biết. chẳng hạn như HCL Technologies và Wipro đã đưa nó vào top 10 trong các dịch
Các công ty Ấn Độ đã nằm trong top 10 năm ngoái trong ADM nhưng không phải trong các dịch vụ cơ sở hạ tầng.
Microsoft và Yahoo đã đạt được thỏa thuận tìm kiếm được mong đợi từ thứ tư, theo đó công cụ tìm kiếm Bing của Microsoft sẽ cung cấp dịch vụ quảng cáo tìm kiếm cao cấp cho cả hai công ty. một năm rưỡi để tấn công và bắt đầu với một giá thầu không được yêu cầu của Microsoft để mua Yahoo vào tháng 2, nhằm mục đích mang lại cho hai công ty đòn bẩy chống lại Google khổng lồ tìm kiếm, dẫn đầu thị trường trong doanh thu quảng cáo trực tuyến theo định hướng tìm kiếm. cho các công ty, lực lượng kết hợp c
[ĐọC thêm: The b Các thỏa thuận này xuất hiện khoảng hai tháng sau khi Microsoft cải tiến công cụ tìm kiếm của mình và khởi chạy lại nó như Bing, công cụ tìm kiếm của Yahoo và đã nhận được đánh giá tích cực từ người dùng, theo thống kê của các nhà phân tích. Về phần mình, Yahoo có một mạng lưới các nhà quảng cáo lớn hơn Microsoft, và Microsoft sẽ có lợi ngay bây giờ bằng cách truy cập chúng.
Google đề nghị giải quyết một số vụ kiện chống độc quyền của Liên minh châu Âu để tiếp tục phân biệt đối xử với các công ty tìm kiếm khác, nhưng đưa một nhãn cảnh báo lên thực tế, một nhóm công nghiệp cho biết. ghi nhãn các dịch vụ nội bộ của riêng mình để chỉ ra cho người dùng rằng họ không phải là kết quả của "tìm kiếm tự nhiên". Nó cũng đề xuất bao gồm các liên kết đến các công cụ tìm kiếm đối thủ cho các kết quả tìm kiếm nhà hàng chuyên gia tạo ra doanh thu cho Google. Các dịch vụ
Shivaun Raff, Giám đốc điều hành của Foundem, một trong những người đầu tiên phàn nàn với Ủy ban về Google, cho biết: "Các đề xuất được mô tả trong giới truyền thông Đầu tiên, âm thanh như họ có thể phát trực tiếp vào tay Google. Thoạt nhìn, họ đọc nhiều hơn như một trích xuất từ bản đồ phát triển của Google hơn là nỗ lực thực sự để giải quyết các mối lo ngại của Ủy ban về thao tác tìm kiếm. "







