端口 

 
21  消息控制
 
22 数据传输
 
安装vsftpd 
 
编译源代码
 
tar zxcf vsftpd-2.0.1.tar.gz
 
cd vsftpd-2.0.1
 
make 
 
make install
 
 
安装配置文件
 
cp vsftpd.conf /etc/ 
 
cp RedHat/vsftp.pam /etc/pam.d/ftp
 
 
编辑配置文件
 
/etc/vsftpd.conf
 
添加listen=YES 
 
启动服务器
 
/usr/local/sbin/vsftpd &
 
 
netstat -tnl 查看信息
 
 
finger ftp 查看用户信息
 
 
 
 
 
 
 
chroot环境
 
/etc/vsftpd.conf
 
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
 
/etc/vsftpd.chroot_list
 
redhat
chinaitlab
 
 
 
 
重启  vsftpd
 
killall -HUP vsftpd     
 
killall -1 vsftpd
 
杀死vsftpd
 
killall -9 vsftpd
 
 
 
到目前为止还是使用了系统中真实的用户登录系统,不安全。。。
 
 
用户控制  /etc/ftpusers
 
 
more /etc/pam.d/ftp
 
 
 
 
 
虚拟账号
 
 
1.建虚拟账号 users.txt
 
tom
123 
jack
123
 
#db_load -T -t hash -f users.txt /etc/vsftpd_login.db
 
chmod 600 /etc/vsftd_login.db
 
 
2.修改/et/pam.d/ftp ,禁用原来的默认信息并增加:
 
 
auth required pam_userdb.so db=/etc/vsftpd_login
 
 
account required pam_userdb.so  db = /etc/vsftpd_login
 
 
3。建虚拟账号
 
 
 
useradd vuser
 
 
 
 
4.编辑/etc/vsftpd.conf 
 
 
禁用匿名账号的信息的相关信息,并添加
 
guest_enable =YES
 
guest_username=vuser
 
 
 
db_load命令问题
我安装的系统版本是Red Hat Enterprise Linux 5
db_load4 -T -t hash -f login.txt /etc/vsftpd_login.db,在使用这个命令时,提示-bash: db_load4: command not found
 
我的文件路径是正确的
请问有是什么原因,有什么解决方法 
 
 
 
 
找到解决方法了:
FC6(i386)中默认可能只安装了db4-4.3.29-9.fc6.i386.rpm和db4-devel-4.3.29-9.fc6.i386.rpm
要使用db_load需要将位其他几张光盘中的db4-java-4.3.29-9.fc6.i386.rpm
db4-tcl-4.3.29-9.fc6.i386.rpm
db4-utils-4.3.29-9.fc6.i386.rpm安装上