Câu trả lời:
netstat
có thể được sử dụng để xem stat stat.
sudo netstat -lnp
Để liệt kê tất cả các l istening cổng n umbers với p rocess chịu trách nhiệm trên mỗi một. Chấm dứt hoặc giết quá trình đóng cổng. ( kill
, pkill
...)
Nếu không chấm dứt quá trình, nó là không thể! . Xem Đóng thủ công một cổng từ dòng lệnh . Theo cách khác, bạn có thể tìm kiếm một giải pháp tường lửa (như cách ly cổng đó khỏi mạng)
để đóng cổng mở trong Ubuntu, bạn có thể sử dụng lệnh bên dưới
sudo kill $(sudo lsof -t -i:3000)
thay cho 3000
bạn có thể chỉ định số cổng của bạn
lsof
lệnh sẽ cung cấp thông tin về tập tin được mở theo quy trình
-t : Cờ này chỉ định rằng lsof sẽ tạo đầu ra ngắn gọn chỉ với các định danh quy trình và không có tiêu đề - ví dụ: để đầu ra có thể được dẫn đến tiêu diệt (1). Tùy chọn này chọn tùy chọn -w.
-i : Cờ này chọn danh sách các tệp bất kỳ địa chỉ Internet nào khớp với địa chỉ được chỉ định trong i. Nếu không có địa chỉ được chỉ định, tùy chọn này sẽ chọn danh sách của tất cả các tệp mạng Internet và x.25 (HP-UX).
Bạn có thể sử dụng iptables để chặn cổng ở cấp độ mạng mà không cần phải đóng ứng dụng. Cổng vẫn sẽ xuất hiện mở, nhưng sẽ không thể truy cập được.
cách khác, điều này phụ thuộc vào ứng dụng, một số giấy phép để vô hiệu hóa một số cổng (nghĩ dovecot và cổng pop3 hoặc imap), và một số không thể. Một số ứng dụng cũng có thể được cấu hình để chỉ nghe trên localhost hoặc một địa chỉ cụ thể.
Bạn có thể sử dụng netstat -nalp
và lsof -i:port
các công cụ để xác định quá trình / nhị phân đằng sau cổng mở.
Nếu bạn muốn đóng cổng, bạn phải hủy tiến trình hoặc dừng dịch vụ tương đối. Nếu bạn chỉ muốn chạy các dịch vụ cho hộp cục bộ của mình, bạn có thể định cấu hình dịch vụ tương ứng để nghe trên localhost / 127.0.0.1 không phải trên tất cả các ips có sẵn (0.0.0.0).
Nếu cổng của bạn mở do chạy một dịch vụ, như vsftpd cho dịch vụ ftp, bạn có thể dừng và sau đó vô hiệu hóa dịch vụ để tệp thực thi liên quan đến dịch vụ cũng sẽ bị hủy. trong các hệ thống cơ sở debian, bạn có thể chạy các lệnh dưới đây để phá hủy một dịch vụ:
service SERVICENAME stop
systemctl disable SERVICENAME
Chúc may mắn
sudo netstat -lnp
và chạy các lệnh được đề xuất của bạn để dừng cổng 22 :)
Để hiển thị danh sách của tất cả các cổng mở:
netstat -lnp
Để đóng một cổng mở:
fuser -k port_no/tcp
thí dụ:
fuser -k 8080/tcp
Trong cả hai bạn có thể sử dụng sudo
nếu cần thiết.