本文共 4288 字,大约阅读时间需要 14 分钟。
1. 先到配置表mgw_communication 查看文件获取方式是Local、ftp、sftp的
2. 如果是SFTP的话用sftp NAME@URL,然后根据提示输入密码,进入目录就可以操作相应的文件了。
sftp 是一个交互式文件传输程式。它类似于 ftp, 但它进行加密传输,比FTP有更高的安全性。
1.常用登陆方式:
格式:sftp <user>@<host>
通过sftp连接<host>,端口为默认的22,指定用户<user>。
2.查看sftp支持的命令
使用help命令,查看支持的命令,如:
sftp>help
(其中命令前面有“l”表示本地执行,其他表示在所登录的远程主机上面执行)
3.基本的使用
sftp主要是用来传输文件的,包括上传文件(从本机到远程主机) ,下载文件(从远程主机到本机)。
(1)文件下载
get [-Ppr] remote [local]
如:get test.cpp ./Project/
将远程当前目录下的文件test.cpp下载到本地当前目录的Project文件夹中。
(2)文件上传
put [-Ppr] local [remote]
如:put /home/liu/Software/RHEL_5.5\ x86_64.iso /home/xudong/Blog/
将本地/home/liu/Software/目录下的ios文件传送到远程登陆主机的/home/xudong/Blog/目录下。
(3)其他命令
可以使用命令还是有几个的,如ls、lls;cd、lcd;pwd、lpwd等。具体查看help输出吧。
某linux系统中有test.cap,现在,我需要把它移动到PC上,然后用wireshark进行分析。怎么移动呢?没有什么samba啊,不支持ftp啊,也不支持tftp啊。用sftp吧。在PC上开启sftp服务器(下载一个sftpserver.exe)即可。让linux系统充当本地客户端,让sftserver充当服务器。
前面的博文中,我们已经学习了sftp服务器的搭建,所以这里就不再赘述了,定sftp服务器的用户名和密码分别为user和password.下面,我们来学习一下linux中常用的sftp命令,当然,需要linux支持sftp哈。
1. sftp user@ip
你要用sftp,当然得登录到sftp服务器啊,在linux的shell中执行上面的命令后, linuxshell会提示用户输入密码,我们就输入password吧。这样就成功建立了sftp连接。
2. help
建立连接后, linux shell中的$编程了sftp>, 这也对。现在执行以下help,可以看看sftp支持哪些命令。
3. pwd和lpwd
pwd是看远端服务器的目录,即sftp服务器默认的当前目录。 lpwd是看linux本地目录。
4. ls和lls
ls是看sftp服务器下当前目录下的东东, lls是看linux当前目录下的东东。
5. put a.txt
这个是把linux当前目录下的a.txt文件上传到sftp服务器的当前目录下。
6. get b.txt
这个是把sftp服务器当前目录下的b.txt文件下载到linux当前目录下。
7. !command
这个是指在linux上执行command这个命令,比如!ls是列举linux当前目录下的东东, !rma.txt是删除linux当前目录下的a.txt文件。
这个命令非常非常有用,因为在sftp>后输入命令,默认值针对sftp服务器的,所以执行rm a.txt删除的是sftp服务器上的a.txt文件,而非本地的linux上的a.txt文件。
8. exit和quit
退出。
总之,连接后,有一个help命令,足矣足矣。
SFTP(Secure File Transfer Protocol):安全文件传送协议。可以为传输文件提供一种安全的加密方法。SFTP与 FTP有着几乎一样的语法和功能。SFTP为SSH的一部份,是一种传输文件到服务器的安全方式。在SSH软件包中,已经包含了一个叫作SFTP(Secure File Transfer Protocol)的安全文件传输子系统,SFTP本身没有单独的守护进程,它必须使用sshd守护进程(端口号默认是22)来完成相应的连接操作,所以从某种意义上来说,SFTP并不像一个服务器程序,而更像是一个客户端程序。SFTP同样是使用加密传输认证信息和传输的数据,所以,使用SFTP是非常安全的。但是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低得多,如果您对网络安全性要求更高时,可以使用SFTP代替FTP。
[plain]
1. 登陆远程主机:
2. sftp user@host
3. 针对本机的命令都加上l:
4. lcd,lpwd
5. 将本机文件上传到远程:
6. put filename.txt [some/directory]
7. 将当前文件夹下的文件上传到远程:
8. mput *.* // multiple
9. 下载远程文件到本地:
10.get filename.file [some/directory]
11. 下载目录下所有远程文件到本地:
12.mget *.* [some/directory]
13. 帮助:
14.?
15. 退出:
16.bye/exit/quit
比较: FTP 基于TCP来传输文件,明文传输用户信息和数据。
SFTP 基于SSH来加密传输文件,可靠性高,可断点续传。
SCP 是基于SSH来加密拷贝文件,但要知道详细目录,不可断点续传。
SFTP是Secure File Transfer Protocol的缩写,安全文件传送协议。可以为传输文件提供一种安全的加密方法。SFTP 为 SSH的一部份,是一种传输文件到服务器的安全方式。SFTP是使用加密传输认证信息和传输的数据,所以,使用SFTP是非常安全的。但是,由于这种传输方式使用了加密/解密技术,所以传输效率比普通的FTP要低得多,如果您对网络安全性要求更高时,可以使用SFTP代替FTP。(来自百度的解释)
要使用JSch,需要下载它的jar包,请从官网下载它:
ChannelSftp类是JSch实现SFTP核心类,它包含了所有SFTP的方法,如:
put(): 文件上传
get(): 文件下载
cd(): 进入指定目录
ls(): 得到指定目录下的文件列表
rename(): 重命名指定文件或目录
rm(): 删除指定文件
mkdir(): 创建目录
rmdir(): 删除目录
等等(这里省略了方法的参数,put和get都有多个重载方法,具体请看源代码,这里不一一列出。)
1.常用登陆方式:
格式:sftp 《user》@《host》
通过sftp连接《host》,端口为默认的22,指定用户《user》。
2.查看sftp支持的命令
使用help命令,查看支持的命令,如:
sftp》help
(其中命令前面有“l”表示本地执行,其他表示在所登录的远程主机上面执行)
3.基本的使用
sftp主要是用来传输文件的,包括上传文件(从本机到远程主机) ,下载文件(从远程主机到本机)。
(1)文件下载
get [-Ppr] remote [local]
如:get test.cpp 。/Project/
将远程当前目录下的文件test.cpp下载到本地当前目录的Project文件夹中。
(2)文件上传
put [-Ppr] local [remote]
如:put/home/liu/Software/RHEL_5.5\ x86_64.iso /home/xudong/Blog/
将本地/home/liu/Software/目录下的ios文件传送到远程登陆主机的/home/xudong/Blog/目录下。
(3)其他命令
可以使用命令还是有几个的,如ls、lls;cd、lcd;pwd、lpwd等。具体查看help输出吧。
sftp就是secure file transfer program,它基于ssh,用它在两个Linux系统间传递文档非常方便。
要使用sftp传递文档,首先应该在服务器端打开ssh服务,如果没有打开,一般可以通过下面的命令打开:
# /etc/init.d/sshdstart
然后就可以在客户端通过sftp登录服务器端进行文档传递操作,如下:
$ sftp [-oPort=port_number]username@server_ip[:file1 file2 。。。]
参数说明:
-o 用来向ssh传递参数,比如-oPort=222,会告诉ssh使用连接服务器的222端口,而不是默认的22端口。这个在遇到服务器端把ssh服务默认的22号端口改变的情况时会有用。
后面的file1、file2代表文件名,也可以是一个目录。在没有指定文件时会打开一个交互界面,在交互界面下可以通过命令来传递文档。
如:
$ sftp -o port =222 user@www.xitongzhijia.net
命令说明:
在sftp命令的交互界面下,有很多命令可以用,比如:cd、ls、pwd、bye、chmod、chgrp、chown、df、get、help、mkdir等等。当然这些命令都是针对服务器端的操作,其中一些命令在加l前缀的情况下可以实现在本地下的操作。比如,lpwd命令会打印本地当前工作目录(即连接sftp前的当前工作目录)。这些命令中有两个是用来交换文档的,它们是get和put命令,如下:
》 put local_path [remote_path]
》 get remote_path [lcoal_path]
put 命令会把本地文件或目录“推”到服务器端;get命令则把服务器端文件或目录“拉”下来。
上面就是Linux使用sftp命令传输文件相关介绍了,相较于ftp而已,sftp命令传输文件更加安全,推荐使用sftp命令传文件。
转载地址:http://qhusi.baihongyu.com/