Linux文件服务配置FTP服务

本文涉及的产品
云防火墙,500元 1000GB
简介: 之前学习了网络管理,在平时我们去各网站下载电影或者文件,比如去电影天堂下载电影的时候,细心的会发现网站的前缀是ftp://,这篇文章就开始学习怎么配置ftp服务器供客户端进行下载文件。

前言


 之前学习了网络管理,在平时我们去各网站下载电影或者文件,比如去电影天堂下载电影的时候,细心的会发现网站的前缀是ftp://,这篇文章就开始学习怎么配置ftp服务器供客户端进行下载文件。


什么是FTP?


FTP(File Transfer Protocol,文件传输协议)是TCP/IP协议组中的协议之一;

       作用:提供文件共享服务,互联网上多的媒体资源和软件资源。绝大部分都是通过FTP服务器传递。


be309d5512d84195a5eaeb19d5bef285.png


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 已安装并且是最新版本
无须任何处理


eb073b47d33d4330807ae6a70d6abe3b.png


安装完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状态


e3c049980a2940adb9c8d59ec23646ed.png


4.关闭防火墙


 为了让客户端能够顺利访问服务器,需要将防火墙以及系统自带的另一个防护墙都关掉,不然可能会拦截客户端的访问。

systemctl  stop  firewalld                 //关闭防火墙

systemctl disable firewalld              //关闭防火墙开机自启

setenforce   0                                     //关闭系统自带的防护墙

vim  /etc/selinux/config      修改内容为:SELINUX=disabled                 //关闭开机自启


637eb24a0ed04426b84f3465352d4a3d.png

2a04220e9ac940658cdfbd66d6dfa28c.png


切换客户端下载服务器分享的文件

服务器配置完成以后,就可以切换到另一台机器作为客户端来访问服务器的ftp分享的文件,并下载。

客户端可以通过三种方法来下载服务器分享的文件分别是:

1.通过浏览器访问并下载

2.LinuxFTP客户端使用lftp程序访问并下载

3.LinuxFTP客户端使用程序wget访问并下载

后面两种方法只需要了解即可,知道有这种方法就行,主要以浏览器访问为主。


1.使用浏览器访问并下载

不管是Linux还是Windows系统的主机都可以通过浏览器来访问服务器通过ftp分享的文件并下载。

在浏览器输入:ftp://服务器IP

在服务器通过ip   a命令查看服务器的IP


b18f666d6ead44f0900c066950d2622e.png


通过浏览器访问到服务器分享的文件。


955fe2815eb94212ab7040f6e5d4084a.png


2.LinuxFTP客户端使用lftp程序访问并下载(了解)

首先需要在客户端下载lftp软件包。

首先需要在客户端下载lftp软件包。


b1db455e078a4706ab5ca1fdd80f4b24.png


这里出现了问题下载失败,可能是因为/etc/sysconfig/network-scripts/ifcfg-ens33内的DNS配置错误,需要去更改配置。


8d0897b12a774b2680b21c39a6600ef8.png


安装完成,如果更改完DNS1后还是失败就检查光盘有没有连接,查看yum配置有没有问题以及有没有挂载cdrom,具体操作见前几章的配置YUM:http://t.csdn.cn/Z8lgG


05e1deb549c342d2ac9a8f2a9f481de1.png


访问并下载服务器分享文件

通过命令:lftp   服务器ip                //访问服务器的分享目录

命令:get    文件名                        //下载文件

mirror        目录名                          //下载目录

注意这里是在哪个目录使用lftp命令的下载的文件将会被存放到当前目录下。

 出现下图提示符不代表是真的访问成功,因为就算是输入不存在得到ip也会有相应的提示符,我们需要使用ls命令查看服务器ftp下的文件。


9053be462a5a4adca2f8d21a19d0828a.png


 使用ls目录查看服务器ftp目录下的文件成功,说明是访问成功的。


13d716c3ce5b40978e047d342412509b.png


 使用get和mirror目录分别下载share.txt文件和shartdir文件夹,通过exit退出访问,在当前目录使用ls目录查看是否下载成功,发现下载成功。


4c26e9fb06ef4dd8a79514367005fcbc.png


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命令下载。

c30689e5d1394b2bb085765d187ec92c.png


下载文件

ded07d3007ed4c5bbc291347fa0b2464.png


下载文件夹到指定目录

通过命令: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服务,以及通过客户端怎么访问并下载服务器的分享文件,这里介绍了三种访问方法,其中我们一般都使用浏览器的方式直接访问下载,剩下两种方法作为工程师需要了解,一般是不用的。



相关文章
|
16天前
|
运维 安全 Linux
Linux中传输文件文件夹的10个scp命令
【10月更文挑战第18天】本文详细介绍了10种利用scp命令在Linux系统中进行文件传输的方法,涵盖基础文件传输、使用密钥认证、复制整个目录、从远程主机复制文件、同时传输多个文件和目录、保持文件权限、跨多台远程主机传输、指定端口及显示传输进度等场景,旨在帮助用户在不同情况下高效安全地完成文件传输任务。
112 5
|
16天前
|
Linux Shell 数据库
Linux文件查找新姿势:总有一种你没见过
【10月更文挑战第18天】文件查找是Linux用户提升工作效率的重要技能。本文介绍了几种实用的文件查找方法,包括基础的`find`命令、快速的`locate`和`mlocate`、高效的`fd`工具、以及结合`grep`和`rg`进行内容搜索。此外,还提供了编写Shell脚本和使用图形界面工具的建议,帮助你更灵活地管理文件。
54 3
|
4天前
|
Linux 应用服务中间件 Shell
linux系统服务二!
本文详细介绍了Linux系统的启动流程,包括CentOS 7的具体启动步骤,从BIOS自检到加载内核、启动systemd程序等。同时,文章还对比了CentOS 6和CentOS 7的启动流程,分析了启动过程中的耗时情况。接着,文章讲解了Linux的运行级别及其管理命令,systemd的基本概念、优势及常用命令,并提供了自定义systemd启动文件的示例。最后,文章介绍了单用户模式和救援模式的使用方法,包括如何找回忘记的密码和修复启动故障。
21 5
linux系统服务二!
|
4天前
|
Linux 应用服务中间件 Shell
linux系统服务!!!
本文详细介绍了Linux系统(以CentOS7为例)的启动流程,包括BIOS自检、读取MBR信息、加载Grub菜单、加载内核及驱动程序、启动systemd程序加载必要文件等五个主要步骤。同时,文章还对比了CentOS6和CentOS7的启动流程图,并分析了启动流程的耗时。此外,文中还讲解了Linux的运行级别、systemd的基本概念及其优势,以及如何使用systemd管理服务。最后,文章提供了单用户模式和救援模式的实战案例,帮助读者理解如何在系统启动出现问题时进行修复。
21 3
linux系统服务!!!
|
4天前
|
网络协议 Linux
linux系统重要文件目录
本文介绍了Linux系统中的重要目录及其历史背景,包括根目录、/usr、/etc、/var/log和/proc等目录的结构和功能。其中,/etc目录下包含了许多关键配置文件,如网卡配置、DNS解析、主机名设置等。文章还详细解释了各目录和文件的作用,帮助读者更好地理解和管理Linux系统。
18 2
|
3天前
|
缓存 监控 Linux
|
7天前
|
Linux Shell 数据库
文件查找是Linux用户日常工作的重要技能介绍了几种不常见的文件查找方法
文件查找是Linux用户日常工作的重要技能。本文介绍了几种不常见的文件查找方法,包括使用`find`和`column`组合、`locate`和`mlocate`快速查找、编写Shell脚本、使用现代工具`fd`、结合`grep`搜索文件内容,以及图形界面工具如`Gnome Search Tool`和`Albert`。这些方法能显著提升文件查找的效率和准确性。
25 2
|
9天前
|
Linux 数据库
Linux服务如何实现服务器重启后的服务延迟自启动?
【10月更文挑战第25天】Linux服务如何实现服务器重启后的服务延迟自启动?
45 3
|
9天前
|
关系型数据库 MySQL Linux
Linux系统如何设置自启动服务在MySQL数据库启动后执行?
【10月更文挑战第25天】Linux系统如何设置自启动服务在MySQL数据库启动后执行?
50 3
|
10天前
|
Linux 数据库
linux 全局搜索文件
在 Linux 系统中,全局搜索文件常用 `find`、`locate` 和 `grep` 命令。`find` 根据文件名、类型、大小、时间戳等条件搜索;`locate` 通过预构建的数据库快速查找文件;`grep` 在文件中搜索特定文本,常与 `find` 结合使用。选择合适的命令取决于具体需求。