Linux
下
VsFTP
和
ProFTP
用户管理高级技巧
FTP
服务时互联网上比较古老的一种应用,至今
Interner
应用面非常广泛,但令管理员头痛不已的是其用户管理,既多且杂,如何解决这一问题呢?使用
MySQL
与
ProFTP
或
VsFTP
软件结合可以搭建一个高效、稳定且集中管理的
FTP
服务器。本来就来介绍一下如何搭建一个方便管理的基于
MySQL
数据库的
FTP
服务器。
一、软件版本的选择:
搭建基于数据库的
FTP
服务器首先要选择合适的软件。下面就是所选择软件的详细信息:
◆
Linux
版本
RHEL5
;
◆
MySQL
版本
MySQL-standard- 5.1.30 -1.rhel5.src.rpm;
◆
FTP
服务器
proftpd- 1.3.2 .tar.gz
和
vsftpd-2.2.1.tar.gz;
◆
MySQL
的
PAM
验证程序
pam_mysql-0.8RC1.tar.gz;
需要说明的是,
RHEL5
安装时自定义安装,“
development tools
”项必须选择,否则编译调试软件时需要的软件包需另行安装;其次,要确保所安装
Linux
系统时没有安装
MySQL
与
FTP
服务器等软件,如果有则先卸载;再次,
ProFTPD
与
VsFTPD
两者不要在同台计算机同时使用,这样会造成意想不到的问题,读者根据自己的需求和软件的具体功能选择其中之一。
建立程序安装目录
整个安装过程以
root
用户执行如下命令:
#cd /soft/programe
#mkdir mysq
需要注意目录名称的大小写。
#mkdir proftpd
#mkdir pam_mods
MySQL
的安装目录为
/soft/program/mysql,ProFTPD
的安装目录为
/soft/program/proftpd
,
pam_mysq1.so
的安装目录为
/soft/program/pam_mods
,
/storage
是一个已经存在的目录,所有的
FTP
用户上传和下载文件都存放在这里。
安装MySQL
◆
增加一个管理
MySQL
的用户和组:
#groupadd mysqlgrp
#useradd -g mysqlgrp mysqladm
#passwd mysqladm
◆
切换到
MySQL-stan-dard- 5.1.30 -1.rhel5.src.rpm
文件所在的目录,执行以下步骤安装:
#rpm-ivh MySQL-stan-dard- 5.1.30 -1.rhel5.src.rpm
此条命令解压出
mysql- 5.1.30 .tar.gz
文件存放在以下的目录中。
#cd /usr/src/redhat/SOURCE
#tar zxvf mysqt- 5.1.30 .tar.gz
#cd mysql- 5.1.30
#./configure Prefix=/soft/program/mysql --with-extra-charsets=all
其中
,
“
--prefix=/soft/program/mysql
”参数是用来指定
Mysql
的安装目录,“
--with-extra-charsets=all
”是用来支持所有的字符集。
#make
#make install
◆
初始化数据库
#cd /soft/program/mysql/bin
#./mysql_install_db
◆
为了安全要修改数据库存放目录的属主信息和访问模式
/soft/program/mysqll/var
为数据库存放的缺省目录
#cd /soft/program/mysql
#chown �CR mysqladm:mysqlgrp var
#chmod -R go-wrx var
◆
修改配置文件
#cd /soft/program/mysql/share/mysql
#cp my-small.cnf /etc/my.cnf
#cd /etc
在
my.cnf
文件中,增加如下内容:
[mysql]
user=mysqladm #
表示用
mysqladm
用户启动
MySQL#
default-character-set=utf8 #
表示使用
UTF-8
字符集,此种字符集通用性较好,也很好的支持中文,当然也可以直接使用
GBK
。
[clent]
Default-character-set=utf8
◆
启动
启动方式有两种,一种是手工启动,一种是自动启动,其中手工启动的操作如下:
#cd /soft/program/mysql/bin
#./mysqld_safe&
自动启动则需要在
/etc/rc.d/rc/local
中加入以下的内容,开机自动启动
MySQL
数据库:
If [-x /soft/program/mysql/bin/mysqld_safe]; then
install_path_name /bin/mysqld_safe&
fi
◆
修改管理员密码
使用如下命令修改数据库密码:
#cd /soft/program/mysql/bin
#./mysqladmin -h localhost -u root password '123456'
上述命令的意思是本机上(
-h host
)使用的管理数据库的缺省管理账号
root
。需要注意的事,此
root
并非
Linux
系统中的
root
用户,密码设置为
123456.
安装ProFTPD
◆切换到
proftpd- 1.3.2 .tar.gz
文件所在的目录,执行以下步骤安装:
#tar zxvf proftpd- 1.3.2 .tar.gz
#cd proftpd- 1.3.2
#./configure--prefix=/soft/program/proftpd --with-modules=mod_sql:mod_sql_mysql:mod_quotatab:mod_quotatab_sql
此参数将支持
MySQL
和
Quota
模块添加进来。
--with-includes=/soft/program/mysql/include/mysql
上述参数指定
MySQL
中
include
的目录路径。
--with-libraries=/soft/program/mysql/lib/mysql
此参数指定
MySQL
中
lib
的目录路径。
#make
#make install
使用如下命令建立一个用于管理
ProFTPD
的
Linux
系统账号和组。
#groupadd -g 2009 ftpgroup
#useradd -u 2009 �Cs /bin/false -d /storage -g ftpgroup ftpuser
#chown -R ftpuser.ftpgroup /storage
#chmod �CR go-wrx- /storage
#chmod �CR u+wrx /storage
简单修改
ProFTPD
配置文件,使之正常运行:
#cd /soft/program/proftpd/etc
用编辑器打开
proftpd.conf,
修改一下的内容:
#Set the user and group under which the server will run.
User ftpuser
Group ftpgroup
◆启动
ProFTPD
启动
Proftpd
同样有两种方法,即手工启动和自动启动,其中手工启动操作如下:
#cd /soft/program/proftpd/sbin/
#./proftpd
此时一个基本的
FTP
服务器已经搭建成,可以进行测试了。需要注意的是,启动时如果出现具有以下信息的错误:
error while loading shared libraries:libmysqlclient.so.15:cannot open shared object file:No such file or directory
通常的解决办法如下:
#cd /etc
用文本工具打开
ld.so.conf,
添加以下的内容
/soft/program/mysql/lib/mysql
#ldconflg
更新
ld.so cache file
。
要让
ProFTPD
自动启动在
/etc/rc.d/rc.local
中加入以下的内容,开机即可自启动
ProFTPD:
/soft/program/proftpd/sbin/proftpd
续:http://os.51cto.com/art/200910/158830.htm