常见的文件传输协议有ftp、sftp,sftp就是在ftp的基础上对传输的数据进行了加密。
ftp明文传输,速度快;sftp加密传输,速度略慢但安全性高。如果传输的数据包含敏感内容,使用sftp。
ftp默认使用21端口,sftp默认使用22端口。
CentOS的作为企业级服务器,安全性高,默认安装、开启了sftp,而ftp默认没有安装。
可以直接使用sftp,如果想使用ftp,需要先在Linux上安装ftp。
Linux安装ftp
#先看下ftp安装了没
yum list installed | grep ftp
#搜索可用的软件包
yum list | grep ftp
#安装
yum install vsftpd
#开启ftp服务
service vsftpd start
看下是否启动成功
netstat -nltp | grep 21
服务已经成功启动
方式一、FileZilla 免费、推荐
输入Linux的ip、要登录的用户名、密码,使用ftp就选择21端口,使用sftp就选择22端口。
左边是windows的目录,右边是linux目录,可以选择文件|目录,右键传输,也可以直接鼠标拖到目标文件夹里。
方式二、WinSCP 免费、推荐
点击新建会话,输入Linux机器ip、用户名、密码,选择传输协议、对应的端口。
方式三、FlashFXP 收费
方式四、PSFTP 免费、命令行
安装PuTTY时自动安装了PSFTP,当然也可以单独下载安装
安装完后双击打开PSFTP。安装时自动配置了PATH环境变量,所以也可以命令行输入psftp启动。
连接到Linux, 根据提示输入用户名、密码:
open 192.168.1.7
Windows向Linux传文件:
#文件
put D:jdk-8u241-linux-x64.rpm /root/jdk-8u241-linux-x64.rpm
#文件夹
put -r D: omcat1 /root/tomcat1
windows的文件路径用,Linux的文件路径用/。如果传的是文件夹,加参数-r表示递归。
如果目标路径只写文件|目录名,比如 put D:jdk-8u241-linux-x64.rpm jdk-8u241-linux-x64.rpm,默认传到用户根目录下。
可以缺省目标文件|目录的路径,缺省时默认传到登录用户的根目录下,文件|目录名就使用源文件|目录的。
下载Linux上的文件到Windows:
#文件
get /root/jdk-8u241-linux-x64.rpm C:UserschyDesktopjdk-8u241-linux-x64.rpm
#目录
get -r /root/tomcat1 C:UserschyDesktop omcat1
注意点都一样,Windows的路径用,Linux的路径用/,文件夹加-r。
#关闭连接
close
#退出程序
quit
此外还提供了一系列命令来操作Linux上的文件、目录,比如新建、剪切、删除、修改权限等,可输入help查看命令介绍:
五、使用Windows自带的ftp程序
命令行输入ftp即可启动ftp,操作和psftp完全一样,唯一区别是psftp使用的是sftp协议(安全),ftp使用ftp协议(不安全)。