如何确定哪个 ftp 服务器在我的 ubuntu 机器上运行

Dr.*_*ein 4 ubuntu ssh ftp

我可以使用用户名 root 和用于 root ssh 访问的相同密码通过 ftp 访问我的 ubuntu 框。

我似乎无法通过 ssh 使用其他可以正常使用的用户名 ftp 进入框。我试过在 /etc/ 中寻找 .vsftpd 之类的文件,但还没有找到乐趣,我是在找对的树吗?

谢谢

cor*_*ump 12

该命令netstat -tanp将向您显示哪个 PID 与哪个端口相关联,查找这样的行以查找在端口 21 上侦听的守护进程:

tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      1450/sshd
Run Code Online (Sandbox Code Playgroud)

但当然端口号为 21 而不是 22(ftp 为 21)。然后您可以使用dpkg -S <binary>查看提供它的包。<binary>是 netstat 最后一列中的守护进程名称,在 PID 之后。


txw*_*ger 7

您可以运行 sudo lsof 查看所有打开的文件(包括套接字)并找出哪个应用程序使用 TCP 端口 21 和/或 22。


Mih*_*aiM 6

telnet ip.addr.of.host ftp

您可能会得到一个以 220 开头的链接,其中包含软件名称和版本。对于 vsftpd:

220 (vsFTPd 2.0.4)
Run Code Online (Sandbox Code Playgroud)


小智 6

这是一个“有趣”的方法来做到这一点。首先你必须安装 dpkg-awk。

dpkg-awk 'Status:installed' 'Provides:ftp-server' -- Package
Run Code Online (Sandbox Code Playgroud)

翻译:匹配已安装并提供 ftp-server 元包的包。其中,仅打印 Package: 行。