FTP

Return to Home / You can see this page in English , 简体中文 , 正體中文 or 日本語 .

Runftp Runftp

Runftp 是一款运行在 Android 系统上的 FTP/FTPS/SFTP 客户端。 FTP 是 File Transfer Protocol 的缩写。使用此工具, 您可以与任何 UNIX 服务器交换文字, 图片, 音频, 视频或其他任意文件。

您可以在 电子市场 中搜索 Runftp 或开发者名字 Lewske 进行下载, 也可以通过 应用程序 - 通讯 - Runftp 找到它。

版本改进
1.3.0 字符串为本地化分离到一个文件。 您可以通过浏览器选择 SFTP 私钥文件。
1.2.9 添加文件管理器滑块。
1.2.8 改进连接管理器。
1.2.7 修复创建新数据库的 bug。
1.2.6 修复一个编译错误并稍微改进了界面。
1.2.5 支持 SFTP 公共认证。
1.2.4 修复标记操作缺陷。
1.2.3 SFTP 连接更加稳定。
1.2.0 添加一个三窗口 GUI。
1.1.7 更改默认颜色。 菜单中添加 更改主题 按钮。
1.1.6 修复接受响应问题。 菜单中添加 文档 按钮。
1.1.5 启用滚动和命令历史。 菜单中添加 帮助 按钮。

介绍

Runftp 有许多功能。所以我打算先在这里介绍基本用法。

首先您必须要连接到世界某个地方的一个 FTP 服务器。 当您提供的是虚拟主机或个人主页的时候可能需要有 FTP 服务器的访问权限。 您可能需要联系系统管理员询问详情。

常规使用

您可以通过点击右侧的远程文件视图中的快速连接器界面连接到任何地方。 默认显示的窗口称为本地文件视图。 您可以使用手指滑动右侧的滑块切换到远程文件视图。

Local File View < 滑动切换文件视图 > Remote File View

在远程文件视图中, 点击 打卡新站点 并输入你想要的 URL 或是从记录的一些历史列表中选择一个。

URL 的一般句法是 :

scheme:username@host.domain:port

这里

您也可以为 SFTP 提供您的 DSA 私钥。 ( 仅接受 DSA 密钥。 请不要错误的使用 RSA 。 )

一旦连接, 您可以点击文件进行复制或者删除, 以及长按 (点击一个文件并按住 1 秒) 批量复制或删除所有标记的文件。 要标记一个文件, 点击一个项目并移动您的手指到别的地方。 标记的项目会高亮显示。

控制台使用

如果您有些奇怪想使用控制台, 您需要通过 open 或它的缩写 o 命令进行连接。

对于 FTP 和 FTPS, 输入 :

$ o username@blahblah.com

又例如, 对于带有公钥认证的 SFTP, 事先准备好私钥并输入 :

$ o -i /sdcard/id_dsa sftp:username@blahblah.com

( 由于写的较早, 您仅可以使用 DSA 密钥。 )

然后当它提示目标 FTP 主机名和 $ 符号时, 再次输入

user <your_username>

随后是密码。 此例不适用于已经提供用户名的用户。

FTP$ open ftp.hogehoge.net
Connected to ftp.hogehoge.net
220 Welcome to hogehoge FTP server.
....
ftp.hogehoge.net$ user alibaba
331 Enter your password
Password:opensesame
230

FTPS 会在可用时被打开。 不过您可以在 open 和主机名前插入 ftps: 和/或 username@ 来明确的启用安全连接 (SSL) 如 :

FTP$ open ftps:run.sh

open 和主机名插入 sftp:username@ 来启用 SFTP (SSH FTP) 连接如 :

FTP$ open sftp:ryu@run.sh

要列出远程目录中的文件, 只需要键入 ls

ftp.hogehoge.net$ ls
227 Entering Passive Mode (203,216,247,246,139,157)
150  Opening ASCII mode data connection for  .
total 256
-rw-rw-r-- 1 53 53 442841 Jan 1 22:06 2009-10-29_16.18.32.jpg
-rw-rw-r-- 1 53 53 673902 Dec 29 08:03 2009-12-11_07.54.21.jpg
-rw-rw-r-- 1 53 53 398775 Jan 1 22:09 2009-12-30_13.55.25.jpg

您可以使用 cd 命令更改远程目录, 就像经典的 DOS 一样。

默认本地目录是 /sdcard/dcim/Camera。 您可以通过输入 lcd <target_directory> 进行更改

ftp.hogehoge.net$ lcd ../..

此样例移动当前目录到父目录的上层目录, 也就是 /sdcard

要下载当前目录中名为 File_Name 的文件到您的手机, 输入 :

ftp.hogehoge.net$ get File_Name

要从您手机当前目录中上传名为 File_Name 的文件到连接的服务器, 输入 :

ftp.hogehoge.net$ put File_Name

要下载目录中所有的文件到您的手机, 输入 mget *

ftp.hogehoge.net$ mget *

要上传手机中您使用 lcd 指定的目录中所有的文件到服务器, 输入 mput *

ftp.hogehoge.net$ mput *

就这么简单

现在您应该已经学会了 Runftp 所有的基础操作。

恭喜您!

本页面其余的部分只是一些关于设置 FTP 服务器以及相关程序的一些附录。

ProFTPD

ProFTPD 是一款可配置度极高的 FTP 服务器。 支持 FTPS (基于 SSL/TLS 的 FTP)。

要配置, 编辑文件 /etc/proftpd/proftpd.conf

删除 <Anonymous ~ftp> 部分第一列中任何的内容以启用匿名登录。

  # Restrict anonymous uploads to only 10 megabytes
  MaxStoreFileSize 10 Mb user anonymous
  MaxStoreFileSize *

如果您想要管理一个多次调用进程的流行网站, 您应该设置 ServerTypestandalone 而不是 inetd

  ServerType standalone

如果您设置为 standalone, 您也需要在 /etc/inetd.conf 中禁用 ftp 进程启动。

#ftp ....

首先 SIGHUP xinetd, 然后 proftpd。

$ sudo /etc/init.d/xinetd restart
$ sudo /etc/init.d/proftpd restart

当您为权限创建了一个 SSL 证书例如 CAcert , 您需要复制包含在 openssl 包中的 CA.pl 脚本到 /etc/ssl 并使用 -newreq 执行 :

$ cd /etc/ssl/
$ sudo cp /usr/lib/ssl/misc/CA.pl .
$ sudo ./CA.pl -newreq

提供您的主机名作为程序中需要的通用名。

Common Name (eg, YOUR name) []:run.sh

要启用 SSL/TLS 连接, 取消注释包含在 /etc/proftpd/proftpd.conf 中的 tls.conf :

Include /etc/proftpd/tls.conf

并按以下方式修改 /etc/proftpd/tls.conf

<IfModule mod_tls.c>
  TLSEngine on
  TLSLog /var/log/proftpd/tls.log
  TLSProtocol SSLv23
  TLSRSACertificateFile /etc/ssl/certs/hoge.crt
  TLSRSACertificateKeyFile /etc/ssl/private/hoge.key
  TLSVerifyClient off
  TLSRequired off
</IfModule>

FTPS (基于 SSL/TLS 的 FTP)

当前最好的方法是使用 TLS 1.0 。 您很可能希望在客户端中禁用可能会干扰握手的旧的 SSL 2.0。

身份验证和授权

AUTH TLS
234
USER xxxx
TLS/SSL connection established.
331 Anonymous login ok, send your complete email address as your password
PASS xxxx
230 Anonymous access granted, restrictions apply
OPTS UTF8 ON
200 UTF8 set to on
SYST
----
FEAT
----

存储和检索文件

PBSZ 0
200 PBSZ 0 successful
PROT P
200 Protection set to Private
TYPE I
200 Type set to I
PASV
227 Entering Passive Mode
STOR/RETR hoge.tar.gz
150 Opening BINARY mode data connection for hoge.tar.gz
226 Transfer complete

列出文件

PBSZ 0
200
PROT C
200
PASV
227 Entering Passive Mode
LIST/NLST
150 Opening ASCII mode data connection for file list
226 Transfer complete

SFTP (SSH FTP)

SFTP 完全不适合传统的 FTP。 它仅利用了 OpenSSH 中 sshd 的传输功能子系统 sftp-server

通常 SFTP 包夜不能通过代理。

可参考的 RFC 文档

祝您使用愉快。

E-mail : ryu@run.sh
Valid XHTML 1.0 Strict Level A conformance,
  W3C WAI Web Content Accessibility Guidelines 2.0
Return to Home