Vsftpd 虚拟用户实现公司各部门文件的上传下载(2)

二、创建系统账户

这里存在两个账户:

vsftpd服务的宿主用户,默认为root。可以自己建一个用户作为vsftpd的宿主用户,也可不用管。这里还是建立一个vsftpd用户吧,没必要登录。

vsftpd虚拟的宿主用户,就像develop需要有系统相关权限,就映射成系统的ftp_develop用户(待会建立)的权限,所以这些用户也没有必要登录系统。

我想把develop、design、operate三个组都放到/var/ftp下,就当是虚拟宿主用户的家目录权限去控制访问吧

1、vsftpd服务的宿主用户:

[root@client ~]# useradd -s /sbin/nologin vsftpd

2、三个组对应的虚拟宿主用户:

[root@client ~]# useradd -d /var/ftp/develop -s /sbin/nologin ftp_develop

[root@client ~]# useradd -d /var/ftp/design -s /sbin/nologin ftp_design

[root@client ~]# useradd -d /var/ftp/operate -s /sbin/nologin ftp_operate

查看是否建立文件路径:

[root@client ~]# ls /var/ftp/

Vsftpd 虚拟用户实现公司各部门文件的上传下载,Vsftpd

三、改主配置文件 /etc/vsftpd/vsftpd.conf

关键的一些解释一下:

anonymous_enable=NO

设定不允许匿名访问

local_enable=YES

设定本地用户可以访问。注意:主要是为虚拟宿主用户,如果该项目设定为NO那么所有虚拟用户将无法访问

write_enable=YES

设定可以进行写操作

local_umask=022

设定上传后文件的权限掩码

anon_upload_enable=NO

禁止匿名用户上传

anon_mkdir_write_enable=NO

禁止匿名用户建立目录

xferlog_enable=YES

设定开启日志记录功能

connect_from_port_20=YES

设定端口20进行数据连接

chown_uploads=NO

设定禁止上传文件更改宿主

xferlog_file=/var/log/vsftpd.log

vsftpd的服务日志。注意,该文件必须要手动touch出来,必须注意给与该用户对日志的写入权限(vsftpd服务宿主用户),否则服务将启动失败

xferlog_std_format=YES

设定日志使用标准的记录格式

nopriv_user=vsftpd

vsftpd服务的宿主用户vsftpd。必须注意与该服务相关的读写文件的读写权限问题

async_abor_enable=YES

设定支持异步传输功能

ascii_upload_enable=YES

ascii_download_enable=YES

设定支持ASCII模式的上传和下载功能

ftpd_banner=Welcome to blah FTP service.

设定vsftpd的登陆标语

chroot_list_enable=NO

限定在自己的FTP主目录里边,待会儿可以设置

pam_service_name=vsftpd

设定PAM服务下Vsftpd的验证配置文件名。刚刚修改的是/etc/pam.d/下的vsftpd文件,可以自己新建文件,目录要正确

userlist_enable=YES

设定userlist_file中的用户将不得使用FTP

tcp_wrappers=YES

设定支持TCP Wrappers

好了,需要修改新增的如下:(具体根据需要而定)

anonymous_enable=NO

不允许匿名用户登录

anon_upload_enable=NO

不允许匿名用户上传

anon_mkdir_write_enable=NO

不允许匿名用户建立目录

chown_uploads=NO

设定禁止上传文件更改宿主。

xferlog_file=/var/log/vsftpd.log

设定Vsftpd的服务日志保存路径

async_abor_enable=YES

设定支持异步传输功能。

ascii_upload_enable=YES

ascii_download_enable=YES

设定支持ASCII模式的上传和下载功能也都开启吧

ftpd_banner=Hello baby,Welcome to blah FTP service.

^_^,开个banner吧

chroot_list_enable=NO

限定在ftp主目录

nopriv_user=vsftpd

支撑Vsftpd服务的宿主用户

guest_enable=YES

设定启用虚拟用户功能

virtual_use_local_privs=YES

设定虚拟用户的权限符合他们的宿主用户

user_config_dir=/etc/vsftpd/vsftpd_config

设定虚拟用户个人Vsftp的配置文件存放路径。/etc/vsftpd/vsftpd_config里面的文件都是虚拟用户的专用配置文件,注意:配置文件名必须和虚拟用户名相同

那我们就专门为虚拟用户建立一个配置文件目录吧

linux

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/62891efd32d6ca3cb4ba85055ece0a9d.html