Ответы:
netstat
можно использовать для просмотра статистики портов.
sudo netstat -lnp
Для того, чтобы перечислить все л istening порты п umbers с р rocess ответственным на каждом из них. Завершите или убейте процесс, чтобы закрыть порт. ( kill
, pkill
...)
Без завершения процесса, это невозможно! , См. Закрытие порта вручную из командной строки . Другой способ - поиск брандмауэра (например, изоляция этого порта от сети).
для закрытия открытого порта в Ubuntu вы можете использовать команду ниже
sudo kill $(sudo lsof -t -i:3000)
вместо 3000
вас можно указать номер порта
lsof
команда выдаст информацию о файле, открытом процессом
-t : Этот флаг указывает, что lsof должен генерировать краткий вывод только с идентификаторами процесса и без заголовка - например, чтобы вывод мог быть передан в kill (1). Эта опция выбирает опцию -w.
-i : Этот флаг выбирает список файлов, любой из которых, чей интернет-адрес совпадает с адресом, указанным в i. Если адрес не указан, этот параметр выбирает список всех сетевых файлов Интернета и x.25 (HP-UX).
Вы можете использовать iptables, чтобы заблокировать порт на сетевом уровне, не закрывая приложение. Порт по-прежнему будет открыт, но будет недоступен.
альтернативно, это зависит от приложения, некоторые разрешают отключать некоторые порты (например, dovecot и порт pop3 или imap), а некоторые - нет. Некоторые приложения также можно настроить на прослушивание только на локальном хосте или по определенному адресу.
Вы можете использовать netstat -nalp
и lsof -i:port
инструменты для идентификации процессов / двоичных файлов за открытым портом.
Если вы хотите закрыть порт, вам нужно убить процесс или остановить относительную службу. Если вы хотите запускать службы только для своего локального ящика, вы можете настроить соответствующую службу для прослушивания localhost / 127.0.0.1, а не для всех доступных (0.0.0.0) ips.
Если ваш порт открыт из-за запуска службы, например vsftpd для службы ftp, вы можете остановить, а затем отключить службу, чтобы также был уничтожен исполняемый файл, связанный с этой службой. в базовых системах Debian вы можете запустить следующие команды, чтобы уничтожить сервис:
service SERVICENAME stop
systemctl disable SERVICENAME
Удачи
sudo netstat -lnp
и
Чтобы показать списки всех открытых портов:
netstat -lnp
Чтобы закрыть открытый порт:
fuser -k port_no/tcp
пример:
fuser -k 8080/tcp
В обоих вы можете использовать sudo
при необходимости.