我从来不知道cli
(命令行界面)需要一个端口来监听。为什么命令行界面需要tcp
打开一个端口?还有cli
其他原因吗?
在我的 Ubuntu 16.04 上打开这个端口正常吗?
这是我的netstat
输出:
$ sudo netstat -ntlp
tcp 0 0 127.0.0.1:3306 0.0.0.0:* LISTEN 959/mysqld
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN 1474/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 932/sshd
tcp 0 0 127.0.0.1:41049 0.0.0.0:* LISTEN 4811/cli
tcp6 0 0 :::80 :::* LISTEN 1058/apache2
tcp6 0 0 :::22 :::* LISTEN 932/sshd
其他端口我没问题,因为我需要 apachessh
和mysql
。在谷歌搜索后,我发现有 是正常的,dnsmasq
但没有关于 的信息cli
。
答案1
要检查哪个进程正在监听41049
端口,您可以运行以下命令:
ps -o args= -p "$(sudo lsof -t -i:41049)"
正如你所说的此评论,输出是 refer to keepass2
package。所以看看这个包:
我正在尝试安装此包并检查输出:
sudo apt install keepass2
输出为sudo netstat -ntlp
:
tcp 0 0 127.0.0.1:40967 0.0.0.0:* LISTEN 8393/cli
因此安装后keepass2
,cli
正在监听本地TCP
端口。
所以,你的输出很正常。
我真的不知道为什么keepass2
要监听这个端口。但这可能是一个错误。有关它的描述,您可以查看此关联。
但是正因为如此,keepass2
它可以在 Ubuntu 的官方存储库中使用,所以它不会对您构成威胁。
您可以在此处查看此包的描述Ubuntu 软件包。