天天看点

云服务器ECS下的FTP服务的安装配置与使用

ftp 是file transfer protocol(文件传输协议)的英文简称,而中文简称为“文传协议”。用于internet上的控制文件的双向传输。同时,它也是一个应用程序(application)。基于不同的操作系统有不同的ftp应用程序,而所有这些应用程序都遵守同一种协议以传输文件。

互联网上提供文件存储和访问服务的计算机,他们依照的是ftp协议提供服务!支持ftp协议的服务器就是ftp服务器!ftp协议提供存储和传输服务的一套协议。

下载"(download)和"上传"(upload)。”下载”文件就是从远程主机拷贝文件至自己的计算机上;”上传”文件就是将文件从自己的计算机中拷贝至远程主机上。用internet语言来说,用户可通过客户机程序向(从)远程主机上传(下载)文件。

ftp采用客户端/服务端的工作模式(c/s结构),通过tcp协议建立客户端和服务器之间的连接,但与其他大多数应用协议不同,ftp协议在客户端和服务端之间建立了两条通信链路,分别是控制链路和数据链路,其中,控制链路负责ftp会话过程中ftp命令的发送和接收,数据链路则负责数据的传输。

ftp会话包含了两个通道,控制通道和数据通道,ftp的工作有两种方式,一种是主动模式,一种是被动模式,以ftpserver为参照物,主动模式,服务器主动连接客户端传输,被动模式,等待客户端的的连接 。

(无论是主动模式还是被动模式,首先的控制通道都是先建立起来的,只是在数据传输模式上的区别)。

本教程主要介绍在windows server 2008 r2和centos 7.2的系统环境上手动部署。

选用windows server 2008 r2 企业版 64位中文版的系统,阿里云在公共镜像中提供了该系统镜像,用户可直接在控制台中更换此系统。并通过远程链接进入到系统中。

开始>管理工具>服务管理器。

云服务器ECS下的FTP服务的安装配置与使用

安装iis/ftp角色。

打开服务器管理器,找到添加角色,然后点击,弹出添加角色对话框,选择下一步。

云服务器ECS下的FTP服务的安装配置与使用

选择web服务器(iis),然后选择ftp服务,直到安装完成。

云服务器ECS下的FTP服务的安装配置与使用
云服务器ECS下的FTP服务的安装配置与使用
云服务器ECS下的FTP服务的安装配置与使用
云服务器ECS下的FTP服务的安装配置与使用
云服务器ECS下的FTP服务的安装配置与使用

进入iis管理器。

云服务器ECS下的FTP服务的安装配置与使用

右键网站出现添加“ftp站点”就表示ftp服务安装成功。

云服务器ECS下的FTP服务的安装配置与使用

创建windows用户名和密码,用于ftp使用。

开始>管理工具>服务器管理器,添加用户,如下图:本实例使用ftptest。

云服务器ECS下的FTP服务的安装配置与使用

在设置密码时要采用大写字母加小写字母加数字的组合,否则会显示无法通过密码策略。

云服务器ECS下的FTP服务的安装配置与使用

在服务器磁盘上创建一个供ftp使用的文件夹,创建ftp站点,指定刚刚创建的用户ftptest,赋予读写权限。

云服务器ECS下的FTP服务的安装配置与使用

填写ftp站点名称与默认目录。

云服务器ECS下的FTP服务的安装配置与使用

绑定21端口(也可自行设置)。

云服务器ECS下的FTP服务的安装配置与使用

授权之前创建的ftptest用户允许访问和读写权限。

云服务器ECS下的FTP服务的安装配置与使用

完成后看到设置的ftp站点。

云服务器ECS下的FTP服务的安装配置与使用

客户端测试。直接使用ftp://服务器ip地址:ftp端口(如果不填端口则默认访问21端口),如图。弹出输入用户名和密码的对话框表示配置成功,正确的输入用户名和密码后,即可对ftp文件进行相应权限的操作。

云服务器ECS下的FTP服务的安装配置与使用
云服务器ECS下的FTP服务的安装配置与使用

登录成功。

云服务器ECS下的FTP服务的安装配置与使用

选用centos 7.2 64位的系统,阿里云在公共镜像中提供了该系统镜像,用户可直接在控制台中更换此系统。并通过远程链接进入到系统中。

vsftpd是linux下的一款小巧轻快,安全易用的ftp服务器软件,是一款在各个linux发行版中最受推崇的ftp服务器软件。

1.安装vsftpd,直接yum 安装就可以了

云服务器ECS下的FTP服务的安装配置与使用

出现下图表示安装成功。

云服务器ECS下的FTP服务的安装配置与使用

2.相关配置文件:

云服务器ECS下的FTP服务的安装配置与使用

<code>/etc/vsftpd/vsftpd.conf</code>                    //主配置文件,核心配置文件

<code>/etc/vsftpd/ftpusers</code>                        //黑名单,这个里面的用户不允许访问ftp服务器

<code>/etc/vsftpd/user_list</code>                       //白名单,允许访问ftp服务器的用户列表

3.启动服务

<code>systemctl enable vsftpd.service</code>                    //设置开机自启动

<code>systemctl start vsftpd.service  </code>                  //启动ftp服务

<code>netstat -antup | grep ftp</code>               //查看ftp服务端口

云服务器ECS下的FTP服务的安装配置与使用

登录ftp服务器。

云服务器ECS下的FTP服务的安装配置与使用

使用匿名ftp,用户无需输入用户名密码即可登录ftp服务器,vsftpd安装后默认开启了匿名ftp的功能,用户无需额外配置即可使用匿名登录ftp服务器。

匿名ftp的配置在/etc/vsftpd/vsftpd.conf中设置。

<code>anonymous_enable=yes</code> //默认即为yes

云服务器ECS下的FTP服务的安装配置与使用

这个时候任何用户都可以通过匿名方式登录ftp服务器,查看并下载匿名账户主目录下的各级目录和文件,但是不能上传文件或者创建目录。

为了演示效果,我们安装一个lftp软件。

云服务器ECS下的FTP服务的安装配置与使用

利用lftp 公网ip连接到ftp服务器,可以看到只能查看和下载,不能进行上传操作

云服务器ECS下的FTP服务的安装配置与使用

出于安全方面的考虑,vsftpd在默认情况下不允许用户通过匿名ftp上传文件,创建目录等更改操作,但是可以修改vsftpd.conf配置文件的选项,可以赋予匿名ftp更多的权限。

允许匿名ftp上传文件。 

修改/etc/vsftpd/vsftpd.conf

<code>write_enable=yes</code>

<code>anon_upload_enable=yes</code>

云服务器ECS下的FTP服务的安装配置与使用

2、更改/var/ftp/pub目录的权限,为ftp用户添加写权限,并重新加载配置文件

云服务器ECS下的FTP服务的安装配置与使用

3、测试

云服务器ECS下的FTP服务的安装配置与使用

本地用户登录就是指使用linux操作系统中的用户账号和密码登录ftp服务器,vsftp安装后默只支持匿名ftp登录,用户如果试图使用linux操作系统中的账号登录服务器,将会被vsftpd拒绝

1.创建ftptest用户

云服务器ECS下的FTP服务的安装配置与使用

2.修改/etc/vsftpd/vsftpd.conf

<code>anonymous enable=no</code>

<code>local_enable=yes</code>

云服务器ECS下的FTP服务的安装配置与使用

3.还是通过lftp连接到ftp服务器

云服务器ECS下的FTP服务的安装配置与使用

另外简单介绍下vsftpd.conf的配置文件参数说明。

用户登陆控制

参数

说明

anonymous_enable=yes

接受匿名用户

no_anon_password=yes

匿名用户login时不询问口令

anon_root=(none)

匿名用户主目录

local_enable=yes  

接受本地用户

local_root=(none)

本地用户主目录

用户权限控制

write_enable=yes

可以上传(全局控制)

local_umask=022

本地用户上传文件的umask

file_open_mode=0666

上传文件的权限配合umask使用

anon_upload_enable=no

匿名用户可以上传

anon_mkdir_write_enable=no

匿名用户可以建目录

anon_other_write_enable=no

匿名用户修改删除

chown_username=lightwiter

匿名上传文件所属用户名

继续阅读