Esc 七天训练营 Day 1

阿里云 ECS 7 天实践训练营进阶班 - day01 - 基于ECS搭建FTP服务

准备阶段

要想实现FTP功能,肯定要先有服务器,接下来我们就先创建一台ECS

创建阿里云ECS

首先进入场景,然后选择开始体验,进去之后点击免费开通
阿萨斯的

大概等1分钟左右就会自动开通,到这一步我们就创建完成了。

在这里插入图片描述

连接阿里云ECS

创建好之后,我们需要从本地连接到服务器才能进行操作。首先我们通过win+R打开window终端,然后输入

ssh -V

 
 
  • 1

来检测下电脑上是否有ssh工具,如果显示下边的提示说明安装成功,
在这里插入图片描述
如果没有的话,可以去这里下载openssh

然后在终端输入连接命令 ssh [username]@[ipaddress] 例如

ssh root@47.100.30.172

 
 
  • 1

username(用户名) 和 ipaddress(IP地址)在这里
在这里插入图片描述
然后输入之后,会让你选择yes和no,这里我们输入yes,然后回车,会让你输入密码,这时我们把上边截图里的密码输入上去,然后回车,出现这个信息就说明连接成功了
在这里插入图片描述

配置阶段

vsftpd(very secure FTP daemon)是一款在Linux发行版中最受推崇的FTP服务器。vsftpd支持匿名访问和本地用户模式两种访问方式。匿名访问方式任何用户都可以访问搭建的FTP服务;本地用户模式只支持添加的本地用户访问搭建的FTP服务。
连接好之后我们开始在服务器配置vsftpd

安装vsftpd

运行以下命令安装

yum install -y vsftpd

 
 
  • 1

输入之后回车,然后等待服务器自动安装,出现这个画面代表安装成功了
在这里插入图片描述
然后输入下边这个命令配置开机启动

systemctl enable vsftpd.service

 
 
  • 1

在这里插入图片描述
启动FTP服务

systemctl start vsftpd.service    //这步执行完之后没有提示

 
 
  • 1

运行以下命令查看FTP服务监听的端口

netstat -antup | grep ftp

 
 
  • 1

在这里插入图片描述
这里我们可以看到是21端口,记住这些信息,之后我们会用到

配置vsftpd

安装好之后,我们需要对vsftpd配置一下,这里分两种模式,一种是匿名用户模式,一种是本地用户模式,两种只能选择一种配置

这里我们选择比较难的本地用户模式给大家讲一下

1、为FTP服务创建一个Linux用户

adduser ftptest

 
 
  • 1

然后设置下密码

passwd ftptest

 
 
  • 1

出现这个画面就是创建好了
在这里插入图片描述
2、 创建一个供FTP服务使用的文件目录

mkdir /var/ftp/test

 
 
  • 1

3、 更改/var/ftp/test目录的拥有者为ftptest

chown -R ftptest:ftptest /var/ftp/test

 
 
  • 1

4、修改vsftpd.conf配置文件

直接在终端一条条运行下边的命令

配置FTP为主动模式请执行如下命令:

sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf #禁止匿名登录FTP服务器 
sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf #监听IPv4 sockets 
sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf #关闭监听IPv6 sockets 
sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf #全部用户被限制在主目录 
sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf #启用例外用户名单 
sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf #指定例外用户列表文件,列表中的用户不被锁定在主目录 
echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf 
echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #设置本地用户登录后所在的目录

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

配置FTP为被动模式请执行如下命令:

sed -i 's/anonymous_enable=YES/anonymous_enable=NO/' /etc/vsftpd/vsftpd.conf #禁止匿名登录FTP服务器 
sed -i 's/listen=NO/listen=YES/' /etc/vsftpd/vsftpd.conf #监听IPv4 sockets 
sed -i 's/listen_ipv6=YES/#listen_ipv6=YES/' /etc/vsftpd/vsftpd.conf #关闭监听IPv6 sockets 
sed -i 's/#chroot_local_user=YES/chroot_local_user=YES/' /etc/vsftpd/vsftpd.conf #全部用户被限制在主目录 
sed -i 's/#chroot_list_enable=YES/chroot_list_enable=YES/' /etc/vsftpd/vsftpd.conf #启用例外用户名单 
sed -i 's/#chroot_list_file=/chroot_list_file=/' /etc/vsftpd/vsftpd.conf #指定例外用户列表文件,列表中的用户不被锁定在主目录 
echo "allow_writeable_chroot=YES" >> /etc/vsftpd/vsftpd.conf 
echo "local_root=/var/ftp/test" >> /etc/vsftpd/vsftpd.conf #设置本地用户登录后所在的目录 

echo “pasv_enable=YES” >> /etc/vsftpd/vsftpd.conf #开启被动模式
echo “pasv_address=<FTP服务器公网IP地址>” >> /etc/vsftpd/vsftpd.conf #本教程中为ECS服务器弹性IP
echo “pasv_min_port=20” >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最小值
echo “pasv_max_port=21” >> /etc/vsftpd/vsftpd.conf #设置被动模式下,建立数据传输可使用的端口范围的最大值

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

5、在/etc/vsftpd目录下创建chroot_list文件,并在文件中写入例外用户名单

#使用vim命令编辑chroot_list文件,添加例外用户名单。此名单中的用户不会被锁定在主目录,可以访问其他目录。
vim /etc/vsftpd/chroot_list

 
 
  • 1
  • 2

6、重启FTP服务

systemctl restart vsftpd.service

 
 
  • 1

测试阶段

一切准备就绪,接下来我们测试一下
1、打开浏览器,在地址栏中输入ftp://<FTP服务器公网IP地址>:FTP端口,FTP服务器公网IP地址为ECS服务器的弹性IP地址。例如:ftp://106.15.9.91:21

2、在弹出的框中输入用户名和密码,用户名在上边添加用户那里有,如果用的文章中的命令,那用户名就是ftptest,密码是自己设置的

在这里插入图片描述
3、登陆成功后就会显示下边的页面
在这里插入图片描述
因为此目录没有文件,所以什么也没显示

——————————————————————————————————————————————————
到此处,这次的项目就完成了,后续可以自己在该目录下载一些文件来尝试下对文件的操作。
同时以后自己有服务器了也可以搭建一个这样的功能供自己保存或下载文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
社会发展日新月异,用计算机应用实现数据管理功能已经算是很完善的了,但是随着移动互联网的到来,处理信息不再受制于地理位置的限制,处理信息及时高效,备受人们的喜爱。所以各大互联网厂商都瞄准移动互联网这个潮流进行各大布局,经过多年的大浪淘沙,各种移动操作系统的不断面世,而目前市场占有率最高的就是微信小程序,本次开发一套基于微信小程序的生签到系统,有管理员,教师,学生三个角色。管理员功能有个人中心,学生管理,教师管理,签到管理,学生签到管理,班课信息管理,加入班课管理,请假信息管理,审批信息管理,销假信息管理,系统管理。教师和学生都可以在微信端注册和登录,教师可以管理签到信息,管理班课信息,审批请假信息,查看学生签到,查看加入班级,查看审批信息和销假信息。学生可以查看教师发布的学生签到信息,可以自己选择加入班课信息,添加请假信息,查看审批信息,进行销假操作。基于微信小程序的生签到系统服务端用Java开发的网站后台,接收并且处理微信小程序端传入的json数据,数据库用到了MySQL数据库作为数据的存储。这样就让用户用着方便快捷,都通过同一个后台进行业务处理,而后台又可以根据并发量做好部署,用硬件和软件进行协作,满足于数据的交互式处理,让用户的数据存储更安全,得到数据更方便。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值