Freebsd下ProFTPd+web的管理界面:Unix和Linux中,vsftpd是一款非常安全的FTP服务器,任何发行版本中的vsftpd都非常安全。像RedHat、Debian、GNU、GNOME、KDE 等等一些大型站点,都采用vsftpd作为它们的FTP服务器。本文将介绍Freebsd下ProFTPd+web的管理界面。
版本信息:
Freebsd 8.1
Apache 2.2.17
Mysql 5.1.52
PHP 5.2.14
ProFTPd 1.3.3c
ProFTPd Administrator 1.2
关于ProFTPd 的web管理程序,常见的几种一般是webmin或ProFTPd Admin,ProFTPd Administrator。
经过多方面对比,最终选用 ProFTPd Administrator 下载地址: http://sourceforge.net/projects/proftpd-adm/ (目前可以使用)
因为我看到他有一个完按装教程,其它的管理工具在下载的文件中应该也有。
看下ProFTP Administrator的按装教程http://proftpd-adm.sourceforge.net/page_install.php(目前可以使用)
第一步:按装proftp
- cd /usr/ports/ftp/proftpd/
- make install clean
选择mysql和quota;
安装好后配置文件在 /usr/local/etc/proftpd.conf
启动:/usr/local/etc/rc.d/proftpd start | stop
添加启动项目 echo ‘proftpd_enable=”YES”‘ >> rc.conf
第二步:按装ProFTPd Administrator,在解压后的目录内
A:修改misc/database_structure_mysql/db_structure.sql这个文件的最后三行中的密码项
B:然后mysql -u root -p < misc/database_structure_mysql/db_structure.sql
C:如果环境是php5,修改chmod o+w configuration.xml
D:修改misc/sample_config/proftpd.conf(如果要支持quota则是修改misc/sample_config/proftpd_quota.conf)
需要修改:
在SQLConnectInfo处,数据库名子:proftpd_admin 用户名:proftpd :密码,就是在A:中设置的
E:cp misc/sample_config/proftpd.conf(或proftpd_quota.conf) /usr/local/etc/proftpd.conf
A-E完成配置
F:把整个解压的目录移动到一个apache可以访问的地方
建立目录:
- cd /
- mkdir ftp
- cd ftp
- mkdir incoming
- chmod o+w incoming
如果不是这两个目录,需要修改D:中你配置的文件对应的目录
可能遇到的问题:
1.用misc/sample_config/proftpd_quota.conf就是打开quota的这个文件时,用户会无法登陆,原要修改A:中文件的最后三行为五行,就是加上另外两个表的访问的用户名与密码
2.在administrator中无法打开Extensions的quota.要改其左边为filepaths的标签中的proftpd:到正确路径
可能的错误信息:
- Fatal: unknown configuration directive ‘SQLHomedirOnDemand’
- Fatal: unknown configuration directive ‘DisplayFirstChdir’
- Fatal: unknown configuration directive ‘LoadModule’
这些错误,看了下面的release note就知道该怎么做了
DisplayFirstChdir
This directive is deprecated in favor the new DisplayChdir directive. Support for this will be removed in future releases.
HiddenStor
Use the HiddenStores instead; support for the HiddenStor directive will be removed in future releases.
SQLHomedirOnDemand
The CreateHome directive would be used instead.
正如上面所说的将DisplayFirstChdir替换为DisplayChdir,将SQLHomedirOnDemand替换为CreateHome即可解决上述前两个问题。
第三个问题的解决方法是,直接注释掉loadmodule语句即可,这是因为在freebsd版本中,使用ports安装不支持dso方式加载模块,模块只能静态编译到系统中。