建立Vsftpd虚拟用户

mac2022-06-30  26

我们登录FTP有三种方式,匿名登录、本地用户登录和虚拟用户登录。 匿名登录:在登录FTP时使用默认的用户名,一般是ftp或anonymous。 本地用户登录:使用系统用户登录,在/etc/passwd中。 虚拟用户登录:这是FTP专有用户,有两种方式实现虚拟用户,本地数据文件和数据库服务器。 FTP虚拟用户是FTP服务器的专有用户,使用虚拟用户登录FTP,只能访问FTP服务器提供的资源,大大增强了系统的安全。   本文实验的Linux系统是CentOS 5 update2   本地数据文件方式 1. 添加虚拟用户口令文件 [root@CentOS5 /]#vi /etc/vsftpd/vftpuser.txt 添加虚拟用户名和密码,一行用户名,一行密码,以此类推。奇数行为用户名,偶数行为密码。 bobyuan #用户名 123456 #密码 markwang #用户名 123456 #密码   2. 生成虚拟用户口令认证文件 将刚添加的vftpuser.txt虚拟用户口令文件转换成系统识别的口令认证文件。 首先查看系统有没有安装生成口令认证文件所需的软件db4-utils。 [root@CentOS5 /]#rpm –qa |grep db4-utils [root@CentOS5 /]#rpm –ivh db4-utils-4.3.29-9.fc6.i386.rpm 下面使用db_load命令生成虚拟用户口令认证文件。 [root@CentOS5 /]#db_load –T –t hash –f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vftpuser.db   3. 编辑vsftpd的PAM认证文件 在/etc/pam.d目录下, [root@CentOS5 /]#vi /etc/pam.d/vsftpd 将里面其他的都注释掉,添加下面这两行: auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser account required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser   4. 建立本地映射用户并设置宿主目录权限 所有的FTP虚拟用户需要使用一个系统用户,这个系统用户不需要密码。 [root@CentOS5 /]#useradd –d /home/vftpsite –s /sbin/nologin vftpuser [root@CentOS5 /]#chmod 700 /home/vftpsite   5. 配置vsftpd.conf(设置虚拟用户配置项) [root@CentOS5 /]#vi /etc/vsftpd/vsftpd.conf guest_enable=YES #开启虚拟用户 guest_username=vftpuser #FTP虚拟用户对应的系统用户 pam_service_name=vsftpd #PAM认证文件   6. 重启vsftpd服务 [root@CentOS5 /]#service vsftpd restart   7. 测试虚拟用户登录FTP C:\User\Administrator>ftp 192.168.120.240 连接到192.168.120.240。 220 Welcome to BOB FTP server 用户(192.168.120.240(none)):markwang 331 Please specify the password. 密码: 230 Login successful.  

转载于:https://www.cnblogs.com/qizilong/archive/2012/04/08/2437652.html

相关资源:JAVA上百实例源码以及开源项目
最新回复(0)