Как закрыть открытый порт в Ubuntu?

Мне нужна команда для перечисления всех открытых портов на моем компьютере и другая команда для закрытия порта.

Есть какие-нибудь предложения?

Мне нужно закрыть порт некоторых приложений.

netstat может использоваться для просмотра статистики портов.

sudo netstat -lnp

Чтобы перечислить все Lэто пробуждение порты Nумберс с Pпроцесс ответственный за каждого из них. Завершите или завершите процесс, чтобы закрыть порт. (kill, pkill ...)

Без завершения процесса Это невозможно! . Видеть Ручное закрытие порта из командной строки. Другой способ, которым вы можете найти решение для брандмауэра (например, изолировать этот порт от сети)

для закрытия открытого порта в ubuntu вы можете использовать приведенную ниже команду

sudo kill $(sudo lsof -t -i:3000)

на месте 3000 вы можете указать свой номер порта

lsof команда выдаст информацию о файле, открытом процессом

- т : Этот флаг указывает, что lsof должен выдавать краткие выходные данные только с идентификаторами процесса и без заголовка - например, чтобы выходные данные могли передаваться по конвейеру для kill(1). В этом параметре выбирается параметр -w.

- я : Этот флаг выбирает список файлов, любой из которых Интернет-адрес совпадает с адресом, указанным в i. Если адрес не указан, этот параметр выбирает список всех сетевых файлов Internet и x.25 (HP-UX).

<предварительный><код>sudo ufw разрешить 22

sudo ufw отклоняет 22

Вы можете использовать iptables для блокировки порта на сетевом уровне без необходимости закрывать приложение. Порт по-прежнему будет казаться открытым, но будет недоступен.

в качестве альтернативы, это зависит от приложения, некоторые разрешают отключить какой-либо порт (например, dovecot и порт pop3 или imap), а некоторые не могут. Некоторые приложения также могут быть настроены на прослушивание только на локальном хосте или по определенному адресу.

Вы можете использовать netstat -nalp и lsof -i:port инструменты для идентификации процессов/двоичных файлов за открытым портом.

Если вы хотите закрыть порт, вы должны завершить процесс или остановить относительную службу.Если вы хотите запускать службы только для своего локального ящика, вы можете настроить соответствующую службу для прослушивания на localhost/127.0.0.1, а не на всех доступных (0.0.0.0) IP-адресах.

Для отображения списков всех открытых портов:

netstat -lnp

Чтобы закрыть открытый порт:

fuser -k port_no/tcp

пример:

fuser -k 8080/tcp

В обоих случаях вы можете использовать sudo если потребуется.

Если ваш порт открылся из-за запуска службы, такой как vsftpd для службы ftp, вы можете остановить, а затем отключить службу, чтобы исполняемый файл, связанный со службой, тоже был уничтожен. в базовых системах debian вы можете выполнить следующие команды для уничтожения службы:

service SERVICENAME stopsystemctl disable SERVICENAME

Гудлак