Linux文件服务配置FTP服务

简介: 之前学习了网络管理,在平时我们去各网站下载电影或者文件,比如去电影天堂下载电影的时候,细心的会发现网站的前缀是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服务,以及通过客户端怎么访问并下载服务器的分享文件,这里介绍了三种访问方法,其中我们一般都使用浏览器的方式直接访问下载,剩下两种方法作为工程师需要了解,一般是不用的。



相关文章
|
19天前
|
安全 Ubuntu Java
Linux配置使用篇
Linux配置使用篇
|
18天前
|
网络协议 Linux
在Linux中,管理和配置网络接口
在Linux中管理网络接口涉及多个命令,如`ifconfig`(在新版本中被`ip`取代)、`ip`(用于网络设备配置)、`nmcli`(NetworkManager的CLI工具)、`nmtui`(文本界面配置)、`route/ip route`(处理路由表)、`netstat/ss`(显示网络状态)和`hostnamectl/systemctl`(主机名和服务管理)。这些命令帮助用户启动接口、设置IP地址、查看连接和路由信息。不同发行版可能有差异,建议参考相应文档。
19 4
|
22小时前
|
Linux Go 数据安全/隐私保护
Linux 中的文件属性解析
在 Linux 系统中,每个文件和目录有一组属性控制其操作和访问权限。了解这些属性对有效管理文件至关重要。文件属性包括:文件类型(如 `-` 表示普通文件,`d` 表示目录),权限(如 `rwx` 表示所有者权限,`r-x` 表示组和其他用户权限),所有者,组,硬链接数,文件大小和最后修改时间。通过 `chown` 和 `chmod` 命令可更改文件所有者、所属组及权限。此外,还有特殊权限(如 SUID、SGID)和 ACL(访问控制列表)提供更精细的访问控制。
|
2天前
|
人工智能 Linux
Linux查找大文件的方法
Linux查找大文件的方法
|
2天前
|
Oracle Java 关系型数据库
Linux环境安装配置JDK11
Linux环境安装配置JDK11
20 0
|
2天前
|
Ubuntu Linux
Linux(Ubuntu)系统临时IP以及静态IP配置(关闭、启动网卡等操作)
请注意,以上步骤是在临时基础上进行配置的。如果要永久保存静态IP地址,通常还需要修改 `/etc/network/interfaces`文件,以便在系统重启后保持配置。同时,确保备份相关配置文件以防止出现问题。
13 1
|
4天前
|
Ubuntu Linux 测试技术
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试(下)
Linux(32)Rockchip RK3568 Ubuntu22.04上部署 Docker: 详细配置与功能测试
35 1
|
4天前
|
固态存储 Ubuntu Linux
Linux(29) 多线程快速解压缩|删除|监视大型文件
Linux(29) 多线程快速解压缩|删除|监视大型文件
11 1
|
4天前
|
运维 网络协议 Linux
Linux(28) Linux双网卡配置为连接到Linux主机的PC提供外网访问
Linux(28) Linux双网卡配置为连接到Linux主机的PC提供外网访问
31 1
|
4天前
|
Ubuntu Linux 数据安全/隐私保护
Linux(24) 如何在Ubuntu中操作rootfs.img文件
Linux(24) 如何在Ubuntu中操作rootfs.img文件
9 0