网站地图    收藏   

主页 > 系统 > linux系统 >

linux系统中配置vsftpd及用户权限

来源:未知    时间:2014-11-25 13:10 作者:xxadmin 阅读:

[导读] vsftpd服务器是linux中一个非常实用的文件上传管理工具了,下面我就来给大家介绍在vps中关于vsftpd配置与权限分配方法,希望例子对大家会有所帮助. 先确认下安装上了没,可以使用如下代码...

vsftpd服务器是linux中一个非常实用的文件上传管理工具了,下面我就来给大家介绍在vps中关于vsftpd配置与权限分配方法,希望例子对大家会有所帮助.

先确认下安装上了没,可以使用如下代码:

  1. [root@localhost sv005-mongodb]# service vsftpd restart 
  2. Shutting down vsftpd:                                      [  OK  ] 
  3. Starting vsftpd for vsftpd:                                [  OK  ] 
  4.  
  5. --或者使用命令 
  6.  
  7. [root@localhost sv005-mongodb]# chkconfig --list vsftpd 
  8. vsftpd          0:off   1:off   2:off   3:off   4:off   5:off   6:off 

如果没有安装我们需要先是需要安装,代码如下:

  1. yum install vsftpd 
  2.  
  3. --然后启动vsftpd: 
  4.  
  5. /etc/init.d/vsftpd start 
  6.  
  7. vi /etc/vsftpd/vsftpd.conf   修改里面的  这两项: 
  8.  
  9. chroot_local_user=YES  (须添加) 
  10. chroot_list_enable=NO 

然后,保存即可.

创建用户组:

  1. groupadd    用户组 
  2.  
  3. useradd -g webusers -d /路径 用户名 
  4.  
  5. passwd 用户名   修改用户的密码。 
  6.  
  7. chown -R 用户名:用户组 /路径/ 

刚才由于修改了配置文件,所以要记得重启:service vsftpd restart

OK ! 成功了!

到上面就完成了,如果你还需要加一些虚拟用户,我们可向下看.

vsFTPD配置虚拟用户

FTP用户一般是不能登录系统的,这也是为了安全,在系统中,没有权限登录系统的用户一般也被称之为虚拟用户,虚拟用户也是要写进 /etc/passwd中,这只是一种虚拟用户的方法,但说实在的并不是真正的虚拟用户,只是把他登录SHELL的权限去掉了,所以他没有能力登录系统;如果我们想把beinan这个用户目录定位在/opt/beinan这个目录中,并且不能登录系统;我们应该如下操作,代码如下:

  1. [root@localhost ~]# adduser -d /opt/beinan -g ftp -s /sbin/nologin beinan 
  2. [root@localhost ~]# passwd beinan 
  3. Changing password for user beinan. 
  4. New password--phpfensi.com 
  5. Retype new password
  6. passwd: all authentication tokens updated successfully. 
  7. [root@localhost ~]# 

其实这还是不够的,还要改一下配置文件vsftpd.conf,以确保本地虚拟用户能有读写权限.

  1. local_enable=YES 
  2. write_enable=YES 
  3. local_umask=022 

如何实现虚拟路径?代码如下:

/home/a 映射为 ftp://localhost/a

/home/b/c 则为 ftp://localhost/c

可以通过如下的方法来实现。

[root@localhost ~]# mount –bind [原有的目录] [新目录]

比如我的ftp的默认目录是/var/ftp,我想把/mnt/LinG/WinSoft文件夹,映射到/var/ftp目录中,我就如下操作.

我们要先在/var/ftp目录中建一个目录,代码如下:

[root@localhost ~]# mkdir /var/ftp/WinSoft

然后执行mount命令:

[root@localhost ~]# mount –bind /mnt/LinG/WinSoft /var/ftp/WinSoft

这样就OK了.

打开Linux vsFTPDv服务器的日志功能.

把下面xferlog_file前面的#号对掉,也就是把vsftp的log功能打开,这样我们就能在/var/log目录下查看vsftpd.log。这是vsFTP的日志功能,这对于我们来说是极为重要的。xferlog_file=/var/log/vsftpd.log如何让vsFTP服务器限制链接数,以及每个IP最大的链接数?应该改Linux vsFTPD服务器的配制文件vsftpd.conf,加入下面的两行:

max_clients=数字

max_per_ip=数字

举例:我想让我的vsFTP最大支持链接数为100个,每个IP,最多能支持5个链接,所以我应该在vsftpd.conf中加上如下的两行:

max_clients=100

max_per_ip=5

如何限制传输速度?

anon_max_rate=数字

注:这是匿名的速度

local_max_rate=数字

注:这是vsFTP服务器上本地用户的速度

注:这个数字的单位是byte,所以我们要计算一下。

比如我想让匿名用户和vsFTP上的用户都以80KB下载,所以这个数字应该是1024×80=81920

所以我们要在vsftpd.conf中加入下面的两行

anon_max_rate=81920

local_max_rate=81920

下面是一些常用的命令:

管理用户组(group)的工具或命令.

  1. groupadd 注:添加用户组; 
  2.  
  3. groupdel 注:删除用户组; 
  4.  
  5. groupmod 注:修改用户组信息 
  6.  
  7. groups 注:显示用户所属的用户组 

用户管理命令:

  1. useradd 注:添加用户 
  2.  
  3. userdel  注 :删除用户 
  4.  
  5. adduser 注:添加用户 
  6.  
  7. passwd 注:为用户设置密码 
  8.  
  9. usermod 注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等;
  10.  

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论