背景知识

在开始第一天任务之前,先记录一下 ECS 、FTP 、VSFTPD这三个概念。(如果不了解它们分别代表什么,那么此次任务的意义就没法体现。)

ECS :云服务器 ECS ,全称 Elastic Compute Service ,是阿里云提供的一种弹性计算服务。简单来说,ECS 就是一个服务器,只不过在“云”上,用户省去了以前实体服务器采购、运维等步骤,而且还没有设备折旧之类的顾虑。相对于实体服务器的限制,ECS 支持即开即用,以及还可以对服务器配置弹性伸缩。

FTP:文件传输协议 FTP,全称 File Transfer Protocol ,是 TCP/IP 协议组中的协议之一。FTP 协议由两个部分组成,一是 FTP 服务器,可以用来存储文件;二是 FTP 客户端,可以用来访问 FTP 服务器上的资源。该协议默认使用 TCP 端口中的20和21这两个端口。

VSFTPD:全称 very secure FTP daemon ,是一款在 Linux 发行版中最受推崇的FTP服务器。在今天的任务中,将使用这款服务器软件开启 FTP 服务。

第一步:远程连接 ECS 服务器

首先,根据提示在页面左侧开通云产品资源,免费开通一个 ECS 服务器,用于后续实验。

然后,打开 Terminal ,输入连接命令ssh [username]@[ipaddress],其中[username]对应 ECS 服务器的用户,一般为默认的root,[ipaddress]对应 ECS 服务器的弹性ip,该信息可从右侧的 ECS 服务器信息栏获取。例如:ssh root@123.123.123.123(注意,ssh与root之间存在一个空格。)

输入连接命令后,提示 Are you sure you want to continue connecting (yes/no)?,直接输入yes继续连接,之后会要求输入 ECS 服务器的密码,密码依旧可从右侧的信息栏获取。(注意,输入密码时不可见,不要误以为自己没输。)

输入正确密码后,提示Welcome to Alibaba Cloud Elastic Compute Service !即为连接成功。

第二步:安装vsftpd

1.输入命令apt install vsftpd

2.输入命令systemctl enable vsftpd.service,用于设置 FTP 服务开机自启动。

3.输入命令systemctl start vsftpd.service,用于启动 FTP 服务。

4.输入命令netstat -antup | grep ftp,用于查看FTP服务监听的端口。成功查看端口的界面:

第三步:配置vsftp

vsftpd 安装后默认开启了匿名 FTP 的功能,使用匿名 FTP,用户无需输入用户名密码即可登录 FTP 服务器,但没有权限修改或上传文件。

文本介绍了以下几个配置 vsftpd 的方法以及相关的参数说明,您可以根据具体需要进行参考。

  • 配置匿名用户上传文件权限
  • 配置本地用户登录
  • vsftpd.conf 的配置文件参数说明

配置匿名用户上传文件权限

1、修改 vsftpd.conf 的配置文件的选项,可以赋予匿名 FTP 更多的权限。

  1. 修改 /etc/vsftpd/vsftpd.conf:
  2. 运行 vim /etc/vsftpd/vsftpd.conf。
  3. 按 i 键进入编辑模式。
  4. 将写权限修改为 write_enable=YES。
  5. 将匿名上传权限修改为 anon_upload_enable=YES。
  6. 按 Esc 键退出编辑模式,然后输入 :wq 保存并退出文件。

2、运行以下命令更改 /var/ftp/pub 目录的权限,为 FTP 用户添加写权限,并重新加载配置文件。

  1. chmod o+w /var/ftp/pub/
  2. systemctl restart vsftpd.service

配置本地用户登录

本地用户登录就是指用户使用 Linux 操作系统中的用户账号和密码登录 FTP 服务器。

vsftpd 安装后默只支持匿名 FTP 登录,用户如果试图使用 Linux 操作系统中的账号登录服务器,将会被 vsftpd 拒绝,但可以在 vsftpd 里配置用户账号和密码登录。具体步骤如下:

1、创建 ftptest 用户。

  1. useradd ftptest

2、运行以下命令修改 ftptest 用户密码。

  1. passwd ftptest

3、在home目录下创建ftptest文件夹

  1. mkdir ftptest
  2. chmod a+wrx ftptest

4、修改 /etc/vsftpd/vsftpd.conf:

  1. 运行 vim /etc/vsftpd/vsftpd.conf。
  2. 按键 i 进入编辑模式。
  3. 将是否允许匿名登录 FTP 的参数修改为 anonymous enable=NO。
  4. 将是否允许本地用户登录 FTP 的参数修改为 local_enable=YES。
  5. 按键 Esc 退出编辑模式,然后按键 :wq 保存并退出文件。

  1. 运行以下命令重新加载配置文件。
  1. systemctl restart vsftpd.service

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 端口的规则,具体步骤参见 添加安全组规则。

第四步:客户端测试   FileZilla_

打开客户端的 计算机,在路径栏输入 ftp://服务器 IP 地址:FTP 端口(如果不填端口则默认访问21端口),例如:ftp://0.0.0.0:20。弹出输入用户名和密码的对话框表示配置成功,正确的输入用户名和密码后,即可对 FTP 文件进行相应权限的操作。

说明 客户端使用此方法访问 FTP 站点时,需要对 IE 浏览器进行设置,才能打开 FTP 的文件夹。 打开 IE 浏览器,选择 设置 > Internet 选项 > 高级。勾选 启用 FTP 文件夹视图,取消勾选 使用被动 FTP。

几个不错的分享:

新建ftp用户并指定访问目录

在Linux中添加ftp用户,并设置相应的权限,操作步骤如下:

1、环境:ftp为vsftp。被限制用户名为test。被限制路径为/home/test

2、建用户:在root用户下:

useradd -d /home/ftp ftpname //增加用户test,并制定ftpname用户的主目录为/home/ftp
passwd ftpname //为ftpname设置密码

3、更改用户相应的权限设置:

usermod -s /sbin/nologin ftpname //限定用户ftpname不能使用telnet,只能使用ftp
usermod -s /sbin/bash ftpname //用户test恢复正常
usermod -d /ftp ftpname //更改用户ftpname的主目录为/ftp

4、限制用户只能访问/home/ftp,不能访问其他路径

修改/etc/vsftpd/vsftpd.conf如下:

chroot_list_enable=YES   #限制访问自身目录
# (default follows)
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list

新编辑 vsftpd.chroot_list文件,将受限制的用户添加进去,每个用户名一行

改完配置文件,不要忘记重启vsFTPd服务器
[root@linuxspliu root]# service vsftpd restart

5、如果需要允许用户修改密码,但是又没有telnet登录系统的权限:

usermod -s /usr/bin/passwd test #用户telnet后将直接进入改密界面

ftp://用户名:密码@url/目录

例:

ftp://userchenq:pwd@192.168.1.119/platform

阿里云ECS上Linux系统实例搭建FTP站点相关推荐

  1. 阿里云服务器的Linux系统中搭建springboot项目

    文章目录 一.云服务器 1.云服务器 弹性伸缩 2.官网免费注册 3.购买云服务器 购买学生机注意事项!!!!! 4.设置实例密码的启动实例 通过下图描述客户端是如何访问阿里云服务器的实例 实例密码设 ...

  2. 玩客云刷入Linux系统,搭建FTP服务器

    玩客云刷入LINUX系统参考这篇博客:https://lishuma.com/archives/3412 根据上面大佬的博客一步一步来很简单,简要总结几点: 1: 先刷安卓固件包,然后刷armbian ...

  3. 阿里云ECS,Ubuntu系统Tomcat搭建

    今天,花了一天的时间去搭建服务器,有一点心得体验我这里记录下来方便以后的查看. – tomcat版本:tomcat 9.0.0M20 1,我把这个tomcat通过wget下载到服务器中后,解压运行后, ...

  4. 在阿里云ECS上搭建Skynet服务器与Unity通信

    在阿里云ECS上搭建Skynet服务器与Unity通信 创建阿里云ECS实例 Skynet搭建 服务端代码部分 客户端部分(Unity) 创建阿里云ECS实例 这部分的话按照阿里云流程去做就可以了.也 ...

  5. 基于阿里云ECS,Ubuntu系统搭建离线下载服务器

    基于阿里云ECS,Ubuntu系统搭建离线下载服务器 很开心能参加本次阿里云训练营,使用的ECS是阿里云,ubuntu系统 1.了解什么是CCAA CCAA 是服务器离线下载解决⽅案包,组件包含了Ar ...

  6. 手把手教你在阿里云ECS上搭建惊艳的博客

    手把手教你在阿里云ECS上搭建惊艳的博客 相信大多数人都有自己搭建博客网站的想法,本文就手把手一步一步的进行,最终结果类似如下样式: 网站软件的选择 软件选择成熟而免费的WordPress,WordP ...

  7. 在 阿里云ECS 上安装 CDH6.2 standalong

    在 阿里云ECS 上安装 CDH6.2 0. pre Install 0.1 ECS 配置 基本配置至少 4核 16GB,比较烧 内存 8核 + 64GB 100GB SSD 5M 宽带 操作系统看 ...

  8. 阿里云ECS服务器Linux环境下配置php服务器(三)--项目部署篇

    在前两篇里,我们分别介绍了如何购买阿里云服务器,安装基本软件和配置(请看阿里云ECS服务器Linux环境下配置php服务器(一)--基础配置篇) 以及如何安装使用phpMyAdmin(请看阿里云ECS ...

  9. 在阿里云 ECS 上配置 SSH

    我在阿里云 ECS 上执行 git 命令,遇到如下错误: PLease make sure you have the correct access rights and the repository ...

最新文章

  1. Visual Studio配置VLFeat库(一次配置,永久生效)
  2. Python教程:对 a = [lambda : x for x in range(3)] 的理解
  3. 19.jsp生命周期
  4. EUREKA原理总结
  5. LabelImg 影像標註工具使用教學,製作深度學習用的資料集
  6. Buffer.concat()
  7. 绘制曲线 matlab,matlab绘制曲线图文
  8. 数字图像相关(Digital Image Correlation, DIC)中的非线性优化方法(FA-GN与IC-GN)
  9. 自己做网站需要考虑的问题
  10. canvas画布——太极图
  11. nginx配置华为云ssl证书
  12. Tomcat框架学习
  13. write() java_Java Writer write()方法
  14. FL Studio教程之扫弦器命令
  15. 基于STM32的照片查看器课程报告
  16. 使用bat 批处理 创建自己的自启动软件
  17. ng-alain新版尝试
  18. 案例 | 看某国有大行如何构建内部数据安全风险管控核心能力
  19. 如何委婉的发短信拒绝老师的offer
  20. Android 自定义模拟时钟控件

热门文章

  1. 胡塞尔与海德格尔与维特根斯坦
  2. node-sass安装失败 error D:\xxx\xxx\node_modules\node-sass: Command failed.(window + mac M1 pro)
  3. 做好质量分析,从5个方向入手就够了,快收藏
  4. 零售行业的六大主要EDI报文
  5. 简单的直接修改MAC地址的方法
  6. 漂亮的评论功能的html页面,「评论」功能设计总结
  7. java哪几种运算符_java运算符有哪些
  8. 四、字符编码:ascii、gbk、Unicode、utf-8
  9. 360校园招聘2016笔试题
  10. R软件--GEO数据分析教程:差异性分析、富集分析(GO\KEGG\DO)