vsftp 安装与配置

2025-05-07 14:11:43

1、vsftp安装可以用rpm安装,也可以用yum安装1、rpm安装,centos6.4的ISO镜像文件中包含了vsftp的安装包。 # rpm -ivh vsftpd-2.2.2-11.el6_3.1.x86_64.rpm2、用yum安装。 # yum -y install vsftpd

vsftp 安装与配置

2、创建虚拟用户的宿主用户并设置相应的权限1、创建虚拟用户的宿主用户 # useradd -d /test/ftp -s /sbin/nologin ftpuser2、将 /test/ftp 的所有者设定ftpusr用户 # mkdir -p /test/ftp # chown –R ftpuser.ftpuser /test/ftp3、虚拟用户对应文件夹权限设置: 虚拟用户的对应文件夹建立在/test/ftp 文件夹下,例如:test1用户对应的文件夹为/test/ftp/test1则参考如下方式设置权限 # mkdir /test/ftp/test1 # chown -R ftpuser.ftpuser /test/ftp/test1 # chmod -R 500 /test/ftp/test1 ----只允许下载 # chmod -R 700 /test/ftp/test1 ----允许上传和下载。

vsftp 安装与配置

3、建立虚拟用户口令库文件 1、 创建虚拟用户口令库文件 # touch /etc/vsftpd/login.txt 2、 编辑login.txt文件 (偶数行为用户名,奇数行为密码,当添加新的虚拟用户时,只需在文件尾输入两行信息即可---用户名和密码即可),例如: test1 ----------虚拟用户名 123456 ----------虚拟用户密码 test2 ----------虚拟用户名 abcdef ----------虚拟用户密码

vsftp 安装与配置

4、生成vsftp的认证文件:由于保存虚拟帐号和密码的文本文件(即上面创建的login.txt)无法被系统帐号直接调用,因此需要使用db_load命令生成db口令数据库文件 # db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.db ----执行完成后会在/etc/vsftpd文件夹内生成login.db口令库文件。 # chmod 600 /etc/vsftpd/login.db

vsftp 安装与配置

5、建立虚拟用户所需的PAM配置文件:为了使服务器能够使用数据库文件,对客户端进行身份验证,需要调用系统的PAM模块.PAM(Plugable Authentication Module)为可插拔认证模块,不必重新安装应用系统,通过修改指定的配置文件,调整对该程序的认证方式。PAM模块配置文件路径为/etc/pam.d/目录,此目录下保存着大量与认证有关的配置文件,并以服务名称命名。编辑/etc/pam.d/vsftpd文件,用#号注释掉所有行,然后添加如下内容: auth required /lib/security/pam_userdb.so db=/etc/vsftpd/loginaccount required /lib/security/pam_userdb.so db=/etc/vsftpd/login 注意:db=/etc/vsftpd/login 格式是这样的,去掉.db后缀 ,如果是64为系统,需将/lib 改成/lib64

vsftp 安装与配置

6、编辑vsftp的主配置文件---/etc/vsftpd/vsftpd.conf 文件,添加虚拟帐号的共同设置并添加user_config_dir字段,定义虚拟帐号的配置文件目录并创建单独的虚拟用户配置文件。编辑vsftp的主配置文件/etc/vsftpd/vsftpd.conf 文件。主要配置内容: anonymous_enable=NO 修改配置--- 禁用匿名用户登录 write_enable=YES 默认开启----允许使用任何可以修改文件系统的FTP的指令 local_enable=YES 默认开启---启用本地用户登录设置chroot_local_user=YES 自建配置---将所有本地用户限制在家目录中 pam_service_name=vsftpd:默认开启---配置vsftpd使用的PAM模块为vsftpd user_config_dir=/etc/vsftpd/config 自建配置,该文件夹内主要是各虚拟用户的同名配置文件,如test1用户对于的配置文件名为test1设置虚拟帐号的主目录为/ config max_clients=300:(自建配置)---设置FTP服务器最大接入客户端数为300个 max_per_ip=10: (自建配置)---设置每个IP地址最大连接数为10个 listen=YES 启动监听注意:主配置文件是虚拟账号共享的配置,所以主配置文件的设置对于虚拟账号是生效的

vsftp 安装与配置

7、添加虚拟帐号的共同设置并添加user_config_dir字段,定义虚拟用户帐号的配置文件目录并创建单独的虚拟用户配置文件。 # mk颊俄岿髭dir /etc/vsftpd/config 创建虚拟用户账号的配置文件夹。 # touch /etc/vsftpd/config/test1 创建虚拟用户test1的配置文件# echo"guest_enable=yes">>/etc/vsftpd/config/test1 开启虚拟帐号登录#echo "guest_username=ftpuser" >>/etc/vsftpd/config/test1 设置虚拟用户对应的系统帐号为ftpusr# echo "local_root=/test/ftp/test1" >>/etc/vsftpd/config/test1 设定虚拟用户登录的主目录# echo "download_enable=yes" >>/etc/vsftpd/config/test1设定是否允许下载# echo "anon_upload_enable=yes" >>/etc/vsftpd/config/test1设定上传功能# echo "anon_other_write_enable=YES" >>/etc/vsftpd/config/test1 设定删除、写入、更名权限# echo "anon_mkdir_write_enable=yes" >>/etc/vsftpd/config/test1设定创建文件夹权限#echo "anon_world_readable_only=no" >>/etc/vsftpd/config/test1 不允许匿名用户浏览整个服务器的文件系统# echo "anon_max_rate=100000" >>/etc/vsftpd/config/test1限定传输速度为100KB/s

8、添加新用户,如添加gotest :1、 编辑/etc/vsftpd/login.txt 文件,添加gotest用户名和密码2、 执行db_load命令,重新生成login.db口令库文件# db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.db3、 在/etc/vsftpd/config文件夹中增加用户gotest的同名文件gotest,并编辑gotest文件。参考test1文件的内容。# touch /etc/vsftpd/config/gotest4、 创建用户gotest的对应主目录/test/ftp/gotest ,并设置相应的权限# mkdir /test/ftp/gotest# chown –R ftpuser.ftpuser /test/ftp/gotest# chmod –R 500 /test/ftp/gotest

vsftp 安装与配置

9、自动创建用户脚本,通过下面脚本可以自动创建用户#!/bin/bashecho -n &孥恶膈茯quot;name:"read na罪焐芡拂meecho -n "password:"read passmkdir /test/ftp/$namechown ftpusr.ftpusr /test/ftp/$nameecho $name >>/etc/vsftpd/login.txtecho $pass >>/etc/vsftpd/login.txtdb_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/login.dbchmod 600 /etc/vsftpd/login.dbtouch /etc/vsftpd/config/$nameecho guest_enable=yes >>/etc/vsftpd/config/$nameecho guest_username=ftpusr >>/etc/vsftpd/config/$nameecho local_root=/test/ftp/$name >>/etc/vsftpd/config/$nameecho download_enable=YES >>/etc/vsftpd/config/$nameecho anon_upload_enable=yes >> /etc/vsftpd/config/$nameecho anon_other_write_enable=YES >>/etc/vsftpd/config/$nameecho anon_mkdir_write_enable=YES >>/etc/vsftpd/config/$nameecho anon_world_readable_only=no >>/etc/vsftpd/config/$name

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢