一 安装
1、检查系统是否已安装vsftp
rpm -q vsftpd
package vsftpd is not installed #说明系统没有安装vsftpd
2、安装vsftpd
yum -y install vsftpd #系统自动安装
基本命令,配置完成后,进行操作
/etc/init.d/vsftpd start #启动 vsftpdservice vsftpd restart #重启 service vsftpd stop #停止 chkconfig vsftpd on #设置开机时自动运行
3、安装目录
默认目录为/etc/vsftpd/
二、配置
1、vsftp服务器配置文件说明:
/etc/vsftpd/vsftpd.conf vsftpd的核心配置文件,安装后需修改
/etc/vsftpd/ftpusers 用于指定哪些用户不能访问FTP服务器,保持默认
/etc/vsftpd/user_list 指定允许使用vsftpd的用户列表文件,保持默认
/etc/vsftpd/vsftpd_conf_migrate.sh 是vsftpd操作的一些变量和设置脚本
2、新建vsftp虚拟用户账号密码:
touch /etc/vsftpd/virtusers #编辑虚拟用户名单文件:(第一行账号,第二行密码,注意:不能使用root做用户名,系统保留) vi /etc/vsftpd/virtusers web1 123456 web2 123456
3、生成虚拟用户数据文件:
db_load -T -t hash -f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db chmod 600 /etc/vsftpd/virtusers.db #设定PAM验证文件,并指定对虚拟用户数据库文件进行读取
db_load是将用户名密码加密, 系统最终使用的是virtuses.db文件 ,virtusers 不被使用,可删除
4、新建/etc/pam.d/vsftp文件:
vi /etc/pam.d/vsftp auth sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/virtusers account sufficient /lib/security/pam_userdb.so db=/etc/vsftpd/virtusers
文件中,db的值是和第3步中的db文件名一致
注意:如果系统为64为,则上面的lib改为lib64,否则配置失败
5、新建一个系统用户vsftpuser(名字随意,和第7步配置文件中保持一致):
useradd -g ftp -s /sbin/nologin vsftpuser
6、建立虚拟用户个人Vsftp的配置文件,可给用户配置不同权限:
mkdir /etc/vsftpd/user_conf #user_conf名字自己定义,和vsftpd.conf中一致即可 cd /etc/vsftpd/user_conf touch web1 web2 #这里创建虚拟用户配置文件, 文件名为用户名 vi web1 #编辑用户web1配置文件,其他的跟这个配置文件类似 local_root=/ftp/web1 #web1用户登录的根目录 write_enable=YES anon_world_readable_only=NO anon_upload_enable=YES anon_mkdir_write_enable=YES anon_other_write_enable=YES
7、新建chroot_list文件,设置允许访问的虚拟用户:
touch /etc/vsftpd/chroot_list #允许访问的用户名列表 vi /etc/sftpd/chroot_list web1
上面配置据是只允许web1用户登录
8、修改vsftp服务器配置:
vsftpd.conf内容,将默认配置文件进行修改.
# Example config file /etc/vsftpd/vsftpd.conf # Allow anonymous FTP? (Beware - allowed by default if you comment this out). anonymous_enable=no # # Uncomment this to allow local users to log in. local_enable=yes # # Uncomment this to enable any form of FTP write command. write_enable=YES local_umask=022 anon_upload_enable=YES anon_mkdir_write_enable=YES dirmessage_enable=YES xferlog_enable=YES connect_from_port_20=YES xferlog_std_format=YES # ASCII mangling is a horrible feature of the protocol. ascii_upload_enable=YES ascii_download_enable=YES #chroot_local_user=YES chroot_list_enable=YES # (default follows) chroot_list_file=/etc/vsftpd/chroot_list listen=YES #vsftp,4中的文件名一致 pam_service_name=vsftp userlist_enable=YES tcp_wrappers=YES #vsftp user, 新增 vsftpuser, useradd 添加用户 guest_enable=YES #vsftpuser即5中新建的用户名 guest_username=vsftpuser virtual_use_local_privs=NO file_open_mode=0777 anon_umask=0222 #用户配置目录,不通的用户对应不通的文件. 文件名为用户名,和6中一致 user_config_dir=/etc/vsftpd/user_conf/
三 启动
service vsftpd start 或者 /etc/init.d/vsftpd start
四 问题
500 OOPS: could not read chroot() list file:/etc/vsftpd/chroot_list
500 OOPS: priv_sock_get_result
远程主机关闭连接。
没有新建chroot_list
500 OOPS: cannot change directory:/home/vsftpuser
500 OOPS: 500 OOPS: child died
1. 查看用户目录权限.
2.
sestatus -b | grep ftp #显示 allow_ftpd_anon_write off allow_ftpd_full_access off allow_ftpd_use_cifs off allow_ftpd_use_nfs off ftp_home_dir off ftpd_connect_db off httpd_enable_ftp_server off sftpd_anon_write off sftpd_enable_homedirs off sftpd_full_access off sftpd_write_ssh_home off tftp_anon_write off
在出现的结果中可以看到
ftp_home_dir off
tftpd_disable_trans off
之类。我们现在只要把其中之一设置为on就可以啦。
setsebool -P ftpd_disable_trans on 或者 setsebool -P ftp_home_dir on
重启vsftpd: service vsftpd restart
相关推荐
通过上述步骤,你已经学会了如何在Linux下配置VSFTP和虚拟用户,包括安装VSFTP、配置主配置文件、设置PAM模块、创建虚拟用户数据库以及测试登录。这种方法对于多用户环境非常有用,尤其是当需要精细控制每个用户访问...
在Linux环境下,安装和配置vsftp是管理员必须掌握的技能,包括设置用户权限、限制访问目录以及开启SSL连接等。 再者,PuTTY是一款免费的SSH(Secure Shell)客户端,用于远程登录到Linux或Unix服务器。它提供了...
在本文中,我们将详细介绍如何在Linux系统中设置vsftpd,包括安装、配置、虚拟用户的实现等方面。 一、安装vsftpd 首先,我们需要下载vsftpd的软件包,并将其解压缩后,使用make和make install命令来安装vsftpd。 ...
本篇文章将详细介绍如何在Linux环境下安装和配置VSFTPD,以帮助用户建立自己的FTP服务。 首先,我们需要了解安装VSFTPD的基本步骤: 1. **更新系统**: 在开始安装任何新软件之前,确保你的Linux系统是最新状态,这...
接下来,我们需要修改VSFTP的配置文件`/etc/vsftpd/vsftpd.conf`,以启用虚拟用户和相关设置: ```bash echo "anonymous_enable=NO" >> /etc/vsftpd/vsftpd.conf echo "pam_service_name=vsftpd.vu" >> /etc/vsftpd...
综上所述,Linux下的vsftp配置涵盖了从基本的匿名访问到复杂的虚拟用户管理,提供了灵活的FTP服务解决方案。根据实际需求选择合适的配置方式,同时注重安全性的强化,能够构建一个既高效又安全的FTP服务器。
- **虚拟用户和组**:配置虚拟用户需要结合PAM和口令文件,涉及多个步骤,包括创建口令文件、配置PAM服务和vsftpd.conf。 **3. VSFTP服务器的维护** - **日志功能**:`xferlog_enable=YES`开启日志记录,`xferlog_...
4. VSFTP配置文件详解:文档详细解释了/etc/vsftpd/vsftpd.conf配置文件中的各项设置。包括启用匿名用户、本地用户、写权限、文件掩码、目录消息、传输日志等。还提到了双重日志系统(xferlog和vsftpd_log)的配置,...
本文将详细介绍如何在Linux系统上配置VSFTP服务器,并重点讲解配置文件`/etc/vsftpd/vsftpd.conf`中的关键选项,以及如何通过用户列表来限制或允许特定用户访问FTP服务。 #### 二、VSFTP服务器基础配置 1. **安装...
本文将深入探讨Vsftp的安装过程、虚拟用户设置以及配置细节。 首先,我们来详细讲解Vsftp的安装步骤。在大多数Linux发行版中,可以通过包管理器进行安装。以Ubuntu或Debian为例,你可以使用`apt-get`命令: ```...
【vsftp搭建MySQL管理虚拟用户】的教程主要涵盖了在Linux环境下使用vsftp和MySQL来创建和管理虚拟用户的方法。以下是对整个过程的详细说明: 首先,我们安装**vsftp**。在Linux 6.3系统上,可以通过RPM包进行安装。...
总之,Linux下的vsftp配置涉及多个方面,从基础的匿名和本地用户模式,到更复杂的虚拟用户设置,每个环节都需要根据具体需求仔细调整。正确配置和管理vsftp不仅可以提供可靠的FTP服务,还能确保系统安全和数据保护。
### Red Hat Enterprise Linux 6 上安装与配置 vsftpd #### 安装 vsftpd 在 Red Hat Enterprise Linux 6 (RHEL 6) 中安装 vsftpd 需要几个步骤来完成。vsftpd 是一个非常受欢迎且功能强大的 FTP 服务器软件,以其...