我可以通过 ftp 使用用户名 root 和用于 root ssh 访问的相同密码访问我的 ubuntu 盒。
我似乎无法使用其他用户名通过 ssh ftp 进入该框。我尝试在 /etc/ 中查找 .vsftpd 之类的文件,但目前还没有找到,我找对地方了吗?
谢谢
答案1
您可以运行 sudo lsof 查看所有打开的文件(包括套接字)并找出哪个应用程序使用 TCP 端口 21 和/或 22。
答案2
该命令netstat -tanp
将显示哪个 PID 与哪个端口相关联,查找如下行以找到在端口 21 上侦听的守护进程:
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1450/sshd
但端口号当然是 21 而不是 22(ftp 为 21)。然后您可以使用它dpkg -S <binary>
来查看哪个包正在提供它。<binary>
是 netstat 最后一列中 PID 之后的守护进程的名称。
答案3
这是一个“有趣”的方法。首先你必须安装 dpkg-awk。
dpkg-awk 'Status:installed' 'Provides:ftp-server' -- Package
翻译:匹配已安装且提供 ftp-server 元包的软件包。其中,仅打印 Package: 行。
答案4
输入ftp
然后status
。版本和使用的 ftp 服务将显示如下:
ftp> status
Not connected.
No proxy connection.
Gate ftp: off, server (none), port ftpgate.
Passive mode: on; fallback to active mode: on.
Mode: ; Type: ; Form: ; Structure: .
Verbose: on; Bell: off; Prompting: on; Globbing: on.
Store unique: off; Receive unique: off.
Preserve modification times: on.
Case: off; CR stripping: on.
Ntrans: off.
Nmap: off.
Hash mark printing: off; Mark count: 1024; Progress bar: on.
Get transfer rate throttle: off; maximum: 0; increment 1024.
Put transfer rate throttle: off; maximum: 0; increment 1024.
Socket buffer sizes: send 16384, receive 87380.
Use of PORT cmds: on.
Use of EPSV/EPRT cmds for IPv4: on.
Use of EPSV/EPRT cmds for IPv6: on.
Command line editing: on.
Version: tnftp 20100108
ftp>
tnftp
在我的情况下使用 。此外,您会看到所有选项都已设置。使用 退出quit
。