很多时候为了安全,不想在Ubuntu系统里面建立用户来使用ftp,这时候可以考虑使用proftpd和mysql来实现,用mysql管理用户。
根据本文的引导可以快速地建立ftp+mysql服务器
1、环境:
Ubuntu 10.04.1 64bit
proftpd 1.3.2
mysql 5.1.41
2、安装proftpd
Ubuntu上
apt-get install proftpd-basic proftpd-mod-mysql mysql-server
3、修改proftpd.conf配置文件
修改为:
ServerIdent on "Serv-U FTP" ServerName "ftp.gaojinbo.com" DefaultRoot ~
4、文件最后添加
RootLogin off RequireValidShell off LoadModule mod_sql.c LoadModule mod_sql_mysql.c AuthOrder mod_sql.c SQLBackend mysql SQLAuthTypes Backend SQLAuthenticate users* groups* SQLConnectInfo ftpuser@localhost root ylmf SQLUserInfo ftp_users userid passwd uid gid homedir shell SQLGroupInfo ftp_groups groupname gid members SQLLog PASS updatecount SQLNamedQuery updatecount UPDATE "countcount=count+1, accessed=now() WHERE userid=’%u’" ftp_users SQLLog STOR,DELE modified SQLNamedQuery modified UPDATE "modified=now() WHERE userid=’%u’" ftp_users
5、添加用户www
useradd www
添加www用户用于ftp文件权限,uid和gid为1001
6、建立数据库
mysql -uroot -pgaojinbo create database ftpuser default character set=utf-8; use ftpuser create table ftp_users(userid varchar(30),passwd varchar(50),uid int(10),gid int(10),homedir varchar(50),shell varchar(50)); insert into ftp_users values(‘gaojinbo’,password(‘gaojinbo’),’1001′,’1001′,’/var/ftp/virtual/gaojinbo.com’,'/bin/nologin’); create table ftp_groups(groupname varchar(50),gid int(10),members varchar(250)); insert into ftp_groups values(‘ftpgroup’,’1′,’gaojinbo’);
建立用户主目录
mkdir -p /var/ftp/virtual/gaojinbo.com
7、启动proftpd并测试
/etc/init.d/proftpd start
or
proftpd –nd6
ftp localhost
用户gaojinbo,密码gaojinbo
这样Ubuntu下安装ProFTPd和MySQL就完成了!