前言
之前学习了网络管理,在平时我们去各网站下载电影或者文件,比如去电影天堂下载电影的时候,细心的会发现网站的前缀是ftp://,这篇文章就开始学习怎么配置ftp服务器供客户端进行下载文件。
什么是FTP?
FTP(File Transfer Protocol,文件传输协议)是TCP/IP协议组中的协议之一;
作用:提供文件共享服务,互联网上多的媒体资源和软件资源。绝大部分都是通过FTP服务器传递。
FTP Server配置
1.安装vsftpd
首先我们在需要作为服务器的主机上安装vsftpd软件包。
命令:[root@localhost ~]# yum -y install vsftpd
为了检查是否安装成功,安装后再执行一次该命令确保安装成功。
这里可能出现一个问题,可能会安装失败可能的原因是之前做网络管理配置IP的时候在
vim /etc/sysconfig/network-scripts/ifcfg-ens33该文件下设置DNS的时候需要设置DNS1=192.168.79.2,这里DNS后面需要加上1或者2。
[root@localhost ~]# yum -y install vsftpd //安装vsftpd软件包 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile 正在解决依赖关系 --> 正在检查事务 ---> 软件包 vsftpd.x86_64.0.3.0.2-28.el7 将被 安装 --> 解决依赖关系完成 依赖关系解决 ======================================================================================= Package 架构 版本 源 大小 ======================================================================================= 正在安装: vsftpd x86_64 3.0.2-28.el7 dvd 172 k 事务概要 ======================================================================================= 安装 1 软件包 总下载量:172 k 安装大小:353 k Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction 正在安装 : vsftpd-3.0.2-28.el7.x86_64 1/1 验证中 : vsftpd-3.0.2-28.el7.x86_64 1/1 已安装: vsftpd.x86_64 0:3.0.2-28.el7 完毕! [root@localhost ~]# yum -y install vsftpd //重新安装检查是否安装成功 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile 软件包 vsftpd-3.0.2-28.el7.x86_64 已安装并且是最新版本 无须任何处理
安装完vsftpd软件包之后再var目录下会有ftp文件夹这里是ftp程序分享内容的本机目录。
2.准备分发的文件
我们需要创建一个需要分享的文件,供客户端下载。
命令:touch /var/ftp/文件名 //创建分享的文件夹
命令:mkdir /var/ftp/目录名 //创建分享的文件夹
注释:FTP服务器的主目录:“/var/ftp/”,是FTP程序分享内容的本机目录
[root@localhost ~]# touch /var/ftp/share.txt //在分享目录下创建share文件 [root@localhost ~]# mkdir /var/ftp/shartdir //在分享目录下创建shartdir文件夹
3.启动服务
软件包虽然下载好了,需要将服务启动。
[root@localhost ~]# systemctl start vsftpd //启动vsftpd服务
[root@localhost ~]# systemctl status vsftpd //查看vsftpd状态
4.关闭防火墙
为了让客户端能够顺利访问服务器,需要将防火墙以及系统自带的另一个防护墙都关掉,不然可能会拦截客户端的访问。
systemctl stop firewalld //关闭防火墙
systemctl disable firewalld //关闭防火墙开机自启
setenforce 0 //关闭系统自带的防护墙
vim /etc/selinux/config 修改内容为:SELINUX=disabled //关闭开机自启
切换客户端下载服务器分享的文件
服务器配置完成以后,就可以切换到另一台机器作为客户端来访问服务器的ftp分享的文件,并下载。
客户端可以通过三种方法来下载服务器分享的文件分别是:
1.通过浏览器访问并下载
2.LinuxFTP客户端使用lftp程序访问并下载
3.LinuxFTP客户端使用程序wget访问并下载
后面两种方法只需要了解即可,知道有这种方法就行,主要以浏览器访问为主。
1.使用浏览器访问并下载
不管是Linux还是Windows系统的主机都可以通过浏览器来访问服务器通过ftp分享的文件并下载。
在浏览器输入:ftp://服务器IP
在服务器通过ip a命令查看服务器的IP
通过浏览器访问到服务器分享的文件。
2.LinuxFTP客户端使用lftp程序访问并下载(了解)
首先需要在客户端下载lftp软件包。
首先需要在客户端下载lftp软件包。
这里出现了问题下载失败,可能是因为/etc/sysconfig/network-scripts/ifcfg-ens33内的DNS配置错误,需要去更改配置。
安装完成,如果更改完DNS1后还是失败就检查光盘有没有连接,查看yum配置有没有问题以及有没有挂载cdrom,具体操作见前几章的配置YUM:http://t.csdn.cn/Z8lgG。
访问并下载服务器分享文件
通过命令:lftp 服务器ip //访问服务器的分享目录
命令:get 文件名 //下载文件
mirror 目录名 //下载目录
注意这里是在哪个目录使用lftp命令的下载的文件将会被存放到当前目录下。
出现下图提示符不代表是真的访问成功,因为就算是输入不存在得到ip也会有相应的提示符,我们需要使用ls命令查看服务器ftp下的文件。
使用ls目录查看服务器ftp目录下的文件成功,说明是访问成功的。
使用get和mirror目录分别下载share.txt文件和shartdir文件夹,通过exit退出访问,在当前目录使用ls目录查看是否下载成功,发现下载成功。
3.LinuxFTP客户端使用程序wget访问并下载(了解)
weget访问就比较简单相当于是通过浏览器下载,weget的下载原理就是直接从浏览器下载文件。
命令:weget ftp://服务器ip/文件名 //下载到当前目录下
命令:wget ftp://服务器IP/文件名 -O /目录/文件 // -O是指定下载的位置和文件名
命令:wget ftp://服务器IP/文件名 -m //-m是下载文件夹
这里的“/”是假根这个假根代表的就是服务器的/var/ftp/目录
首先要测试有没有weget软件包,通过yun -y install wget命令下载。
下载文件
下载文件夹到指定目录
通过命令:wget ftp://服务器ip/文件夹名 -mO 需要下载到的位置以及名字
例如:
命令:wget ftp://192.168.79.130/shartdir -mO /test/dir/sharedir
//从服务器下载shartdir 文件夹到/test/dir/ 并且命名为sharedir
[root@localhost test]# mkdir dir //创建一个文件夹 [root@localhost test]# ll dir //查看文件夹内容 总用量 0 //从服务器下载shartdir 文件夹到/test/dir/ 并且命名为sharedir [root@localhost test]# wget ftp://192.168.79.130/shartdir -mO /test/dir/sharedir 警告: 将 -O 与 -r 或 -p 选项结合使用意味着所有下载来的内容 会被放入您指定的那个单一文件。 警告: 时间戳与 -O 结合使用没有任何效果。 参阅手册来获取详细信息。 --2022-12-07 15:08:38-- ftp://192.168.79.130/shartdir => “192.168.79.130/.listing” 正在连接 192.168.79.130:21... 已连接。 正在以 anonymous 登录 ... 登录成功! ==> SYST ... 完成。 ==> PWD ... 完成。 ==> TYPE I ... 完成。 ==> 不需要 CWD。 ==> PASV ... 完成。 ==> LIST ... 完成。 [ <=> ] 313 --.-K/s 用时 0s 2022-12-07 15:08:38 (78.5 MB/s) - “192.168.79.130/.listing” 已保存 [313] --2022-12-07 15:08:38-- ftp://192.168.79.130/shartdir/shartdir => “192.168.79.130/shartdir/.listing” ==> CWD (1) /shartdir ... 完成。 ==> PASV ... 完成。 ==> LIST ... 完成。 [ <=> ] 119 --.-K/s 用时 0s 2022-12-07 15:08:38 (31.2 MB/s) - “192.168.79.130/shartdir/.listing” 已保存 [119] FINISHED --2022-12-07 15:08:38-- Total wall clock time: 0.01s Downloaded: 2 files, 432 in 0s (55.4 MB/s) [root@localhost test]# ls dir //查看下载后dir目录下的内容,下载成功 sharedir [root@localhost test]#
总结
通过本篇文章,了解ftp文件服务,学习配置ftp服务,以及通过客户端怎么访问并下载服务器的分享文件,这里介绍了三种访问方法,其中我们一般都使用浏览器的方式直接访问下载,剩下两种方法作为工程师需要了解,一般是不用的。