所以我遇到了一个奇怪的问题,即使 sshd 已停止,我的一个盒子仍在接受 ssh 端口 (22) 上的连接。我尝试通过典型方式识别监听过程
sudo netstat -antp | grep 22 # nothing
sudo unhide-tcp # no hidden tcp ports
当我尝试连接到端口 22 时,它会要求输入密码,即使我已经在这台机器上设置了基于密钥的身份验证。
我担心我的机器上是否存在 rootkit 或类似的恶意软件。
你以前见过类似的东西吗?
操作系统 - Ubuntu 14.04 LTS
答案1
如果这确实是一个隐藏进程,并且你没有犯某种错误(如 Uwe 上面提到的 inetd),请尝试以下操作:
- 直接从以太网向 22 端口发送大量虚假连接
- 查看顶部弹出的内容
- 如果没有弹出任何内容,至少看看负载是否显著增加
为了实现所有这些,您必须抑制其余的流量,因此在生产服务器上这可能会有问题。
答案2
即使您已经设置了基于密钥的身份验证机制 - 它也应该通过诸如 ssh 之类的协议进行。但对于您来说,您可以尝试以下方法:
登录服务器并
尾部-f / var / log / secure
然后从另一个终端尝试登录并查看那里记录了什么日志。
检查 SSH 是否也配置为侦听另一个端口——在 sshd_config 文件中
检查iptables--查看是否有端口转发检查进程
sudo ps -ef |grep -i ssh
使用 netstat 再次仔细检查所有进程
网络状态-tulpn