FTP服务
简介
FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。
FTP(File Transfer Protocol: 文件传输协议)作用: Internet 上用来传送文件的协议
今天的主角:vsftp
VSFTP是一个基于GPL发布的类Unix系统上使用的FTP服务器软件,它的全称是Very Secure FTP 从此名称可以看出来,编制者的初衷是代码的安全。
特点:
它是一个安全、高速、稳定的FTP服务器;
模式: C/S 模式
端口:
20(传数据)
21(传指令)
ftp工作流程(原理)
vsftpd:实现了window与linux之间文件共享(默认被动模式)
主动和被动模式:参照物是server端
主动模式就是服务器端主动连接客户端
被动模式就是服务器端等待客户端连接
主动模式过程:
客户端连接到服务器的21端口,发送密码,用户port指令。
服务器端开放21号端口与客户高位端口建立连接。
服务器端使用20端口主动连接客户端的随机高位端口。
客户端要返回确认,开始传输数据
被动模式过程:
客户端连接到服务器的21端口,发送密码,用户pasv指令。
服务器21号端口与客户高危端口建立连接,并告诉客户端服务器开放了一个高位端口等待连接。
服务器端使用随机高位端口主动连接客户端的随机高位端口。
客户端要返回确认,开始传输数据
两种模式的比较:
(1)PORT(主动)模式模式只要开启服务器的21和20端口,而PASV(被动)模式需要开启服务器大于1024所有tcp端口和21端口。
(2)从网络安全的角度来看的话似乎ftp PORT模式更安全,而ftp PASV更不安全,那么为什么RFC要在ftp PORT基础再制定一个ftp PASV模式呢?其实RFC制定ftp PASV模式的主要目的是为了数据传输安全角度出发的,因为ftp port使用固定20端口进行传输数据,那么作为黑客很容使用sniffer等探嗅器抓取ftp数据,这样一来通过ftp PORT模式传输数据很容易被黑客窃取,因此使用PASV(被动模式)方式来架设ftp server是最安全绝佳方案。(默认是被动工作模式)
部署安装FTP
下载vsftpd
配置匿名开放模式
匿名开放模式是一种最不安全的模式,任何人都可以无需密验证而直接登陆到FTP服务器。
[root@localhost /]# yum install vsftpd -y
第一步、编辑配置文件
可以向匿名用户开放的权限参数以及作用
参数 | 作用 |
anonymous_enable=YES | 允许匿名访问模式 |
anon_umask=022 | 匿名用户上传文件的umask值 |
anon_upload_enable=YES | 允许匿名用户上传文件 |
anon_mkdir_write_enable=YES | 允许匿名用户创建目录 |
anon_other_write_enable=YES | 允许匿名用户修改目录名称或删除目录 |
第二步、启动ftp
[root@localhost /]# systemctl restart vsftpd
第三步、Windows访问
写入文件时报错
原因:未更改属主
第五步、更改属主
默认访问/var/ftp/pub目录
[root@localhost /]# chown -R ftp: /var/ftp/pub [root@localhost ftp]# ll -d /var/ftp/pub drwxr-xr-x. 2 ftp ftp 6 10月 31 2018 pub
第六步、再次测试
创建成功,并且可以进行重命名和删除
配置本地模式
第一步、编辑配置文件
参数 | 作用 |
anonymous_enable=NO | 禁止匿名访问模式 |
local_enable=YES | 允许本地模式 |
write_enable=YES | 设置可写权限 |
local_umask=022 | 本地用户模式创建文件的umask值 |
userlist_deny=YES(可选) | 启用“禁止用户名单”,名单文件为ftpuser和user_list |
userlist_enable=YES(可选) | 开启用户作用名单文件功能 |
第二步、重启vsftpd
[root@songqi ~]# systemctl restart vsftpd
第三步、创建一个普通用户
[root@songqi ~]# useradd songqi useradd: user 'songqi' already exists [root@songqi ~]# passwd songqi Changing password for user songqi. New password: BAD PASSWORD: The password is shorter than 8 characters Retype new password: passwd: all authentication tokens updated successfully.
第四步、在window上访问
输入账号密码
文件被传到了用户家目录下
/home/songqi