You are on page 1of 38

FTP 服务器

基础内 容介绍 FTP 第



案例及 其相 关内容
服 四
课程总 结
务 章
课后习 题

FTP 服务器

教学目 的与要求 :
通过本 节课的学习 ,您应会:
 掌握 FTP 服务器的 配置和客 户端的操作
 熟悉 FTP 的工作体 系
 了解 FTP 服务器作 用和传输 模式
FTP 服务器

 重点 : vsftpd 服务器配置

 重点 :掌握如何 使用 vsftpd 软件包架设


FTP 服务器 。

 关键 词: 上传 下载
FTP 服务器

14-1 FTP 的基本概 念


1. FTP
• FTP ( 文件传 输协 议 ) 是 TCP/IP 协议 栈
所提供 的一 种子协 议, 定义 了一个 远程 计
算机系 统和 本地计 算机 系统 之间传 输文 件
的一个 标准 。
• FTP 的作用 是唯一 的, 仅仅是 用来 传输 文
件;
• 根据服 务的 对像不 同, 可是 分为: 匿名 服
务器、 与系 统 FTP 服务器 ;
FTP 服务器

2. FTP 的工作体系
• 服务器 与客户 机之 间利用 TCP 的 21 号端
口建立 控制连 接;利 用 20 号端口 建立数
据连接 ;
• 具体工 作过程 如下 :
 客户 机启 动客户 端程 序,请 求建 立服务 器的
连接
 服务 器对 客户机 进行 身份验 证
 进行 相应 目录操 作和 数据传 输
 断开 连接
FTP 服务器

FTP 基本原 理
 FTP 文件传输协议
控制连
客户 P 接 服务器 P



口 数据连
客户 接 服务器
DTP DTP

用户 客户机 FTP 服务器


FTP 服务器

4. Linux 下常 见的 FTP 软件
• Vsftpd
• Wu-ftpd

注: Red Hat Enterprise Linux 9.0 自带的 FTP 服务


器程序 为 Vsftpd ;
特点 :非 常高的 安全 性
带宽限 制功 能
良好的 扩展性
支持创 建虚 拟用户
高速、 稳定
FTP 服务器





FTP 服务器

给出案例
根据以下要求配置 ftp 服务器 , 具体要求如下 :
2. 允许匿名 用户登录和 本地用户登 录
3. 禁止匿名 用户上传
4. 允许本地 用户上传和 下载;
5. 在服务器 里创立一个 FTP 帐号 xh ,所 访问的目录 为 /share;
6. 进行一定 的设置,能 以 xh 用户来登录 到 FTP 服务 器上,并能 上
传与下载 文件;
7. 在 linux 系统中来进 行登录,并进 行上传与 下载;熟悉 子命令的
应用;
8. 用同样的 方法,在 FTP 服务器 中创建一个 ah 用户,访问的 目录
指向 /soft ,并 以同样的方 式来进行 访问;
FTP 服务器

与案例有关的内容分析

14-2 FTP 服务器配置


1 .安装 FTP 服务的相关 软件
• 装载第 三张安 装盘
vsftpd # 用于 创建一 个安 全的
FTP
服务
器;
• 检查是 否安装 : #rpm –qa|grep
vsftpd
FTP 服务器

匿名 FTP 服务器目录是
/var/ftp ,匿名下载目录 为 /var/ftp/pub;
FTP 服务器

• 相关文 件:
 /etc/vsftpd/vsftpd.conf // 主配置文 件
 /etc/vsftpd.ftpusers
// 指定 哪些 用户不 能访 问 FTP 服务器
 /etc/vsftpd.user_list
// 文件 中指 定的用 户是 否可以 访问 ftp 服务
器由
vsftpd.conf 文件中 的 userlist_deny 的取值 来决
定。
(userlist_deny=yes 时不能 访问 FTP 服务器 ;
userlist_deny=no 时,仅 仅允许
/etc/vsftpd.user_list 中指定 的用 户访问 FTP 服
务器 )
FTP 服务器

 /etc/vsftpd.ftpusers
设置不允许登录 的用户名单
FTP 服务器

 /etc/vsftpd.user_list
设置方 法同于 /etc/vsftpd.ftpusers ,根 据
vsftpd.conf 中 userlist_deny 的值决定 这
个文件 的意义
如果值为 “ yes” ,则 vsftpd.user_list
记录的用户不可访问 FTP 服务器
userlist_deny=?

如果值为 “ no” ,则 FTP 服务器仅仅



许 vsftpd.user_list 记录的用户访问
FTP 服务器

2 .修改 /etc/vsftpd/vsftpd.conf
• #vi /etc/vsftpd/vsftpd.conf
 功能: 设置F TP 服务器 相关 选项
 文件格 式:
# 说明语 句
       … …
       配置选 项
       ……
FTP 服务器

默认配 置 :
• anonymous_enable=YES
// 允许匿 名用户 登录
• local_enable= YES
// 允许本 地用户 登录
• write_enable= YES
// 是否开 放写权 限
FTP 服务器

• local_mask=022
// 设置 本地用 户的 文件创 建的 初始权 限为
022, 默认 值为 077
• dirmessage_enable= YES
// 设置 切换到 目录 时显示 .
message 隐含 文件的 内容
• xferlog_enable= YES
// 激活 上传和 下载 日志
FTP 服务器

• connect_from_port_20= YES
// 启用 FTP 数据端 口连 接
• pam_service_name=vsftpd
// 设置 PAM 认证服 务的配 置文 件名
称, 该文件 存放在 /etc/pam.d 目录 下
• userlist_enable= YES
// 允许 vsftpd.user_list 文件 中的 用
户访 问服 务器
FTP 服务器

• userlist_deny= YES
// 拒绝 vsftpd.user_list 文件
中的 用户 访问服务器
• listen= YES
// 是否使 用独占启动 方式
• tcp_wrappers= YES
// 使用 防火墙
FTP 服务器

 默认配 置文 件功能 说明 :
( 1 )允许 匿名用 户登 录 /var/ftp ,但 不能
离开 主目录
( 2 )允许 本地用 户登 录,且 可离 开主目

( 3 )匿名 用户只 能下 载,不 能上 传
FTP 服务器

( 4 )本地 用户允 许上 传 / 下载
( 5 )写在 文件 /etc/vsftpd.ftpusers 中的
本地 用户 禁止 登录
( 6 )服务 器使用 独占 方式启 动, 且无限

连接数
FTP 服务器

4. 启动服 务
#service vsftpd start

P259 例子
FTP 服务器

14-3 FTP 客户端的操作


1. linux 客户 端
(1) ftp
• #ftp 服务器 IP 地址 / 名称
ftp>ftp 子命 令
• 说明 : 常用的 ftp 子命令 有以下 几种
 ?|help
// 显示 ftp 内部命 令的帮 助信

FTP 服务器

 ![ 命令 ]
// 在本机 中执行 shell 命令后 回到 ftp
环境中
 lcd [dir]
// 将本地 工作目录切到 dir
close
// 中断与 远程服务器的 FTP 会话
FTP 服务器

 asc
// 使用 ascii 类型传 输方式
 bin
// 使用二 进制文 件传 输方式
 cd dir-name
// 进入远 程主机 目录
 pwd
// 显示远 程主机 的当 前工作 目

FTP 服务器

 mkdir dir-name
// 在远程 主机中 建立 目录
 ls [dir-name/file-name]
// 显示远 程目录 中的 内容
 get 远程 文件名 [ 本地 文件名 ]
// 下载远 程主机 的文 件
 mget 文件 名 文 件名 … ( 或者是 目录
名)
// 下载远 程主机 上的 多个文 件
FTP 服务器

 put 本地文 件
// 将本地 文件传 送到 远程 FTP 服务器
 mput 本地 文件 本 地文 件……
// 将多 个本地 文件 传送到 远程 FTP 服务

 rename 旧文 件名 新文 件名
// 更改远 程主机 文件 名
 delete 文件 名
// 删除远 程主机 中的 指定文 件
FTP 服务器

 mdelete 文件 名
// 删除远 程 FTP 服务 器中的 多个 文

 rmdir dir-name
// 删除远 程 FTP 服务 器中的 指定 目

 quit/bye
// 退出 FTP 会话
FTP 服务器

2. Windows 客户端
• 方法一 : IE
• 方法二 : c:/>ftp
• 方法三 :第三 方软 件: CuteFTP

注: 所访问 的目 录为用 户的 主目录


(可以 修改)
FTP 服务器
FTP 服务器

14-4 vsftpd 高级配置


1. 启用 ASCII 传输方 式(把 两项 前的 # 号去

掉即 可)
 ascii_upload_enble=yes
 ascii_download_enble=yes
2. 设置连接 服务 器后的 欢迎 信息
 ftpd_banner=welcome to ftp service.
 banner_file=/var/vsftpd_banner_file
FTP 服务器

3. 配置 基本的 性能 和安全 选项

 idle_session_timeout=60
// 设置用 户会 话的空 闲中 断时 间(秒 )
 data_connection_timeout=120
// 设置空 闲的 数据连 接的 中断 时间
 accept_timeout=60
 connect_timeout=60
// 设置客 户端 空闲时 自动 中断 和激活 连接 时

FTP 服务器

 max_clients=200
// 指明服务器总 的客户并发 连接数为 200
 max_per_ip=3
// 指明每 个客户机 的最大连接数 为 3
 local_max_rate=50000 ( 50kbytes/sec )
 anon_max_rate=30000
// 设置 本地用户和 匿名用户 的最大传输 速率限制
 pasv_min_port=50000
 pasv_max_port=60000
// 设置客 户端连接 时的端口范围 ,默认为 0
FTP 服务器





FTP 服务器

归纳与 总结
 通过本节课学习我们要掌握以下内容:
FTP 的工作体系
FTP 服务器作用 和传输模式
FTP 服务器的配 置
客户端 的操作
FTP 服务器





FTP 服务器

课后习题
1 、匿名 ftp 站点的主 目录 是 B
A 、 /ftp B 、 /var/ftp C 、 /home
D 、 /etc
2 、 vsftpd 在默认情况下监听(   )号端口 B
A 、 80 B 、 21 C 、 23 D 、 25

3 、 Vsftpd 除了安全、高速、稳定之外,还具有哪些特性
A 、支持虚拟用户 ABCD
B 、支持 PAM 或 xinetd/tcp_wrappers 认证方式
C 、支持两种运行方式:独立的和 Xinetd
D 、支持带宽限制等
FTP 服务器
4 、在 TCP/IP 模型中, 应用层 包含 了所有 的高 层协议
,在下 列的 一些应 用协 议中 , ( ) 是能够 实现本 地
与远程 主机 之间的 文件 传输 B 工作。
A. telnet B. FTP C .SNMP D. NFS
5 、 Red Hat Enterprise Linux 9.0 中默认的 FTP 服务器 C


A . wu-ftp B . Proftp C . Vsftpd D . pure-ftp
6 、 vsftpd 服务的启动脚本 (D )
A . ftp B . vsftp C . vtpd D . vsftpd

7 、以下属于 FTP 客户端命令的有   ( ABCD   )


A . ls B . get C . put D . bye



You might also like