Ubuntu 9.04下VSFTPD MySQL 配置虚拟用户
实验环境:
操作系统 Ubuntu 9.04自定义只选择development tools安装
VSFTP-2.0.4 Mysql -5.0.24 pam_mysql-0.7RC1
一、 VSFTPD编译安装
1、上传源包到 /usr/local/vsftpd-2.0.4.tar.tar
2、tar zxvf vsftpd-2.0.4.tar.tar
3、cd /usr/local/vsftpd-2.0.4
4、vi builddefs.h内容如下
#ifndef VSF_BUILDDEFS_H
#define VSF_BUILDDEFS_H
#define VSF_BUILD_TCPWRAPPERS
#define VSF_BUILD_PAM (这行是关键,其它的用默认的就可以了。)
#define VSF_BUILD_SSL
#endif
5、make
6、ls -l vsftpd
-rwxr-xr-x 1 root root 86088 Jun 6 22:26 vsftpd //可执行程序已被编译成功
7、创建必要的帐号,目录.
# useradd nobody //可能你的系统已经存在此帐号,那就不用建立
# mkdir /usr/share/empty //可能你的系统已经存在此目录,那就不用建立
# mkdir /var/ftp //可能你的系统已经存在此目录,那就不用建立
# useradd -d /var/ftp ftp //可能你的系统已经存在此帐号,那就不用建立
# chown root:root /var/ftp
# chmod og-w /var/ftp
请记住,如果你不想让用户在本地登陆,那么你修改/etc/passwd文件,把他的登陆SHELL设置成/sbin/nologin,比如以上的nobody和ftp我就设置成/sbin/nologin
8、安装vsftp配置文件,可执行程序,man等:
# install -m 755 vsftpd /usr/local/sbin/vsftpd
# install -m 644 vsftpd.8 /usr/share/man/man8
# install -m 644 vsftpd.conf.5 /usr/share/man/man5
# install -m 644 vsftpd.conf /etc/vsftpd/vsftpd.conf
如果该步出错(install: cannot create regular file `/etc/vsftpd/vsftpd.conf': No such file or directory)是因为没有/etc/vsftpd目录,自己建一下就可以了。
mkdir /etc/vsftpd
9、编译/etc/vsftpd/vsftpd.conf在最后加入一行
listen=YES
10、启动FTP服务
/usr/local/sbin/vsftpd /etc/vsftpd/vsftpd.conf &
此时已经可以匿名登录FTP了,这样就完成了VSFTPD的安装。
(如果直接/usr/local/sbin/vsftpd 来启动的话,默认会调用/etc/vsftpd.conf配置文件的内容,请注意!)
如果要退出VSFTPD的话,只能用ps aux 命令把有关VSFTPD相关的行,用KILL ID的形式删除。
该步是启动vsftpd服务,如果你想要让机器一开机自动运行FTP的话,则应该把该步写到/etc/rc.d/rc.local中去。