如何杀死/关闭活动的 UNIX 域套接字文件 (ssh-agent / SSH_AUTH_SOCK)?

问题描述

系统

Centos 7,鱼壳

OpenSSH_7.4p1、OpenSSL 1.0.2k-fips


您好,我正在为我的 django 应用程序使用托管服务,并尝试通过 ssh 连接到我的 GITHUB。到目前为止它有效,但我仍然有问题要理解 Linux 上的 SSH-AGENT。在我的 Windows 开发计算机上,我或多或少地让它运行。我将所有私钥添加到 ssh-agent,我所要做的就是在 Powershell 中启动它,并且我的所有身份都已连接。 然而,在我的 Linux 主机上,有时它可以工作,有时我不得不再次将我的私人密钥的密码输入其中。

然而,在了解ssh-agent和设置我的fish shell的过程中,我创建了一堆unix socket文件

netstat -a -o -n

Active UNIX domain sockets (only servers)
Proto RefCnt Flags       Type       State         I-Node   Path
unix  2      [ ACC ]     STREAM     LISTENING     1163740407 /tmp/ssh-HakswcetgEcv/agent.9203
unix  2      [ ACC ]     STREAM     LISTENING     1163533225 /tmp/ssh-ObzIe9e7N4Vr/agent.27024
unix  2      [ ACC ]     STREAM     LISTENING     1130501944 /tmp/ssh-WXEwzRbg7nl2/agent.2732
unix  2      [ ACC ]     STREAM     LISTENING     1163724391 /tmp/ssh-y4qU2Xj9N9y6/agent.8775
unix  2      [ ACC ]     STREAM     LISTENING     1163607738 /tmp/ssh-le1k3SipdduJ/agent.2397
unix  2      [ ACC ]     STREAM     LISTENING     1163514726 /tmp/ssh-3pjyPbWPQR9p/agent.26458
<....>

env
<...>
SSH_AGENT_PID=21410
SSH_AUTH_SOCK=/tmp/ssh-KSTlkqQ2RP3i/agent.21407
SSH_CLIENT=xxx.xxxx.xxxx
SSH_CONNECTION=xxxx.xxxxx
SSH_TTY=/dev/pts/1

有些我可以用 ssh-agent -a /tmp/ssh-y4qU2Xj9N9y6 $SHELL 绑定,而有些则显示 bind: Address already in use 即使 ps aux

中没有显示其他进程
ps aux

USER       PID %cpu %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
user123  0.0  0.0 222292 16876 ?        Ss   Jan13  14:47 /opt/myhostingservice/python-
user123  14652  0.0  0.0 155448  1832 pts/1    R+   21:10   0:00 ps aux
user123  25322  0.0  0.0 424936  4876 pts/1    Ss   20:36   0:01 -fish

然后我想绑定套接字并杀死它。

ssh-agent -a /tmp/ssh-yx3HYgzUuTK7

SSH_AUTH_SOCK=/tmp/ssh-yx3HYgzUuTK7; export SSH_AUTH_SOCK;
SSH_AGENT_PID=5531; export SSH_AGENT_PID;
echo Agent pid 5531;

ssh-agent -k
kill: No such process

eval (ssh-agent -k)
kill: No such process

好的,然后使用不同的套接字。

ssh-agent -a  /tmp/ssh-VHFqM3kX4lQ8 $SHELL
Linux lalaland.somehosting.com

ssh-agent -k
unset SSH_AUTH_SOCK;
unset SSH_AGENT_PID;
echo Agent pid 11162 killed;

但它仍然存在。

netstat -a -o -n

Active UNIX domain sockets (servers and established)
Proto RefCnt Flags       Type       State         I-Node   Path
unix  2      [ ACC ]     STREAM     LISTENING     1129594832 /tmp/ssh-VHFqM3kX4lQ8/agent.13786

和环境变量被设置为这个新的绑定。

env
SSH_AGENT_PID=11162
SSH_AUTH_SOCK=/tmp/ssh-VHFqM3kX4lQ8
SSH_CLIENT=xx.xx.xxx.
SSH_CONNECTION=xxx.xxx.xxx.
SSH_TTY=/dev/pts/1

问题

所以我的问题是如何通过命令行删除/结束/关闭这些文件套接字?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)