【Joytag 香蕉R1学习】OpenWrt for R1 开启SFTP以及使用PSCP


#1

之前文章中,我们已经讲述了如何开启SSH
《【Joytag 香蕉R1学习】OpenWrt for R1有线路由, Telnet,SSH, LuCI》
不同于一般的Linux系统使用OpenSSH,OpenWrt使用Dropbear提供SSH服务。

除了登录进行一些操作外,我们可能需要与OpenWrt系统交换文件。
FTP是比较常用的方式之一。而SFTP安全方便,更是首选。

SFTP

使用OpenSSH,一般默认都是开通sftp子系统的,那么OpenWrt上是否也默认开通相关功能了呢?
答案是否定的,使用FileZilla通过sftp连接OpenWrt,发现无法连接。

通过查询OpenWrt站点的技术资料,
http://wiki.openwrt.org/doc/howto/sftp.server
发现需要安装openssh-sftp-server

opkg update
opkg install openssh-sftp-server

现在我们就可以使用Filezilla通过sftp登录R1了。
FileZilla设置很简单,只需在协议中选择SFTP就可以了。其它的和使用普通的FTP完全一样。

PSCP

类似与Linux系统下的scp命令,在windows下我们可以使用pscp与R1交换数据。

首先,下载pscp.exe
http://tartarus.org/~simon/putty-snapshots/x86/pscp.exe
然后将这个文件保存至: windows/system32目录下。
我们就可以在windows命令行窗口下使用pscp命令了。
命令与scp一致,比如将R1 root目录下file1复制到本地当前目录下:

pscp root@192.168.1.1:/root/file1 ./

按提示输入密码接口。

与SFTP类似,pscp也依赖于sftp服务,
如果没有按上文方式开启SFTP,那么会提示以下错误信息: