欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

VSFTP+MySQL虚拟用户配置过程_MySQL

程序员文章站 2022-03-30 14:01:27
...
  VSFTPD是一种在UNIX/Linux中非常安全且快速的FTP服务器,目前已经被许多大型站点所采用。VSFTPD支持将用户名和口令保存在数据库文件或数据库服务器中。VSFTPD称这种形式的用户为虚拟用户。相对于FTP的本地(系统)用户来说,虚拟用户只是FTP服务器的专有用户,虚拟用户只能访问FTP服务器所提供的资源,这大大增强系统本身的安全性。相对于匿名用户而言,虚拟用户需要用户名和密码才能获取FTP服务器中的文件,增加了对用户和下载的可管理性。对于需要提供下载服务,但又不希望所有人都可以匿名下载;既需要对下载用户进行管理,又考虑到主机安全和管理方便的FTP站点来说,虚拟用户是一种极好的解决方案。本文介绍在RedHat Linux 9上如何将VSFTPD的虚拟用户名和密码保存在MySQL数据库服务器中。

  一、VSFTPD的安装

  目前,VSFTPD的最新版本是1.2.0版。官方下载地址为ftp://vsftpd.beasts.org/users/cevans/vsftpd-1.2.0.tar.gz。在安装前,需要先做以下准备工作:

  VSFTPD默认配置中需要“nobody”用户。在系统中添加此用户,如果用户已经存在,useradd命令有相应提示。

[root@hpe45 root]# useradd nobody

useradd: user nobody exists

  VSFTPD默认配置中需要“/usr/share/empty”目录。在系统中此目录,如果目录已经存在,mkdir命令有相应提示。

[root@hpe45 root]# mkdir /usr/share/empty/

mkdir: cannot create directory '/usr/share/empty': File exists

  VSFTPD提供匿名FTP服务时,需要“ftp”用户和一个有效的匿名目录。

[root@hpe45 root]# mkdir /var/ftp/

[root@hpe45 root]# useradd -d /var/ftp ftp

  接下来的操作对于ftp用户是否已经存在都是有用的。

[root@hpe45 root]# chown root.root /var/ftp

[root@hpe45 root]# chmod og-w /var/ftp

  以上准备工作完成后,我们就可以开始编译源代码了。假定我们下载的vsftpd-1.2.0.tar.gz在/root目录,执行以下命令:

[root@hpe45 root]# tar zxvf vsftpd-1.2.0.tar.gz

[root@hpe45 root]# cd vsftpd-1.2.0

[root@hpe45 vsftpd-1.2.0]# make

[root@hpe45 vsftpd-1.2.0]# make install