CentOS8搭建FTP服务器-创新互联

1 概述

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

十多年的通江网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。营销型网站建设的优势是能够根据用户设备显示端的尺寸不同,自动调整通江建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联从事“通江网站设计”,“通江网站推广”以来,每个客户项目都认真落实执行。

2 安装vsftpd

yum install -y vsftpd

3 开启服务

service httpd start

4 设置开机启动

可以用

systemctl list-unit-files | grep vsftpd

查看是否开机启动.显示disabled.
CentOS8搭建FTP服务器
通过

chkconfig vsftpd on

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

5 修改/etc/vsftpd/vsftpd.conf

sudo vim /etc/vsftpd/vsftpd.conf

首先修改
CentOS8搭建FTP服务器
为YES.
再添加一行anon_upload_enable=YES
CentOS8搭建FTP服务器
第一行的意思是允许匿名登录,第二行的意思是允许匿名上传.
重启服务.

service vsftpd restart

6 创建测试文件

cd /var/ftp/pub
sudo vim test

CentOS8搭建FTP服务器

7 测试

7.1 浏览器测试

7.1.1 匿名测试

ifconfig获取内网ip,在浏览器中输入ftp://ip.
CentOS8搭建FTP服务器
可以看到有一个pub文件夹,里面有刚才新建的test文件.
CentOS8搭建FTP服务器
CentOS8搭建FTP服务器
右键保存即可下载文件.
CentOS8搭建FTP服务器
下载完成.
CentOS8搭建FTP服务器
去终端看看.
CentOS8搭建FTP服务器

7.1.2 用户登录测试

输入

ftp://username@ip

CentOS8搭建FTP服务器
再输入用户密码.
默认访问的是用户根目录下的文件,这里显示出来了.
CentOS8搭建FTP服务器
下载的话同上,右键选择即可.

7.2 ftp命令测试

首先安装ftp:

sudo yum install ftp

7.2.1 匿名测试

ftp ip

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

no_anon_password=YES

这样匿名用户可以不用密码登录.
CentOS8搭建FTP服务器

7.2.1.1 上传测试

直接使用put命令,后面接上文件,这里的upload.txt是执行ftp之前的所在文件夹下的upload.txt
CentOS8搭建FTP服务器
这里提示不能创建文件,是权限的原因,要确保/var/ftp/pub对"other"用户有写权限.
CentOS8搭建FTP服务器
默认的/var/ftp/pub的权限是644,修改成647.

sudo chmod 647 /var/ftp/pub

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

sudo chmod 644 /root/upload.txt

如果不行,使用selinux设置.

getsebool -a | grep ftp

CentOS8搭建FTP服务器
把ftpd_full_access开启:

setsebool ftpd_full_access on

CentOS8搭建FTP服务器
再进入upload.txt所在的文件夹,执行ftp,再次put.
CentOS8搭建FTP服务器
成功!
CentOS8搭建FTP服务器

7.2.1.2 下载测试

直接get文件即可,由于上面已经设置好了权限,所以不会出现问题.
CentOS8搭建FTP服务器
CentOS8搭建FTP服务器
若出现权限问题可从三方面入手:

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

7.2.2 用户登录测试

执行ftp时用对应用户名与密码登录.
CentOS8搭建FTP服务器
默认进入了用户根目录.

7.2.2.1 上传测试

直接put即可.
CentOS8搭建FTP服务器
CentOS8搭建FTP服务器
若出现权限问题参照上面7.2.1.2的那三条方法.

7.2.2.2 下载测试

随便在用户根目录新建一个文件,这里是kr.
CentOS8搭建FTP服务器
直接get即可.
CentOS8搭建FTP服务器
CentOS8搭建FTP服务器

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

CentOS8搭建FTP服务器
CentOS8搭建FTP服务器

7.3.2 用户登录测试

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

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

CentOS8搭建FTP服务器
成功.

8 总结

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

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

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

当前标题:CentOS8搭建FTP服务器-创新互联
文章源于:https://www.cdcxhl.com/article40/dsgceo.html

成都网站建设公司_创新互联,为您提供品牌网站设计微信公众号外贸网站建设网站设计公司自适应网站服务器托管

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

成都网站建设