CentOS8搭建FTP服务器

1 概述

文章主要讲了CentOS8如何利用vsftpd搭建一个FTP服务器,然后进行简单的匿名上传/下载与用户上传/下载测试,还有使用了wget测试.

2 安装vsftpd

yum install -y vsftpd

3 开启服务

service httpd start

4 设置开机启动

可以用

systemctl list-unit-files | grep vsftpd

查看是否开机启动.显示disabled.

通过

chkconfig vsftpd on

开启自启,再次执行systemctl,可以看到变成了enabled.

5 修改/etc/vsftpd/vsftpd.conf

sudo vim /etc/vsftpd/vsftpd.conf

首先修改

为YES.
再添加一行anon_upload_enable=YES

第一行的意思是允许匿名登录,第二行的意思是允许匿名上传.
重启服务.

service vsftpd restart

6 创建测试文件

cd /var/ftp/pub
sudo vim test

7 测试

7.1 浏览器测试

7.1.1 匿名测试

ifconfig获取内网ip,在浏览器中输入ftp://ip.

可以看到有一个pub文件夹,里面有刚才新建的test文件.


右键保存即可下载文件.

下载完成.

去终端看看.

7.1.2 用户登录测试

输入

ftp://[email protected]


再输入用户密码.
默认访问的是用户根目录下的文件,这里显示出来了.

下载的话同上,右键选择即可.

7.2 ftp命令测试

首先安装ftp:

sudo yum install ftp

7.2.1 匿名测试

ftp ip

这里用户名选择ftp,密码为空,表示匿名登录.ftp为默认的匿名登录用户名,至于密码,可以在/etc/vsftpd/vsftpd.conf中设置一个

no_anon_password=YES

这样匿名用户可以不用密码登录.

7.2.1.1 上传测试

直接使用put命令,后面接上文件,这里的upload.txt是执行ftp之前的所在文件夹下的upload.txt

这里提示不能创建文件,是权限的原因,要确保/var/ftp/pub对"other"用户有写权限.

默认的/var/ftp/pub的权限是644,修改成647.

sudo chmod 647 /var/ftp/pub

同时修改上传文件的权限,允许other用户可读.

sudo chmod 644 /root/upload.txt

如果不行,使用selinux设置.

getsebool -a | grep ftp


把ftpd_full_access开启:

setsebool ftpd_full_access on


再进入upload.txt所在的文件夹,执行ftp,再次put.

成功!

7.2.1.2 下载测试

直接get文件即可,由于上面已经设置好了权限,所以不会出现问题.


若出现权限问题可从三方面入手:

  • (1)/var/ftp/pub的对other用户的可读权限:因为是下载,而且匿名,所以只需要对other用户的可读权限
  • (2)被下载文件的对other用户的可读权限
  • (3)selinux的问题,设置ftpd_full_access为on

7.2.2 用户登录测试

执行ftp时用对应用户名与密码登录.

默认进入了用户根目录.

7.2.2.1 上传测试

直接put即可.


若出现权限问题参照上面7.2.1.2的那三条方法.

7.2.2.2 下载测试

随便在用户根目录新建一个文件,这里是kr.

直接get即可.

7.3 wget测试

wget用来下载文件,初始下载的目录与ftp登录时的目录一致,比如匿名登录ftp,登录的是/var/ftp目录,则wget会从这个/var/ftp目录下载文件,下载到执行wget命令所在的目录.使用用户"kr"登录ftp,则登录的是/home/kr目录,wget会从/home/kr下载文件.

7.3.1 匿名测试

注意,请确保被下载文件对other用户有可读权限.

sudo chmod o+w xxxxxx

然后使用wget

wget ftp://ip/pub/xxxx


7.3.2 用户登录测试

使用--ftp-user,--ftp-password指定用户名与密码,其余同上.

wget ftp://ip/xxx --ftp-user=xxxx --ftp-password=xxxx


成功.

8 总结

呃....简单来说,就是先安装好ftp与vsftpd,然后修改/etc/vsftpd/vsftpd.conf添加相应权限,对于不能上传与下载的原因,基本上都是权限的问题,主要就是三方面:

  • (1)ftp目录的权限:比如可以是/var/ftp/pub没有对应的写权限导致上传失败,没有对应读权限导致下载失败.
  • (2)被上传文件的权限:比如上传的文件没有读权限导致上传失败.
  • (3)selinux:使用setsebool设置为on.

解决权限问题后,基本就可以通过ftp或wget顺利地使用这个ftp服务器上传/下载文件了.

原文地址:https://blog.51cto.com/13996197/2463521

时间: 2024-07-31 09:19:36

CentOS8搭建FTP服务器的相关文章

Windows server 2008 r2搭建FTP服务器

最近需要搭建FTP服务器,顺着书上的教程走一遍流程. 1. 安装FTP服务 图一 图二 图三 可以看到上面提示并未启动windows自动更新,这个需要注意一下. 2. 新建FTP站点 准备FTP文件夹: 图四 开始新建站点: 图五 图六 此步由于没有SSL证书所以选择无. 图七 这里给予所有用户读取的权限. 图八 图九 这样子可以算是初步弄好,虽然在服务器端是可以访问的,但是由于没有设置防火墙,所以外面是暂时访问不了的. 图十 如果只是测试用的话,可以将防火墙关闭,但是真正使用的话则需要进一步的

RedHat5.9下搭建FTP服务器

FTP服务:基于C/S结构的文件传输协议 FTP会话属于复合TCP连接: 控制连接:TCP 21端口,发送FTP命令信息 数据连接:TCP 20端口,上传/下载数据 实验环境: Linux Client -----RHEL5.9(vmnet1)----------(vmnet1) Win7 Client 一. 实验要求:配置可匿名上传FTP服务 1.安装软件包 [[email protected] ~]# rpm -q vsftpd package vsftpd is not installed

centos7 搭建ftp服务器

本文采用最新的centos7 来学习搭建linux各种服务器,今天分享的是搭建ftp服务器(ps:不建议使用最新的系统去学习,因为系统发生了改变,好多以前的搭建服务器的方法就不行了,比如说centos7将防火墙由iptables换为了firewall,再按照原来的教程去搭建就会遇到很多问题.....,当然如果只是想用服务器大可在安装的时候勾选相应的选项系统会自动安装好相关的服务)由于本人运气比较差,所以在安装的过程遇到了各种奇葩的问题,并且本人还是一个刚入门的小菜鸟,因此花了足足3天才算把ftp

搭建FTP服务器

FTP服务器软件: FTP服务使用FTP协议来进行文件的上传和下载. 注:如果新下载了一个软件而不会安装,则先将软件解压,然后进入软的目录,打如下命令来查看软             件的安装帮助:       #man   INSTALL   或#man   README 实验拓扑: Linux Client -----RHEL5.9(vmnet1)----------(vmnet1) Win7 Client 实验一:测试默认安装vsftpd的结果 匿名用户与本地用户都可以登录 匿名用户登录到

RedHat6.2搭建FTP服务器

我的环境: A:Red Hat Enterprise 6.2 IP:192.168.16.12 此机作测试端 B:Red Hat Enterprise 6.2 IP:192.168.16.13 此机做FTP服务端 B机上搭建FTP服务器: 下载并安装vsftpd-2.2.2-6.el6_0.1.i686 [[email protected] ~]# rpm -ivh vsftpd-2.2.2-6.el6_0.1.i686.rpm 创建测试用户: [[email protected] ~]# us

ubuntu12.04下搭建ftp服务器

楼主想把同学硬盘里面的200多G电影共享给实验室的小伙伴们看,就打算在内网服务器上搭建一个ftp的服务器. 1.安装ftp 首先在终端下键入如下内容,安装ftp服务器: sudo apt-get install vsftpd 2.配置ftp 修改ftp的配置文件,该文件在/etc目录下,在终端中键入如下命令以打开配置文件: sudo gedit /etc/vsftpd.conf 简单的修改以下几个配置项即可: #禁止匿名访问 anonymous_enable=NO #接受本地用户 local_e

Linux系统搭建FTP服务器

在Linux系统中搭建FTP服务器 一.搭建概述: 在Linux系统中搭建一台FTP服务器是很必要的,这个服务器只要你搭建成功以后就可以在这个服务器上存放一些你自己需要的一些软件.文档.手册等等.搭建好以后就可以直接使用这个服务器,提升了你自己的一个工作速度和一些工作的简便方法.下面就来具体的搭建一下.本问是自己一个人摸索搭建的,如有什么不妥的地方请多多指教.谢谢! 二.搭建步骤: 1.启动Linux虚拟机,并在命令终端上操作. 2.检测一下系统中是否安装FTP服务器 命令:rpm-qa | g

Ubunton下搭建ftp服务器 实现虚拟用户、本地用户、匿名用户的登陆及权限

#在ubunton系统下安装和配置ftp可以说是比较简单的 本篇教程是为了解决一下问题 需要搭建ftp服务器实现三种用户的登陆及权限管理 其中 anon可以自由的到特定的目录里下载东东: stu则可以到特定的目录里上传东东; 而tearcher,则可以对特定的目录里上传.下载东东; admin则可以对stu.teacher的数据进行统一的管理. 另外,做为系统上已经有的本地用户则可以登录自己的home目录. 针对上面的需求,ftp需要开通对匿名用户.本地用户.及虚拟用户的支持.并且特别对虚拟用户

win10搭建ftp服务器的操作方法【图文教程】

我们知道FTP是TCP/IP网络上两台计算机传送文件的协议,使得主机间可以共享文件.对于win10版本的ftp服务器搭建方法可能有部分用户还不是很清楚,下面这篇文章就是关于win10搭建ftp服务器的操作方法的教程. 具体方法如下: 1.右键开始菜单,选中控制面板: 2.在控制面板的页面中选中"程序": 3.在打开的对话框中选择"启用或者关闭windows功能"找到"Internet信息服务",并选中"FTP服务"."