ftp:File Transfer Protocol,工作在应用层的文件传输协议,监听在tcp的21号端口;而ftp协议的实现有vsftpd、lftp、Filezilla、proftpd等等。
ftp的用户一般由三类:
匿名用户:不需要账号和密码就能直接登录
本地用户:当前系统上非系统用户登录,即本地的普通用户
虚拟用户:借助于其他的存储方式系统来远程登录,而非本地用户
由于ftp的文件传输是明文的,不具有安全性;于是就有了一种安全的ftp协议的实现,那就是vsftpd
vsftpd是ftp协议实现中的一种,它具有安全的文件传输环境,相比于ftp安全环境高了很多。vsftp的主程序在/usr/sbin/目录下;配置文件为/etc/vsftpd/vsftpd.conf。可以修改vsftpd的主配置文件来调整vsftpd的特性
本文主要介绍vsftpd基于虚拟用户实现访问
准备环境:
(1)虚拟机1 IP:172.18.42.200;mariadb-server、pam_mysql已安装;用于vsftpd的服务器
(2)虚拟机2 IP:172.18.42.201;用于客户端尝试虚拟用户登录vsftpd服务器
一、在虚拟机2上创建数据、表,随后在表中创个两个用户(我们数据库以vsftpd为例)
1、创建表pam
2、在表pam中新增两个用户
3、随后创建一个用户,给此用户授权管理vsftpd数据库
二、操作虚拟机1
1、/etc/pam.d/目录下编辑文件vsftpd.mysql
2、在根目录下创建ftproot目录,并修改其属性;同时创建一个虚拟用户登录的映射用户
3、更改vsftpd的主配置文件
注意:更改之后要确保以下三项要为开启状态
4、可重启vsftpd的服务,随后可用虚拟机2尝试登录
注意:如果登录不上,需要去掉wtc用户对/ftproot用户的写权限
本文出自 “wtc” 博客,请务必保留此出处http://wangtianci.blog.51cto.com/11265133/1768411
原文地址:http://wangtianci.blog.51cto.com/11265133/1768411