一、FTP协议
FTP(FileTransferProtocol)文件传输协议:用于Internet上的控制文件的双向传输,是一个应用程序(Application)。基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件。
FTP服务器默认使用TCP协议的20,21端口与客户端进行通信:
20端口是命令端口,用于建立数据连接并传输文件数据
21端口是数据端口,用于建立控制连接并传输FTP控制命令
二、FTP工作原理
主动模式:首先客户机会随机产生一个端口号,主动去链接服务器的tcp21端口,如果服务器是主动模式那么服务器会主动开启20端口和客户端相连,然后再传输数据
被动模式:首先客户机会随机产生一个端口号,主动去连接服务器的tcp21端口,如果服务器是被动模式,那么服务器会产生一个随机的端口号,被动等待客户机来连接后再发送数据
三、svftpd安装及配置
1.yum安装vsftpd:
2.检查vsftpd安装包是否存在
3.将vsftpd的配置文件备份在vsftpd目录下
4.vsftpd配置文件
5.重启vsftpd服务并关闭防火墙和增强安全防护功能
6.在匿名用户的默认目录下给文件夹最大权限并创建一个测试文件
7.测试
8.这样做777权限过高,存在安全隐患,需要设置本地用户验证访问ftp,禁止匿名用户登录,创建本地用户eva并重新设置密码123
四、vsftpd配置文件
1.ftp客户端:ftp
可以登录用户
1.匿名用户:anonymous或ftp
2.系统用户:在/etc/passwd中
3.虚拟用户:只可以用来登录ftp
2.配置文件位置:/etc/vsftpd/vsftpd.conf
get:下载 put:上传
根目录不允许有最大的777权限,否则会登陆不上
根目录:/var/ftp
3.黑名单和白名单的使用
黑名单:在黑名单上标记的用户是我们禁止访问的对象
白名单:在白名单上标记的用户是我们允许访问的对象,白名单的制定要比黑名单更为严格和安全