Vsftp安装及配置虚拟用户-创新互联-成都快上网建站

Vsftp安装及配置虚拟用户-创新互联

Vsftp安装及配置虚拟用户

成都创新互联公司长期为1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为武陟企业提供专业的做网站、成都网站制作武陟网站改版等技术服务。拥有10多年丰富建站经验和众多成功案例,为您定制开发。

一、安装

采用yum安装

[root@VM_64_122_centos vsftpd]# yum installvsftpd

安装完成以后vsftpd的默认配置文件在/etc/vsftpd

二、建立虚拟用户的过程

1,创建虚拟用户文本文件,添加虚拟用户和密码

[root@VM_64_122_centos vsftpd]# vivuser.txt

奇数行是用户名,偶数是密码。

比如:

admin 123!@# yunying yunying sheji sheji chanpin chanpin

2,生成虚拟数据库文件

db_load默认没有安装,yum installdb4-utils db4-devel db4安装才能使用。

[root@VM_64_122_centos vsftpd]# yum installdb4-utils db4-devel db4

 执行以下命令生成虚拟数据库文件

[root@VM_64_122_centos vsftpd]# db_load -T-t hash -f /etc/vsftpd/vuser.txt /etc/vsftpd/vuser.db

3,配置PAM文件,目的是对客户端进行验证。批注所有内容,后添加:

[root@VM_64_122_centos vsftpd]# vi/etc/pam.d/vsftpd

auth required   pam_userdb.so        db=/etc/vsftpd/vuser account    required   pam_userdb.so        db=/etc/vsftpd/vuser

注意:不能写成db=/etc/vsftpd/vuser.db

4,修改虚拟数据库文件vuser.db的权限为 700

[root@VM_64_122_centos vsftpd]# chmod 700vuser.db

5,增加一个系统用户vuser ,使用它来对应所有虚拟用户,虚拟用户使用系统用户来访问ftp服务器。

useradd vuser mkdir /var/ftp/vuser chown vuser.vuser  /var/ftp/vuser

6,修改vsftpd.conf配置文件,使虚拟用户可以访问vsftpd服务器,增加以下参数

pam_service_name=vsftpd                 ####使用PAM验证 guest_enable=YES                    ####启用虚拟用户                    ####激活虚拟账户 guest_username=vuser                  ####把虚拟账户绑定为系统账户vuser user_config_dir=/etc/vsftpd/vsftpd_user_conf      ####虚拟用户配置文件目录

三、控制虚拟用户的访问

1,建立vsftpd_user_conf配置文件目录

mkdir /etc/vsftpd/vsftpd_user_conf

2,设置虚拟用户配置文件,与虚拟账户同名。

[root@VM_64_122_centos vsftpd]# vi/etc/vsftpd/vsftpd_user_conf/admin

3,编辑虚拟账户admin的配置文件admin,设置相应的权限。添加以下内容

     anon_world_readable_only=NO             ###浏览FTP目录和下载      anon_upload_enable=YES                ###允许上传      anon_mkdir_write_enable=YES             ###允许建立和删除目录      anon_other_write_enable=YES             ###允许改名和删除文件      local_root=/var/ftp/vuser              ###指定虚拟用户在系统用户下面的路径,限制虚拟用户的家目录,虚拟用户登录后的主目录。

4,重新启动ftp服务

[root@VM_64_122_centos vsftpd]# servicevsftpd restart

四、修改SELinux设置

SELinux 全称 SecurityEnhanced Linux (安全强化 Linux),是 MAC (Mandatory Access Control,强制访问控制系统)的一个实现,目的在于明确的指明某个进程可以访问哪些资源(文件、网络端口等)。

SElinux就是指明进程能访问那些资源,如果其访问了非指明的资源,SElinux就会阻止他,并告诉这个程序,你没有权限,不能让你访问。

所以需要修改SELinux的权限访问设置,不然连接ftp会出现一些异常报错。比如:

500 OOPS: cannot change directory:/home/*******

553 could not create file

查看ftp相关选项

sestatus-b | grep ftpd

下面是常用的布尔变量:

allow_ftpd_anon_write:关闭这个布尔变量会阻止 vsftpd 读取 public_content_rw_t 类型的文件和目录。如果允许用户通过 FTP 上传文件。必须开放这个布尔变量。

allow_ftpd_full_access:当开放这个布尔变量时只有Linux(DAC)的权限来控制访问,通过验证的用户可以读取和写入标记为 public_content_t 或 public_content_rw_t 类型的文件。

allow_ftpd_use_cif:当开放这个布尔变量时vsftpd 允许 cifs_t 类型的文件和目录,因此这个布尔变量启用,可以让你的 FTP 服务器可以使用 Samba 文件系统。

allow_ftpd_use_nfsvsftpd:的当开放这个布尔变量时 vsftpd 允许 nfs_t 类型的文件和目录,因此这个布尔变量启用,可以让你的 FTP 服务器可以使用 NFS 文件系统。

ftp_home_dir:当开放这个布尔变量时认证用户可以读写自己的主目录中的文件。

ftpd_connect_db:当开放这个布尔变量时允许vsftpd 连接数据库。

httpd_enable_ftp_server:当开放这个布尔变量时容许的 httpd 作为 FTP 服务器,并且监听 FTP 端口。

tftp_anon_write:当开放这个布尔变量时允许TFTP 访问一个公共的目录

  启用以下选项:

   setsebool-P ftp_home_dir 1    setsebool-P allow_ftpd_full_access 1

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


网页标题:Vsftp安装及配置虚拟用户-创新互联
文章位置:http://kswjz.com/article/ceddpi.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流