![如何关闭 Ubuntu 中的开放端口?](https://linux22.com/image/1081973/%E5%A6%82%E4%BD%95%E5%85%B3%E9%97%AD%20Ubuntu%20%E4%B8%AD%E7%9A%84%E5%BC%80%E6%94%BE%E7%AB%AF%E5%8F%A3%EF%BC%9F.png)
我需要一个命令来列出我的电脑中所有打开的端口,以及另一个命令来关闭一个端口。
有什么建议么?
我需要关闭一些应用程序的端口。
答案1
netstat
可用于查看端口统计。
sudo netstat -lnp
列出全部大号聆听端口否号码与磷流程对每个端口负责。终止或杀死进程以关闭端口。(kill
,pkill
...)
如果不终止进程,这是不可能的!参见从命令行手动关闭端口. 另一种方法是寻找防火墙解决方案(将该端口与网络隔离)
答案2
要关闭 ubuntu 中的开放端口,您可以使用以下命令
sudo kill $(sudo lsof -t -i:3000)
您3000
可以指定您的端口号
lsof
命令将提供有关进程打开的文件的信息
-t:此标志指定 lsof 应生成仅包含进程标识符且无标头的简洁输出 - 例如,以便输出可以通过管道传输到 kill(1)。此选项选择 -w 选项。
-我:此标志选择其 Internet 地址与 i 中指定的地址相匹配的文件列表。如果未指定地址,则此选项选择所有 Internet 和 x.25 (HP-UX) 网络文件的列表。
答案3
sudo ufw allow 22
sudo ufw deny 22
答案4
您可以使用netstat -nalp
和lsof -i:port
工具来识别开放端口后面的进程/二进制文件。
如果您想要关闭端口,您必须终止进程或者停止相关服务。如果您想要仅为您的本地机器运行服务,您可以配置相应的服务来监听 localhost/127.0.0.1 而不是所有可用的 (0.0.0.0) ips。