如何使用ftp(/ usr / bin / ftp)匿名登录?

时间:2010-10-14 19:41:39

标签: ftp

我正在尝试连接到允许匿名访问的FTP服务器,但我不知道如何指定执行此操作所需的相应用户名/密码。

我尝试使用匿名/匿名作为用户/传递没有运气,以及空字符串和两者的各种组合等。

我必须要有一些简单的东西,我可以使用curl ftp://server/

使用python:

stu@sente ~ $ cat - | python
import ftplib
ftp = ftplib.FTP("ftp.server")
ftp.set_debuglevel(2)
ftp.connect()
ftp.login()
list = ftp.nlst()
ftp.close()
print "\n", " ".join(list)
^D

*get* '220 ftp.server NcFTPd Server (licensed copy) ready.\r\n'
*resp* '220 ftp.server NcFTPd Server (licensed copy) ready.'
*cmd* 'USER anonymous'
*put* 'USER anonymous\r\n'
*get* '331 Guest login ok, send your complete e-mail address as password.\r\n'
*resp* '331 Guest login ok, send your complete e-mail address as password.'
*cmd* 'PASS **********'
*put* 'PASS **********\r\n'
*get* '230 Logged in anonymously.\r\n'
*resp* '230 Logged in anonymously.'
*cmd* 'TYPE A'
*put* 'TYPE A\r\n'
*get* '200 Type okay.\r\n'
*resp* '200 Type okay.'
*cmd* 'PASV'
*put* 'PASV\r\n'
*get* '227 Entering Passive Mode (12,161,242,12,128,138)\r\n'
*resp* '227 Entering Passive Mode (12,161,242,12,128,138)'
*cmd* 'NLST'
*put* 'NLST\r\n'
*get* '150 Data connection accepted from 208.118.225.99:38451; transfer starting.\r\n'
*resp* '150 Data connection accepted from 208.118.225.99:38451; transfer starting.'
*get* '226 Listing completed.\r\n'
*resp* '226 Listing completed.'

Obin bin pub public sci_tech_med

3 个答案:

答案 0 :(得分:22)

匿名ftp登录通常是用户名'匿名',用户的电子邮件地址作为密码。有些服务器会解析密码以确保它看起来像电子邮件地址。

User:  anonymous
Password:  anonymous@domain.com

答案 1 :(得分:14)

匿名FTP使用由 RFC 1635: How to Use Anonymous FTP

涵盖
  

什么是匿名FTP?

     

匿名FTP是存档网站允许一般访问的一种方式     他们的档案信息。这些网站创造了一个特殊     帐户名为“匿名”。

     

...

     

传统上,这个特殊的匿名用户帐户接受任何字符串     作为密码,虽然通常使用密码     “客人”或一个人的电子邮件(电子邮件)地址。一些档案     网站现在明确要求用户的电子邮件地址,而不是     允许使用“访客”密码登录。提供电子邮件地址     是一种礼貌,允许存档网站运营商了解     谁正在使用他们的服务。

但这些是一般性建议。 每个FTP服务器都有自己的准则。

对于匿名FTP访问的示例使用ftp命令,请参阅appendix A

atlas.arc.nasa.gov% ftp naic.nasa.gov
Connected to naic.nasa.gov.
220 naic.nasa.gov FTP server (Wed May 4 12:15:15 PDT 1994) ready.
Name (naic.nasa.gov:amarine): anonymous
331 Guest login ok, send your complete e-mail address as password.
Password:
230-----------------------------------------------------------------
230-Welcome to the NASA Network Applications and Info Center Archive
230-
230-     Access to NAIC's online services is also available through:
230-
230-        Gopher         - naic.nasa.gov (port 70)
230-    World-Wide-Web - http://naic.nasa.gov/naic/naic-home.html
230-
230-        If you experience any problems please send email to
230-
230-                    naic@nasa.gov
230-
230-                 or call +1 (800) 858-9947
230-----------------------------------------------------------------
230-
230-Please read the file README
230-  it was last modified on Fri Dec 10 13:06:33 1993 - 165 days ago
230 Guest login ok, access restrictions apply.
ftp> cd files/rfc
250-Please read the file README.rfc
250-  it was last modified on Fri Jul 30 16:47:29 1993 - 298 days ago
250 CWD command successful.
ftp> get rfc959.txt
200 PORT command successful.
150 Opening ASCII mode data connection for rfc959.txt (147316 bytes).
226 Transfer complete.
local: rfc959.txt remote: rfc959.txt
151249 bytes received in 0.9 seconds (1.6e+02 Kbytes/s)
ftp> quit
221 Goodbye.
atlas.arc.nasa.gov%

另见the example session at the University of Edinburgh site

答案 2 :(得分:1)

正如其他人指出的那样,用户名通常是匿名,密码通常是您的电子邮件地址,但这并不是普遍正确的,并且发现它不适用于某些匿名用户FTP站点。例如,至少某些 cPanel 网站似乎偏离了规范,如果给定了不带域的传统用户名,则可能会导致以下各种错误之一:

  

如果服务器使用Pure-FTP作为FTP服务器:

421 Can't change directory to /var/ftp/ error message.
     

如果服务器使用ProFTP作为FTP服务器:

530 Login Authentication Failed error message.

当尝试匿名访问时发生上述错误之一时,请尝试在域中添加用户名。例如,其中 example.com 是您的电子邮件地址中使用的域:

User name: anonymous@example.com

在特定情况下,对于 cPanel 网站,密码值并不重要,可以保留为空白,但是提供以电子邮件格式设置的“传统”匿名密码不会有任何危害。地址。

作为参考,此答案基于documentation.cpanel.net Anonymous FTP page上的内容。在撰写本文时,它指出:

  

用户匿名登录FTP时,他们必须格式化用户名   如anonymous@example.com,其中example.com代表用户的   域名。此要求将您的服务器定向到正确的位置   public_ftp目录。