本文介绍了如何使用 Windows 实例以及 Linux 实例搭建 FTP 站点。
您可以参考安全加固方案对您的 FTP 服务进行安全加固。
Windows 实例搭建 FTP 站点
此方法适用于 Windows Server 2003 以上系统,本文以 Windows Server 2008 R2 为例。
Windows 实例搭建 FTP 站点具体操作步骤如下:
- 步骤一: 添加 IIS 以及 FTP 服务角色
- 步骤二: 创建 FTP 用户名及密码
- 步骤三: 设置共享文件的权限
- 步骤四: 添加及设置 FTP 站点
- 步骤五: 设置安全组及防火墙
- 步骤六: 客户端测试
步骤一: 添加 IIS 以及 FTP 服务角色
在创建 FTP 站点前,首先需要安装 IIS 及 FTP 服务。
远程连接并登录到 Windows 实例。
选择开始 > 所有程序 > 管理工具 > 服务管理器。
单击角色,然后单击添加角色。
在弹出的对话框中,选择下一步。
选择 Web 服务器(IIS),选择下一步。
选择 IIS管理控制台以及 FTP 服务器,选择下一步,单击安装。
步骤二: 创建 FTP 用户名及密码
创建 Windows 用户名和密码,用于 FTP 使用。如果您希望匿名用户可以访问,此步可省略。
选择开始 > 管理工具 > 服务器管理器。
单击配置 > 本地用户和组 > 用户,并在右侧空白处右击,再选择添加用户,本文例子中用户名使用“ftptest”。
注意:密码必须包括大写字母、小写字母和数字。否则会显示无法通过密码策略。
步骤三: 设置共享文件的权限
您需要为在 FTP 站点共享给用户的文件夹设置访问以及修改等权限。
在服务器磁盘上创建一个供 FTP 使用的文件夹,右击文件夹,选择属性。
单击安全,选择 Everyone,然后选择编辑。
选择 Everyone,然后根据需要,选择 Everyone 的权限,本文例子中允许所有权限。
步骤四: 添加及设置 FTP 站点
安装 FTP,设置好共享文件夹权限后,您需要创建 FTP 站点。
选择开始 > 所有程序 > 管理工具 > Internet 信息服务(IIS)管理器。
右击网络,选择添加 FTP 站点。
在弹出的窗口,填写 FTP 站点名称与共享文件夹的物理路径,然后单击下一步。
输入该实例的公网 IP 地址以及端口号。端口号可自行设置,FTP 默认端口号为 21 。
选择 SSL 设置。
允许:允许 FTP 服务器支持与客户端的非 SSL 和 SSL 连接。
需要:需要对 FTP 服务器和客户端之间的通信进行 SSL 加密。
无: 不需要 SSL 加密选择无。
选择要使用的一种或多种身份验证方法。
匿名:允许任何仅提供用户名 “anonymous” 或 “ftp” 的用户访问内容。
基本:需要用户提供有效用户名和密码才能访问内容。由于基本身份验证通过网络传输未加密的密码,因此请仅在清楚客户端和 FTP 服务器之间的连接是安全的情况下(例如,使用安全套接字层 (SSL) 时)使用此身份验证方法。
从允许访问列表中,选择以下选项之一:
所有用户:所有用户(不论是匿名用户还是已标识的用户)均可访问相应内容。
匿名用户:匿名用户可访问相应内容。
指定角色或用户组:仅特定角色或用户组的成员才能访问相应内容。请在对应的框中键入角色或用户组。
指定用户:仅指定用户才能访问相应内容。请在对应的框中键入用户名。
选择经过授权的用户的读取和写入权限。然后单击完成。
完成后看到设置的 FTP 站点。
步骤五: 设置安全组及防火墙
搭建好 FTP 站点后,您需要在实例安全组的入方向添加一条放行 FTP 端口的规则,具体步骤参见添加安全组规则,具体配置可以参考安全组规则的典型应用_FTP。
服务器防火墙默认放行 TCP 21 端口用于 FTP 服务。如果选用其他端口,您需要在防火墙中添加一条放行此端口的入站规则。具体方法参见设置 ECS 实例远程连接防火墙中的添加端口规则章节。其他防火墙设置参见微软官方文档。
步骤六: 客户端测试
打开客户端的计算机,在路径栏输入ftp://服务器 IP 地址:FTP 端口(如果不填端口则默认访问21端口)
,例如:ftp://0.0.0.0:20
。弹出输入用户名和密码的对话框表示配置成功,正确的输入用户名和密码后,即可对 FTP 文件进行相应权限的操作。
说明:客户端使用此方法访问 FTP 站点时,需要对 IE 浏览器进行设置,才能打开 FTP 的文件夹。 打开 IE 浏览器,选择设置 > Internet 选项 > 高级。勾选启用 FTP 文件夹视图,取消勾选使用被动 FTP。
Linux 实例创建 FTP 站点
vsftpd 是 Linux 下的一款小巧轻快、安全易用的 FTP 服务器软件,是一款在各个 Linux 发行版中最受推崇的 FTP 服务器软件。本文以 CentOS 7.2 64位操作系统为例,说明如何在 Linux 实例上安装 vsftpd。
步骤一: 安装 vsftpd
远程连接并登录到 Linux 实例。
运行以下命令安装 vsftpd。
yum install -y vsftpd
出现下图表示安装成功。
运行以下命令打开及查看
etc/vsftpd
。cd /etc/vsftpd
ls
说明:
/etc/vsftpd/vsftpd.conf
是核心配置文件。/etc/vsftpd/ftpusers
是黑名单文件,此文件里的用户不允许访问 FTP 服务器。/etc/vsftpd/user_list
是白名单文件,是允许访问 FTP 服务器的用户列表。运行以下命令设置开机自启动。
systemctl enable vsftpd.service
- 运行以下命令启动 FTP 服务。
systemctl start vsftpd.service
运行以下命令查看 FTP 服务端口。
netstat -antup | grep ftp
步骤二: 配置 vsftpd
vsftpd 安装后默认开启了匿名 FTP 的功能,使用匿名 FTP,用户无需输入用户名密码即可登录 FTP 服务器,但没有权限修改或上传文件。
文本介绍了以下几个配置 vsftpd 的方法以及相关的参数说明,您可以根据具体需要进行参考。
配置匿名用户上传文件权限
修改 vsftpd.conf
的配置文件的选项,可以赋予匿名 FTP 更多的权限。
修改
/etc/vsftpd/vsftpd.conf
:运行
vim /etc/vsftpd/vsftpd.conf
。按键 “i” 进入编辑模式。
将写权限修改为
write_enable=YES
。将匿名上传权限修改为
anon_upload_enable=YES
。按键 “Esc” 退出编辑模式,然后按键“:wq” 保存并退出文件。
运行以下命令更改
/var/ftp/pub
目录的权限,为 FTP 用户添加写权限,并重新加载配置文件。chmod o+w /var/ftp/pub/
systemctl restart vsftpd.service
配置本地用户登录
本地用户登录就是指用户使用 Linux 操作系统中的用户账号和密码登录 FTP 服务器。
vsftpd 安装后默只支持匿名 FTP 登录,用户如果试图使用 Linux 操作系统中的账号登录服务器,将会被 vsftpd 拒绝,但可以在 vsftpd 里配置用户账号和密码登录。具体步骤如下:
运行以下命令创建 ftptest 用户。
useradd ftptest
运行以下命令修改 ftptest 用户密码。
passwd ftptest
修改
/etc/vsftpd/vsftpd.conf
:运行
vim /etc/vsftpd/vsftpd.conf
。按键 “i” 进入编辑模式。
将是否允许匿名登录 FTP 的参数修改为
anonymous enable=NO
。将是否允许本地用户登录 FTP 的参数修改为
local_enable=YES
。按键 “Esc” 退出编辑模式,然后按键“:wq” 保存并退出文件。
vsftpd.conf 的配置文件参数说明
运行命令 cat /etc/vsftpd/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 | 匿名上传文件所属用户名 |
步骤三: 设置安全组
搭建好 FTP 站点后,您需要在实例的安全组的入方向添加一条放行 FTP 端口的规则,具体步骤参见 添加安全组规则,具体配置可以参考 安全组规则的典型应用_FTP。
步骤四: 客户端测试
打开客户端的计算机,在路径栏输入ftp://服务器 IP 地址:FTP 端口(如果不填端口则默认访问21端口)
,例如:ftp://0.0.0.0:20
。弹出输入用户名和密码的对话框表示配置成功,正确的输入用户名和密码后,即可对 FTP 文件进行相应权限的操作。
说明:客户端使用此方法访问 FTP 站点时,需要对 IE 浏览器进行设置,才能打开 FTP 的文件夹。 打开 IE 浏览器,选择设置 > Internet 选项 > 高级。勾选启用 FTP 文件夹视图,取消勾选使用被动 FTP。
注意事项:
阿里云教程:https://help.aliyun.com/document_detail/51998.html?spm=5176.2020520129.105.4.4ceb46ae6jp7pp
(1)配置阿里云安全组规则,开启20、21、22、1024-65535端口.
(2)iis里面只能配置开启一个ftp
(3)链接地址