Cách sử dụng NMap để kiểm tra máy tính Linux của bạn cho các cổng mở
Một phần quan trọng của việc bảo vệ một hệ thống Linux là khóa các cổng không sử dụng để ngăn chặn chúng khỏi bị truy cập và cuối cùng bị tấn công bởi những kẻ tấn công.
Các hệ thống Linux được xây dựng để trở thành máy chủ, vì vậy những kẻ tấn công sẽ cố gắng sử dụng một hệ thống bị xâm nhập theo cách đó, ngay cả khi hệ thống đó được thiết lập để trở thành một máy tính để bàn.
Thông qua việc sử dụng các công cụ như NMAP, bạn có thể tìm ra cổng nào đang mở trên hệ thống Linux của bạn, dừng các dịch vụ không mong muốn và không sử dụng, và có thể đóng các cổng đó hoàn toàn bằng iptables.
Cài đặt NMAP
Trước tiên, bạn cần phải cài đặt NMAP. Đó là một công cụ bảo mật nổi tiếng và được tôn trọng, vì vậy nó có sẵn trong hầu hết các kho lưu trữ chính thức của mỗi phân phối. Để cài đặt nó trên Ubuntu, hãy chạy như sau.
sudo apt install nmap
Thực hiện quét
Mặc dù là một công cụ dòng lệnh đơn giản, NMAP có rất nhiều tùy chọn để thực hiện vô số các lần quét khác nhau trong các trường hợp khác nhau. Bạn sẽ không cần tất cả chúng cho việc này, nhưng chúng có thể đáng thử nghiệm trên mạng của riêng bạn cho mục đích học tập.
Tất cả những gì bạn cần làm ở đây là thực hiện quét đơn giản máy tính của riêng bạn. NMAP sẽ tìm kiếm thông qua các cổng phổ biến nhất trên máy tính của bạn và xem cổng nào đang mở và đang sử dụng.
Để quét máy tính của bạn, bạn sẽ cần địa chỉ IP của nó. Nếu bạn không biết nó, hãy chạy ifconfig
trong một thiết bị đầu cuối để tìm nó.
Khi bạn có IP của máy tính, bạn có thể sử dụng nó để quét bằng NMAP.
sudo nmap -sS -O 192.168.1.100
Thay thế IP của máy tính của bạn thành lệnh. NMAP sẽ mất một vài giây trong khi nó quét máy tính của bạn, nó sẽ cho bạn thấy dịch vụ nào đang chạy trên các cổng nào và các cổng đó có mở hay không. (Tất cả chúng sẽ được mở.) Nó cũng sẽ cố gắng cho bạn biết dịch vụ nào đang sử dụng cổng đó. Đó là một phần thông tin rất quan trọng. Hãy lưu ý nếu NMAP có thể khám phá dịch vụ.
Nếu bạn muốn biết thêm thông tin về máy tính của mình từ NMAP, hãy thử sử dụng cờ -A
để quét dữ liệu một cách tích cực.
sudo nmap -A 192.168.1.100
Bạn sẽ thấy nhiều thông tin hơn, hầu hết trong số đó bạn thực sự không cần, trừ khi bạn thấy điều gì đó có khả năng đáng ngờ.
Cuối cùng, nếu bạn muốn siêu hoang tưởng, bạn có thể quét mọi cổng trên máy tính của mình. Nó sẽ mất một thời gian dài . Bọn họ có hàng ngàn người.
sudo nmap -sS -O -p- 192.168.1.100
Cổng
Hãy xem các cổng mở mà NMAP đã phát hiện ra. Bạn có biết tất cả những gì họ đang có? Bạn có sử dụng tất cả chúng thường xuyên không? Nếu bạn trả lời “Không” cho một trong hai câu hỏi, thì điều đó đáng để điều tra.
Đầu tiên, Ubuntu và các bản phân phối dựa trên Debian khác xử lý các dịch vụ một cách kỳ lạ. Chúng bắt đầu mọi chương trình chạy tự động như một dịch vụ ngay sau khi nó được cài đặt. Trong khi đó có vẻ thuận tiện, nó thực sự không có ý nghĩa. Bạn sẽ không bao giờ muốn chạy một dịch vụ chưa được cấu hình trên một máy chủ, vì vậy bạn sẽ phải tắt dịch vụ ngay lập tức để cấu hình nó để sử dụng thường xuyên.
Nó cũng tạo ra một vấn đề với các dịch vụ "ảo" chạy mà không có kiến thức của chủ sở hữu. Trình quản lý gói kéo theo tấn phụ thuộc khi họ cài đặt chương trình. Hầu hết thời gian bạn không đọc qua tất cả chúng, đặc biệt nếu bạn đang vội vàng. Điều đó có nghĩa là bạn có thể có các dịch vụ chạy trong nền trên máy tính của bạn mà bạn không biết hoặc không đồng ý. Đó có thể là nguyên nhân cho bất kỳ cổng mở không xác định nào mà bạn đã khám phá.
Dưới đây là một số cổng phổ biến nhất được sử dụng trên các hệ thống Linux:
- 21 - FTP
- 22 - SSH
- 25 - SMTP (gửi email)
- 53 - DNS (dịch vụ tên miền)
- 80 - HTTP (máy chủ web)
- 110 - POP3 (hộp thư email)
- 123 - NTP (Giao thức thời gian mạng)
- 143 - IMAP (hộp thư đến email)
- 443 - HTTPS (máy chủ web bảo mật)
- 465 - SMTPS (gửi email an toàn)
- 631 - CUPS (máy chủ in)
- 993 - IMAPS (hộp thư email an toàn)
- 995 - POP3 (hộp thư email an toàn)
Có nhiều hơn, tất nhiên, và nếu bạn tìm thấy một hoàn toàn ra khỏi bình thường, hãy tìm nó trực tuyến. Nếu bạn tìm thấy bất kỳ một trong số này chạy khi bạn không cố ý chạy dịch vụ đó, hãy tắt nó đi.
Tắt dịch vụ
Vì vậy, bạn đã phát hiện ra một vài dịch vụ không mong muốn đang chạy trên máy tính của mình. Đó không phải là một vấn đề lớn. Bạn có thể sử dụng Systemd để tắt chúng và tắt chúng để chúng không chạy khi khởi động trong lần khởi động máy tính tiếp theo của bạn.
sudo systemctl dừng apache2
Lệnh trên dừng máy chủ web apache2. Sau đó, nếu bạn muốn tắt nó khi khởi động, hãy chạy lệnh tiếp theo.
sudo systemctl vô hiệu hóa apache2
Làm điều đó cho mỗi dịch vụ mà bạn ngăn không cho chạy. Nếu bạn gặp khó khăn trong việc tìm ra tên chính xác của dịch vụ, bạn có thể liệt kê những gì trong thư mục dịch vụ.
sudo ls -lah /etc/init.d
Chặn cổng với Iptables
Nếu bạn muốn tiến thêm một bước nữa và khóa các cổng mà bạn không sử dụng, bạn có thể thiết lập các quy tắc trong tường lửa iptables để chỉ cho phép các cổng mà bạn sử dụng và chặn tất cả lưu lượng khác.
Đó là một quá trình hoàn toàn riêng biệt, rằng, nếu bạn không quen thuộc, sẽ mất một thời gian. Để tìm hiểu thêm về cách bảo vệ máy tính để bàn Linux của bạn bằng iptables, hãy xem bài viết của chúng tôi về chủ đề này.
Nếu có điều gì đó sai
Bạn có thể đã vấp vào một cái gì đó thực sự đáng ngờ. Nó xảy ra. Đôi khi nó không có gì phải quan tâm, thời gian khác nó có thể được. Để đảm bảo rằng nó không phải thứ gì đó sẽ gây hại cho máy tính của bạn hoặc làm điều gì đó về nó nếu nó là, bạn sẽ cần phải quét máy tính của bạn để tìm virus và rootkit.
Trước khi bạn nghi ngờ khả năng này, các máy Linux có thể bị nhiễm phần mềm độc hại. Để tìm hiểu cách quét máy của bạn, hãy xem hướng dẫn về phần mềm độc hại Linux của chúng tôi.
Tiến về phía trước
Bất kể kết quả quét của bạn là gì, bạn nên kiểm tra máy tính của mình thường xuyên với NMAP để xem liệu có bất kỳ điều gì đáng ngờ hay chỉ là chạy không mong muốn. Hãy nhớ rằng các dịch vụ không mong muốn cũng là một bề mặt tấn công tiềm năng cho những kẻ xâm nhập. Máy nạc là một cỗ máy an toàn hơn.