本系列博客是笔者在学习刘遄的《Linux就该这样学》的笔记,个人觉得这是一本很好的书,很值得我们去学习。因为笔者是自学,可能有些问题了解的层面没有那么深,各位大牛在看到笔者写的内容有错漏,望指出并给出建议,感激不尽!
- 文件传输协议简介
FTP是一种在互联网中进行文件传输的协议,基于客户端/服务器模式,默认使用20、21端口;
20端口(数据端口):用于进行数据传输;
21端口(命令端口):用于接收客户端发出的相关FTP命令与参数;
FTP服务:按照FTP协议在互联网上提供文件存储和访问服务的主机;
FTP客户端:向服务器发送连接请求,建立数据传输链路的主机。
FTP工作模式:
a.主动模式:FTP服务器主动向客户端发起连接请求;
b.被动模式:FTP服务器等待客户端发起连接请求;
- 非常安全FTP守护进程(very secure ftp daemon,vsftpd)安装
# 配置Yum软件仓库
# 1.创建挂载点
mkdir -p /media/cdrom
# 2.进行挂载
mount /dev/cdrom /media/cdrom
# 3.编辑配置文件
vim /etc/yum.repos.d/rhel7.repo
# 文件内容:
[rhel7]
name=rhel7
baseurl=file:///media/cdrom
enabled=1
gpgcheck=0
# 4.安装vsftpd服务
yum install vsftpd
# 5.清空iptables防火墙默认策略,并保存当前已经被清理的防火墙策略状态
iptables -F
service iptables save
# 6.vsftpd服务程序主配置文件(/etc/vsftpd/vsftpd.conf)
# 过滤、反选出没有包含#号的参数行,将过滤后的参数行通过输出重定向符号写回原始文件
mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf_bak
grep -v "#" /etc/vsftpd/vsftpd.conf_bak > /etc/vsftpd/vsftpd.conf
- vsftpd服务程序常用参数
参数 | 作用 |
---|---|
listen=[YES|NO] | 是否以独立运行的方式监听服务 |
listen_address=IP地址 | 设置要监听的IP地址 |
listen_port=21 | 设置FTP服务的监听端口 |
download_enable=[YES|No] | 是否允许下载文件 |
userlist_enable=[YES|NO] userlist_deny=[YES|NO] |
设置用户列表为"允许"还是"禁止"操作 |
max_clients=0 | 最大客户端连接数,0为不限制 |
max_per_ip=0 | 同一IP地址的最大连接数,0为不限制 |
anonymous_enable=[YES|NO] | 是否允许匿名用户访问 |
anon_upload_enable=[YES|NO] | 是否允许匿名用户上传文件 |
anon_umask=022 | 匿名用户上传文件的umask值 |
anon_root=/var/ftp | 匿名用户的FTP根目录 |
anon_mkdir_write_enable=[YES|NO] | 是否允许匿名用户创建目录 |
anon_other_write_enable=[YES|NO] | 是否开放匿名用户的其他写入权限 |
anon_max_rate=0 | 匿名用户的最大传输速率,0为不限制 |
local_enable=[YES|NO] | 是否允许本地用户登录FTP |
local_umask=022 | 本地用户上传文件的umask值 |
local_root=/var/ftp | 本地用户的FTP根目录 |
chroot_local_user=[YES|NO] | 是否将用户权限禁锢在FTP目录,确保安全 |
local_max_rate=0 | 本地用户最大传输速率,0为不限制 |