阿里云ECS上Linux系统实例搭建FTP站点
背景知识
在开始第一天任务之前,先记录一下 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 更多的权限。
- 修改 /etc/vsftpd/vsftpd.conf:
- 运行 vim /etc/vsftpd/vsftpd.conf。
- 按 i 键进入编辑模式。
- 将写权限修改为 write_enable=YES。
- 将匿名上传权限修改为 anon_upload_enable=YES。
- 按 Esc 键退出编辑模式,然后输入 :wq 保存并退出文件。
2、运行以下命令更改 /var/ftp/pub 目录的权限,为 FTP 用户添加写权限,并重新加载配置文件。
- chmod o+w /var/ftp/pub/
- systemctl restart vsftpd.service
配置本地用户登录
本地用户登录就是指用户使用 Linux 操作系统中的用户账号和密码登录 FTP 服务器。
vsftpd 安装后默只支持匿名 FTP 登录,用户如果试图使用 Linux 操作系统中的账号登录服务器,将会被 vsftpd 拒绝,但可以在 vsftpd 里配置用户账号和密码登录。具体步骤如下:
1、创建 ftptest 用户。
- useradd ftptest
2、运行以下命令修改 ftptest 用户密码。
- passwd ftptest
3、在home目录下创建ftptest文件夹
- mkdir ftptest
- chmod a+wrx ftptest
4、修改 /etc/vsftpd/vsftpd.conf:
- 运行 vim /etc/vsftpd/vsftpd.conf。
- 按键 i 进入编辑模式。
- 将是否允许匿名登录 FTP 的参数修改为 anonymous enable=NO。
- 将是否允许本地用户登录 FTP 的参数修改为 local_enable=YES。
- 按键 Esc 退出编辑模式,然后按键 :wq 保存并退出文件。
- 运行以下命令重新加载配置文件。
- 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站点相关推荐
- 阿里云服务器的Linux系统中搭建springboot项目
文章目录 一.云服务器 1.云服务器 弹性伸缩 2.官网免费注册 3.购买云服务器 购买学生机注意事项!!!!! 4.设置实例密码的启动实例 通过下图描述客户端是如何访问阿里云服务器的实例 实例密码设 ...
- 玩客云刷入Linux系统,搭建FTP服务器
玩客云刷入LINUX系统参考这篇博客:https://lishuma.com/archives/3412 根据上面大佬的博客一步一步来很简单,简要总结几点: 1: 先刷安卓固件包,然后刷armbian ...
- 阿里云ECS,Ubuntu系统Tomcat搭建
今天,花了一天的时间去搭建服务器,有一点心得体验我这里记录下来方便以后的查看. – tomcat版本:tomcat 9.0.0M20 1,我把这个tomcat通过wget下载到服务器中后,解压运行后, ...
- 在阿里云ECS上搭建Skynet服务器与Unity通信
在阿里云ECS上搭建Skynet服务器与Unity通信 创建阿里云ECS实例 Skynet搭建 服务端代码部分 客户端部分(Unity) 创建阿里云ECS实例 这部分的话按照阿里云流程去做就可以了.也 ...
- 基于阿里云ECS,Ubuntu系统搭建离线下载服务器
基于阿里云ECS,Ubuntu系统搭建离线下载服务器 很开心能参加本次阿里云训练营,使用的ECS是阿里云,ubuntu系统 1.了解什么是CCAA CCAA 是服务器离线下载解决⽅案包,组件包含了Ar ...
- 手把手教你在阿里云ECS上搭建惊艳的博客
手把手教你在阿里云ECS上搭建惊艳的博客 相信大多数人都有自己搭建博客网站的想法,本文就手把手一步一步的进行,最终结果类似如下样式: 网站软件的选择 软件选择成熟而免费的WordPress,WordP ...
- 在 阿里云ECS 上安装 CDH6.2 standalong
在 阿里云ECS 上安装 CDH6.2 0. pre Install 0.1 ECS 配置 基本配置至少 4核 16GB,比较烧 内存 8核 + 64GB 100GB SSD 5M 宽带 操作系统看 ...
- 阿里云ECS服务器Linux环境下配置php服务器(三)--项目部署篇
在前两篇里,我们分别介绍了如何购买阿里云服务器,安装基本软件和配置(请看阿里云ECS服务器Linux环境下配置php服务器(一)--基础配置篇) 以及如何安装使用phpMyAdmin(请看阿里云ECS ...
- 在阿里云 ECS 上配置 SSH
我在阿里云 ECS 上执行 git 命令,遇到如下错误: PLease make sure you have the correct access rights and the repository ...
最新文章
- Visual Studio配置VLFeat库(一次配置,永久生效)
- Python教程:对 a = [lambda : x for x in range(3)] 的理解
- 19.jsp生命周期
- EUREKA原理总结
- LabelImg 影像標註工具使用教學,製作深度學習用的資料集
- Buffer.concat()
- 绘制曲线 matlab,matlab绘制曲线图文
- 数字图像相关(Digital Image Correlation, DIC)中的非线性优化方法(FA-GN与IC-GN)
- 自己做网站需要考虑的问题
- canvas画布——太极图
- nginx配置华为云ssl证书
- Tomcat框架学习
- write() java_Java Writer write()方法
- FL Studio教程之扫弦器命令
- 基于STM32的照片查看器课程报告
- 使用bat 批处理 创建自己的自启动软件
- ng-alain新版尝试
- 案例 | 看某国有大行如何构建内部数据安全风险管控核心能力
- 如何委婉的发短信拒绝老师的offer
- Android 自定义模拟时钟控件
热门文章
- 胡塞尔与海德格尔与维特根斯坦
- node-sass安装失败 error D:\xxx\xxx\node_modules\node-sass: Command failed.(window + mac M1 pro)
- 做好质量分析,从5个方向入手就够了,快收藏
- 零售行业的六大主要EDI报文
- 简单的直接修改MAC地址的方法
- 漂亮的评论功能的html页面,「评论」功能设计总结
- java哪几种运算符_java运算符有哪些
- 四、字符编码:ascii、gbk、Unicode、utf-8
- 360校园招聘2016笔试题
- R软件--GEO数据分析教程:差异性分析、富集分析(GO\KEGG\DO)