通过sshd从本地主机到本地主机的端口的未经复制的ssh连接

我试图找出为什么我在我的安全日志文件上有一些奇怪的连接。 像这样的东西:

Apr 23 11:35:43 li192-61 sshd[11651]: Did not receive identification string from 127.0.0.1 Apr 23 11:35:49 li192-61 sshd[11661]: Connection closed by UNKNOWN 

我有许多这样的连接,每一分钟都是精确的。 所以我使用netstat命令作为netstat -ta --numeric-ports --program | grep 22 netstat -ta --numeric-ports --program | grep 22获取更多信息。 我得到了这个(我删除了我自己的SSH连接):

 tcp 0 0 localhost:56145 localhost:22 TIME_WAIT - 

接下来我试图找出哪一个使用这个端口,所以我使用了lsof -i :22 ,除了我自己的连接之外我什么都没有。

在我启动netstat命令后,我得到了这个:

 tcp 0 0 localhost:45979 localhost:22 TIME_WAIT - 

一个新的端口通过端口22从本地主机用作远程目的地。每分钟都是一样的。

我现在没有更多的想法。 所以这是我的问题:

有没有办法让所有使用SSH连接的进程或获取所有尝试连接到特定端口的进程(例如:45979)?

感谢您的时间 !

这里有一个post,这表明当你有2个竞争的sshd进程试图绑定到同一个端口时,会导致这种types的结果。

您可能希望获得本地控制台,然后运行service sshd stop ,然后检查ps -ef | grep sshd ps -ef | grep sshd用于任何不受服务包装控制的stream氓sshd服务器。

如果你看看netstat头文件:

 Active Internet connections (servers and established) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name 

你会看到高“随机”端口是本地地址。 build立传出连接的程序需要从远程服务器接收答案的端口。 它为此接收一个高范围的端口。

你所看到的是从本地应用程序/脚本到本地主机的SSH连接。

但是,由于某种原因,似乎无法build立连接。 应用程序没有正确authentication自己。

所以你不是在寻找连接到端口45979的应用程序,而是在本地主机上连接到端口22的应用程序。 很可能只是ssh localhost

检查连接的时间,然后检查你的cron时间表和/或cron日志的时间。

将所有这些虚假连接尝试的进程ID与您正在使用的进程ID相关联; 您自己的连接的进程ID不应该改变。

如果是这样,一些设置会导致您的连接重新连接一次又一次(这是可能的SSH在不失连接)