在CentOS7上安装ftp服务器用于保存服务端上传的图片。

1、CentOS卸载vsftpd的方法

如果服务器上已经安装了vsftpd服务,配置出错需要卸载vsftpd服务。

1.1 查找vsftpd服务

[[email protected] /]# rpm -aq vsftpd

返回结果显示:

vsftpd-3.0.2-21.el7.x86_64 #此处是查找vsftpd的返回结果

表示此服务期之前已经安装过vsftpd服务。

1.2 删除查找到的vsftpd服务

注:在卸载vsftpd之前,先停止vsftpd

[[email protected] /]# /sbin/service vsftpd stop

卸载vsftpd:

[[email protected] /]# rpm -e vsftpd-3.0.2-21.el7.x86_64

返回结果显示:

warning: /etc/vsftpd/vsftpd.conf saved as /etc/vsftpd/vsftpd.conf.rpmsave #删除时将备份vsftp的用户列表文件

1.3 输入验证命令,验证vsftpd服务是否已经删除

[[email protected] /]# /sbin/service vsftpd stop
Redirecting to /bin/systemctl stop  vsftpd.service
Failed to stop vsftpd.service: Unit vsftpd.service not loaded. #找不到vsftpd
[[email protected] /]# /sbin/service vsftpd start
Redirecting to /bin/systemctl start  vsftpd.service
Failed to start vsftpd.service: Unit not found. #找不到vsftpd

如果输入以上两个命令都显示找不到vsftpd服务的话,那就证明已经卸载成功。

2、安装vsftpd组件

[[email protected] /]# yum -y install vsftpd

2.1 启动ftp

[[email protected] home]# systemctl start vsftpd.service

2.2 放开21端口

[[email protected] /]# firewall-cmd --zone=public --add-port=21/tcp --permanent
[[email protected] /]# firewall-cmd --reload

3、vsftpd服务的详细配置

3.1 关闭匿名用户

[[email protected] vsftpd]# vim /etc/vsftpd/vsftpd.conf

在vsftpd.conf配置文件中修改以下三项:

anonymous_enable=NO
#anon_upload_enable=YES
#anon_mkdir_write_enable=YES

然后重启ftp服务:

[[email protected] vsftpd]# systemctl restart  vsftpd.service

通过配置重启之后,匿名用户不可以登录了。

3.2 建立ftp虚拟宿主账户

新建一个不能登录系统用户. 只用来登录ftp服务 ,这里如果没设置用户目录。默认是在home下:

[[email protected] vsftpd]# useradd ftpuser -s /sbin/nologin

为ftpuser用户设置密码:

[[email protected] /]# passwd ftpuser

3.3 查看ftp的状态

[[email protected] /]# getsebool -a|grep ftp

显示结果:

ftpd_anon_write --> off
ftpd_connect_all_unreserved --> off
ftpd_connect_db --> off
ftpd_full_access --> off
ftpd_use_cifs --> off
ftpd_use_fusefs --> off
ftpd_use_nfs --> off
ftpd_use_passive_mode --> off
httpd_can_connect_ftp --> off
httpd_enable_ftp_server --> off
tftp_anon_write --> off
tftp_home_dir --> off

将上面红色两项状态设置为on:

[[email protected] vsftpd]# setsebool -P allow_ftpd_full_access on
[[email protected] vsftpd]# setsebool -P tftp_home_dir on

3.4 配置vsftpd.conf

限制系统用户锁定在/home/ftpuser目录

如果设置为
chroot_local_user=YES
chroot_list_enable=YES(这行可以没有, 也可以有)
chroot_list_file=/etc/vsftpd.chroot_list
那么, 凡是加在文件vsftpd.chroot_list中的用户都是不受限止的用户
即, 可以浏览其主目录的上级目录.

所以, 如果不希望某用户能够浏览其主目录上级目录中的内容,可以如上设置, 然后在
文件vsftpd.chroot_list中不添加该用户即可(此时, 在该文件中的用户都是可以浏览其主目录之外的目录的).
或者, 设置如下
chroot_local_user=NO
chroot_list_enable=YES(这行必须要有, 否则文件vsftpd.chroot_list不会起作用)
chroot_list_file=/etc/vsftpd.chroot_list
然后把所有不希望有这种浏览其主目录之上的各目录权限的用户添加到文件vsftpd.chroot_list(此时, 在该文件中的用户都是不可以浏览其主目录之外的目录的)
中即可(一行一个用户名).
[[email protected] vsftpd]# vim /etc/vsftpd/vsftpd.conf

这里有两种方案,我采用第二种,配置如下:

chroot_local_user=NO
chroot_list_enable=YES #(这行必须要有, 否则文件vsftpd.chroot_list不会起作用)
chroot_list_file=/etc/vsftpd/chroot_list

默认chroot_list是不存在的

[[email protected] vsftpd]# vim /etc/vsftpd/chroot_list

然后加入 ftpuser ,表示只有ftpuser不能访问上级目录,重启vsftpd。

3.5 修改权限

修改/home/ftpuser 的权限为不可写

[[email protected] vsftpd]# chmod a-w /home/ftpuser/taotao

这是因为我们在上面将/home/ftpuser/taotao文件的权限改为不可写了,那么我们在这个目录下创建一个images文件夹,用来上传文件。并将权限赋值给 ftpuser 用户

[[email protected] taotao]# mkdir images
[[email protected] images]# chown ftpuser images

4、开启PASV(被动模式)

在 /etc/vsftpd/vsftpd.conf 的最下面加入

pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30999

并且在userlist_enable=YES文件后面添加

userlist_deny=NO
userlist_file=/etc/vsftpd/user_list

开启防火墙:

[[email protected] taotao]# firewall-cmd --zone=public --add-port=30000-30999/tcp --permanent 
[[email protected] taotao]# firewall-cmd --reload

这样就可以使用ftp服务器上传文件了。

更多Vsftpd相关教程见以下内容

Linux CentOS 6.5 下搭建 vsftpd ftp服务器  http://www.linuxidc.com/Linux/2016-07/133319.htm

CentOS安装vsftpd-3.0.2及安全配置  http://www.linuxidc.com/Linux/2016-12/138040.htm

openSUSE 13.2/13.1 下安装配置 FTP服务器 vsftpd  http://www.linuxidc.com/Linux/2014-12/110070.htm

CentOS7基于虚拟用户的vsftpd  http://www.linuxidc.com/Linux/2016-11/137150.htm

Ubuntu 14.04 配置vsftpd实现FTP服务器 - 通过FTP连接AWS  http://www.linuxidc.com/Linux/2016-08/133933.htm

FTP协议详解与vsftpd在Linux上的安装配置 http://www.linuxidc.com/Linux/2016-09/134831.htm

CentOS 6.7 安装vsftpd服务器  http://www.linuxidc.com/Linux/2017-04/142612.htm

CentOS 7.3安装配置Vsftpd文件服务器  http://www.linuxidc.com/Linux/2017-06/144886.htm

Vsftpd3.0--FTP服务器搭建之本地用户篇  http://www.linuxidc.com/Linux/2017-04/142699.htm

CentOS7基于虚拟用户的vsftpd  http://www.linuxidc.com/Linux/2016-11/137150.htm

Ubuntu 16.04下vsftpd 安装配置实例  http://www.linuxidc.com/Linux/2017-06/144807.htm

本文永久更新链接地址http://www.linuxidc.com/Linux/2017-08/146085.htm

原文地址:https://www.cnblogs.com/lxwphp/p/8931054.html

时间: 2024-10-14 00:47:31

在CentOS7上安装ftp服务器用于保存服务端上传的图片。的相关文章

在树莓派上安装FTP服务器

在终端安装FTP服务器 sudo apt-get install vsftpd 然后对FTP进行配置,打开它的配置文件 sudo nano /etc/vsftpd.conf 修改以下配置 # 不允许匿名访问  anonymous_enable=NO  # 设定可以进行写操作 write_enable=YES  # 设定本地用户可以访问 local_enable=YES  ascii_upload_enable=YES  ascii_download_enable=YES 重启服务 sudo se

在centos6.5上面mount微软系统上安装ftp服务器

现在用虚拟机开发linux软件,发现虚拟机提供的共享文件夹不能很好地工作,表现为: 1.我在windows上面修改了文件内容,在linux里面发现文件内容没有变化,需要做些等待. 2.在linux里面修改了文件内容,在windows下面也没有发现变化,需要做些等待. 没有找出解决这些问题的原因.所以我在windows上安装了haneWIN NFS Server软件,把windows作为一个nfs服务器使用,工作中使用了一个月,这个软件挺好用的.但是这个软件是收费的,过了一个月试用期我就发现用不了

在CentOS 7上安装FTP服务器

在Linux系统中通常使用的FTP服务器是vsftpd,所以下面我就记录一下我是如何在一台没有安装vsftpd的Linux主机上安装vsftpd. 1.安装vsftpd包 sudo yum install vsftpd 2.配置FTP账户 在Linux系统中FTP账户也是一种特殊的系统用户,只不过FTP账户的权限需要特殊设定而已.所以,我们先添加一个FTP账户: sudo useradd -d /home/www www 其中,useradd为添加用户的命令,该命令只有超级用户组的用户才可以使用

一键安装ftp服务器

1 概述 工作中,需要搭建ftp服务器来实现资源的共享.本文将通过脚本实现自动化安装ftp服务器,并进行相关配置,同时创建ftp登录账户,以及创建两个文件夹,作为公共的文件夹,为所有用户提供共同的访问路径. 2 概念解释和注意事项 2.1 chroot_list说明 chroot_list_file=/etc/vsftpd/chroot_list 如果设置为 chroot_local_user=YES chroot_list_enable=YES(这行可以没有, 也可以有) chroot_lis

第21篇 ubuntu安装ftp服务器(转载)

ubuntu安装ftp服务器 1: 安装vsftpd ~$ sudo apt-get install vsftpd ubuntu10.10自己装了,这步省略. 2: 配置vsftpd 2.1 修改vsftpd的配置文件.此类配置文件通常位于 /etc 目录下. ~$ sudo gedit /etc/vsftpd.conf 原文件中不少指令被注释,只要启用部分即可,一下是启用的命令(配置文件中对每一条都有具体说明) listen=YES # 服务器监听#anonymous_enable=YES #

CentOS 7运维管理笔记(4)----安装ftp服务器

在CentOS 7下安装ftp服务器,可以使局域网内的主机拥有共享文件的一个站点. 在Linux系统下,vsftp是一款应用比较广泛的FTP软件,其特点是小巧轻快,安全易用.目前在开源操作系统中常用的FTP软件除了vsftp外,主要有proftpd.pureftpd和 wu-ftpd等.本篇随笔记录vsftp的安装与配置. 注意:本随笔所有操作均在VMware workstations虚拟机中安装的CentOS7 中进行,在进行操作前最好设置快照,这样某一步出错了还可以退回原来的状态: 1.安装

在Linux和Windows系统上安装Nginx服务器的教程

在Linux和Windows系统上安装Nginx服务器的教程 ?1.在CentOS系统上安装Nginx 在 CentOS6 版本的 EPEL 源中,已经加入了 nginx 的 rpm 包,不过此 RPM 包版本较低.如果需要更新版本,可以使用官方制作的 rpm 包,或者使用源码包编译安装. 还可以使用一些二次开发功能增强的 nginx 版本,例如淘宝的 Tengine 和 OpenResty 都是不错的选择.1.1 常用编译参数 ??? --prefix=PATH:指定 nginx 的安装目录?

树莓派安装ftp服务器

在树莓派安装ftp服务器,可上载\下载文件 vsftpd是开源的轻量级的常用ftp服务器. 1,安装vsftpd服务器 (约400KB)sudo apt-get install vsftpd 2,启动ftp服务sudo service vsftpd start 3,编辑vsftdp的配置文件 sudo nano /etc/vsftpd.conf 找到以下行,定义一下anonymous_enable=NO 表示:不允许匿名访问 local_enable=YES 设定本地用户可以访问. write_

树莓派: 安装ftp服务器

在树莓派安装ftp服务器,可上载\下载文件 vsftpd是开源的轻量级的常用ftp服务器. 1,安装vsftpd服务器 (约400KB) sudo apt-get install vsftpd 2,启动ftp服务 sudo service vsftpd start 3,编辑vsftdp的配置文件 sudo nano /etc/vsftpd.conf 找到以下行,定义一下 anonymous_enable=NO 表示:不允许匿名访问 local_enable=YES 设定本地用户可以访问. wri