基于滴滴云主机搭建 FTP 文件共享服务器(一)

FTP 简单介绍

什么是 FTP 服务器?

FTP 服务器(File Transfer Protocol Server)是在互联网上提供文件共享存储和访问服务的计算机,它们依照 FTP 协议提供服务。

FTP(File Transfer Protocol: 文件传输协议)是一种 Internet 上用来传送文件的协议,支持这种协议的服务器就是 FTP 服务器。

常见 FTP 服务器如下:

  • Windows:Serv-U FTP Server


  • Linux:oftpd、ftpd、vsftpd、pure-ftpd、proftpd、wu-ftpd、glftpd

功能比较简单的有 ftpd 和 Oftpd,前者与 FTP 客户端工具 FTP 类似,只有标准的功能,此外支持 SSL。Oftpd 是一款非常小巧的匿名 FTP 服务器。

可配制型高级的主要是 vsftpd 和 pure-ftpd。 这两个侧重于安全、速度和轻量级,在大型 FTP 服务器上用得比较多,尤其是 vsftpd,这类服务器对用户认证和权限控制比较简单,更注重安全型和速度。Pure-ftpd 相对 vsftpd 要强大一些,支持的用户认证方式也比较多。

配置性更好的是 proftpd、wu-ftpd 和 glftpd。Proftpd 的配置方式跟 Apache 非常类似,支持虚拟服务器,可针对目录、虚拟用户进行权限配制,可继承和覆盖。

今天主要介绍 VSFTP。

VSFTP 是一个基于 GPL 发布的类 Unix 系统上使用的 FTP 服务器软件,它的全称是 Very Secure FTP,它的优势就是安全、高速、稳定的 FTP 服务器。接下来介绍如何搭建这个文件共享服务器。

开始安装

首先安装 VSFTP

安装前检查一下包是否已经安装,如下:

如果没有安装,使用如下方式安装:

基于滴滴云主机搭建 FTP 文件共享服务器(一)_第1张图片

接着安装 LFTP,这个可以用来登录浏览 FTP 共享文档:

基于滴滴云主机搭建 FTP 文件共享服务器(一)_第2张图片

以上两个都输入 y 安装即可, 滴滴云 已经提供专业的 yum 安装源,您可以放心的安装相关服务。当然了,除了 yum 的安装方式之外,您还可以选择从官方下载源码或者 RPM 包来安装,RPM 安装命令:

  rpm   - ivh   / home / demo / vsftpd - 3.0.2 - 22.el7.x86_64.rpm

这根据您的使用方式来选择,哪个方便使用哪个安装。

开始配置

配置文件位置

基于滴滴云主机搭建 FTP 文件共享服务器(一)_第3张图片

/etc/vsftpd/vsftpd.conf:vsftpd 的核心配置文件

/etc/vsftpd/ftpusers:用于指定哪些用户不能访问 FTP 服务器,是个黑名单

/etc/vsftpd/user_list:指定允许使用 vsftpd 的用户列表文件,是个白名单

vim /etc/vsftpd/user_list

# 如果  userlist_deny= YES (默认),不允许在这个文件中的用户登录 FTP,甚至不提示输入密码

# prompt 提示

/etc/vsftpd/vsftpd_conf_migrate.sh:是 vsftpd 操作的一些变量和设置脚本

/var/ftp/:默认情况下匿名用户的根目录,其目录如下:

服务启动

我们先不做配置的情况下,看看默认能做什么事情,启动服务:

基于滴滴云主机搭建 FTP 文件共享服务器(一)_第4张图片

滴滴云 主机默认安全组没有打开 21 端口,具体如何打开参考 滴滴云 官网介绍,打开后如下:
基于滴滴云主机搭建 FTP 文件共享服务器(一)_第5张图片

访问

以 mac 为例,mac 上自带客户端工具,其他操作系统也可以使用浏览器、文件夹资源管理器等工具进行访问。

访问协议前缀都是  ftp://IP 地址 ,端口一般都是默认端口,打开 mac 上的自带工具 Finder,选择前往,再选择连接服务器,如下:
基于滴滴云主机搭建 FTP 文件共享服务器(一)_第6张图片

进入如下界面,输入 FTP 服务器信息:
基于滴滴云主机搭建 FTP 文件共享服务器(一)_第7张图片

默认只能使用匿名用户访问,如图:
基于滴滴云主机搭建 FTP 文件共享服务器(一)_第8张图片

成功后如下图:
基于滴滴云主机搭建 FTP 文件共享服务器(一)_第9张图片

下面做一些配置:
允许所有员工上传和下载文件,并允许创建用户自己的目录:

anon_mkdir_write_enable  字段可以控制是否允许匿名用户创建目录。

查看并备份原配置文件:

允许匿名用户访问:

  anonymous_enable = YES

允许匿名用户上传文件并可以创建目录:

  anon_upload_enable = YES

  anon_mkdir_write_enable = YES

如图:
基于滴滴云主机搭建 FTP 文件共享服务器(一)_第10张图片

重新启动服务:

  [ root @ 10 - 255 - 1 - 40   vsftpd ] # systemctl restart vsftpd

  [ root @ 10 - 255 - 1 - 40   vsftpd ] #

mac 终端:

基于滴滴云主机搭建 FTP 文件共享服务器(一)_第11张图片

Windows 资源管理器:
基于滴滴云主机搭建 FTP 文件共享服务器(一)_第12张图片

解决办法:
基于滴滴云主机搭建 FTP 文件共享服务器(一)_第13张图片

修改完后,再次访问:
基于滴滴云主机搭建 FTP 文件共享服务器(一)_第14张图片

但是发现,能创建目录,但不能删除和重命名文件夹,如图所示:
基于滴滴云主机搭建 FTP 文件共享服务器(一)_第15张图片   基于滴滴云主机搭建 FTP 文件共享服务器(一)_第16张图片

我们建立一个文件夹,如下:

基于滴滴云主机搭建 FTP 文件共享服务器(一)_第17张图片

匿名用户上传文件就算可以了,但是不能删除和重命名。

注:工作中,匿名用户只是只读访问,写的权限也没有的。

补充:如果想让匿名用户可以重命名或者删除的权限,添加如下一条配置参数,即  anon_other_write_enable ,如下:

基于滴滴云主机搭建 FTP 文件共享服务器(一)_第18张图片

重新启动服务就可以对重新命名和删除文件夹了。

  [ root @ 10 - 255 - 1 - 40   ftp ] # systemctl restart vsftpd

匿名用户就可以删除和修改,非常不安全,所以要慎重使用这个参数。

注意,默认匿名用户家目录的权限是 755,这个权限是不能改变的。

实战演练

假设现有两个部门负责产品文档,他们分别使用 user1 和 user2 帐号进行管理。要求只允许 user1 和 user2 帐号登录 FTP 服务器,但不能登录本地系统,并将这两个帐号的目录限制为  /home/test ,而且不能进入该目录以外的任何目录。

1.建立产品系统内容的 FTP 帐号 user1 和 user2 并禁止本地登录,然后设置其密码

  [ root @ 10 - 255 - 1 - 40   ftp ] # useradd -s /sbin/nologin user1

同样创建user2用户。

修改两个用户密码:

基于滴滴云主机搭建 FTP 文件共享服务器(一)_第19张图片

将 user2 同样更改密码,也可以直接使用命令 passwd user1 回车修改密码。

2.配置  vsftpd.conf  主配置文件并作相应修改

  [ root @ 10 - 255 - 1 - 40   ftp ] # vim /etc/vsftpd/vsftpd.conf

继续修改,将:

修改为:

local_root=/home/test:设置本地用户的根目录为  /home/test
chroot_list_enable=YES:激 chroot 功能
chroot_list_file=/etc/vsftpd/chroot_list:设置锁定用户在根目录中的列表文件。此文件存放要锁定的用户名

保存并退出。

3.建立  /etc/vsftpd/chroot_list  文件,添加 user1 和 user2 帐号

按照上述配置修改好文件。

创建对应文档目录:

使用资源管理器创建一个文件夹并验证:

会出现如下登录界面:
基于滴滴云主机搭建 FTP 文件共享服务器(一)_第20张图片

随便创建一个目录,如下:
基于滴滴云主机搭建 FTP 文件共享服务器(一)_第21张图片

基本的测试完了,欢迎拍砖。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/31559758/viewspace-2284766/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/31559758/viewspace-2284766/

你可能感兴趣的:(操作系统,运维,开发工具)