Вы, вероятно, могли бы просто узнать, какой процесс открыл сокет, с которым связан порт, и убить этот процесс.
Но вы должны понимать, что если бы у этого процесса не было обработчика, который деинициализирует все вещи, которые он использовал (открытые файлы, сокеты, вилки, вещи, которые могут задерживаться, если он не будет закрыт должным образом по завершении работы), то вы бы создали такое перетаскивание системы. Кроме того, сокет будет оставаться открытым до тех пор, пока ядро не поймет, что процесс был убит. Обычно это занимает около минуты.
Я полагаю, лучший вопрос будет: Какой порт (к какому процессу) вы хотите остановить?
Если вы пытаетесь положить конец бэкдору или вирусу, который вы нашли, то вы должны, по крайней мере, узнать, какие данные идут туда и обратно, прежде чем вы их закончите. (wireshark хорош для этого) (И имя исполняемого процесса, чтобы вы могли удалить его и предотвратить возврат при перезагрузке) или, если это что-то, что вы установили (например, HTTPD или FTPD или что-то в этом роде), то вы уже должны иметь доступ к самому процессу.
Обычно он будет иметь управляющую программу (HTTPD stop|start или что-то в этом роде). Или, если это системная вещь, вы, вероятно, не должны связываться с ней. В любом случае, я подумал, что так как все остальные дают вам “как”, я должен дать вам предостережения.