ssh-agent – 这个过程做什么?

ssh-agent – 这个过程做什么?

我在系统监视器中发现了一些奇怪的东西。我的进程列表中有“ssh-agent”,现在我对 SSH 不太熟悉,但我知道在 VANILLA 桌面 Ubuntu 安装上运行 SSH 服务是不正常的。我运行了 rkhunter,结果没有返回任何特别的信息。

我运行了此命令,结果如下:

trev@trev-pc:~$ ps -aux | grep ssh
trev     1635  0.0  0.0  11140    48 ?        Ss   Feb18   0:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch mate-session
trev    15992  0.0  0.0  15192  2144 pts/1    S+   20:06   0:00 grep --color=auto ssh

这是怎么回事?这值得担心吗?

答案1

不,这不是什么值得担心的事情。这是ssh-agent,而不是sshd,它是 SSH 守护进程。如果你看一下man ssh-agent

 ssh-agent is a program to hold private keys used for public key
 authentication (RSA, DSA, ECDSA, ED25519).  The idea is that ssh-agent is
 started in the beginning of an X-session or a login session, and all
 other windows or programs are started as clients to the ssh-agent
 program.

它的工作方式是,当你使用 SSH 连接到某个地方时(默认安装命令行客户端ssh,其他程序,如文件浏览器也可以充当 SSH 客户端),连接程序将使用代理而不是加载私钥本身:

 The agent will never send a private key over its request channel.
 Instead, operations that require a private key will be performed by the
 agent, and the result will be returned to the requester.  This way,
 private keys are not exposed to clients using the agent.

这样做的好处是,你只需要在每个会话中解锁一次私钥(代理会将其存储在内存中),而客户端绝不直接查看未加密的私钥。

这是对面的某种程度上,是一个后门。

相关内容