Debian上配置vsftpd常见问答集锦

系统 Linux
本文总结Debian上安装、配置、使用vsftpd服务器的一些常见问题,如安装,匿名用户,默认端口等。有关更多vsftpd的技巧,可以参考51CTO的vsftpd专题。vsftpd官方也有个通用的常见问题解答:vsftpd faqs,读者可以进行参考。

编者按:本文总结Debian上安装、配置、使用vsftpd服务器的一些常见问题。有关更多vsftpd的技巧,可以参考51CTO的vsftpd专题。vsftpd官方也有个通用的常见问题解答:vsftpd faqs,读者可以进行参考。

1.debian上如何安装vsftpd

很简单:

apt-get install vsftpd

2.vsftpd的去除匿名用户登录问题

vi /etc/vsftpd.conf
anonymous_enable=YES

修改为

anonymous_enable=NO

3.如何更改vsftpd的默认端口

vi /etc/vsftpd.conf

新增一行

listen_port=2010

4.如何允许本地用户登录

#local_enable=YES

前面的#去掉

5.如何允许用户可以上传文件

#write_enable=YES

前面的#去掉

6.如何添加一个新用户

由于我是用本地用于登录的模式,所以确定你的local_enable=YES已经开启,再做下面的工作

首先添加一个用户组

groupadd ftpgroup

然后添加用户

useradd blogguy_cn –g ftpgroup –d /home/blogguy.cn –s /bin/bash
passwd blogguy_cn

输入新密码,即可生效

7.如何限制新添加的用户不能使用bash登录

首先检查的你的shells文件

vi /etc/shells

看看有没这两行

/sbin/nologin
/bin/false

没有的话加上,然后更新用户的bash

usermod -s /sbin/nologin blogguy_cn

或者

usermod -s /bin/false blogguy_cn

查看你的passwd文件是否生效

cat /etc/passwd

8.如何锁定用户在自己的主目录

有两个方法,我分别说

***个方法:一刀切,把所有的用户都限制在自己的主目录

#chroot_local_user=YES

把前面的注释去掉即可

第二个方法:限制部分用户在自己的主目录

首先

vi /etc/vsftpd.chroot_list

把你要限制的用户一行一个的添加进去

然后开启vsftpd.conf的

#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list

把#号去掉即可

9.如何只允许部分系统用户登录ftp

首先新建一个允许登录的用户文件

vi /etc/vsftpd.user_list

输入允许登陆的用户名blogguy_cn,一行一个

然后

vi /etc/vsftpd.conf

添加以下几行

userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd.user_list

解释:userlist_file是用文件地址

userlist_enable=YES表示是否开启用户用户列表也能,如果设置为YES就会读取userlist_file文件内容,但只此刻什么事都都不做。

userlist_deny表示允许或者拒绝,若果设置为userlist_deny=NO表示若设为NO , 则只有在/etc/vsftpd.user_list 中的使用者才能登入,而且此项功能可以在询问密码前就出现错误讯息,而不需要检验密码的程序。 若果设置为userlist_deny=YES,表示在userlist的用户不能登录

10.如何上匿名访问、上传,并支持下载和执行?

在默认的情况下,vsftp是不支持匿名用户的访问的,所以我们要自己打开相应的选项。现在我针对这个问题,我们要打开如下的选项。

anonymous_enable=YES 注:允许匿名访问
anon_upload_enable=YES 注:允许上传
anon_mkdir_write_enable=YES 注:允许建立相应的目录
anon_umask=022 把上传到FTP的文件或者目录改变权限

当然打开这些选项还是不行的,我们还要让匿名写入文件的上一级目录有写入权,以我所做的FTP为例,我所做的FTP的匿名访问的目录是/var /ftp,在vsFTPd中,/var/ftp这个目录是不能让匿名用户有写入权限的,这是为了安全考虑,所以我们必须自己在/var/ftp目录中建一 个目录,让这个目录有写入权。

比如:我在/var/ftp目录建一个upload目录,然后把它的权限设置成777,这样匿名用户就能写入了。

#mkdir /var/ftp/upload
#chmod 777 /var/ftp/upload

改了一系列的文件,不要忘记重启vsFTPd服务器

11.如何解决vsftp上传的文件与apache或者nginx的权限问题

这个问题不少人问,但是回答的很少,这里我给一个的回答

vi /etc/vsftpd.conf

找到#local_umask=022把前面的#去掉

重启服务器试试

具体各项代表什么意思,抄录一段台湾人的

設定值 結果 代表的使用權限
666 002 664 rw-rw-r--
666 022 644 rw-r--r--
666 037 640 rw-r-----
666 077 600 rw-------

目錄權限的***值

設定值 結果 代表的使用權限
777 002 775 rwxrwxr-x
777 022 755 rwxr-xr-x
777 037 740 rwxr-----
777 077 700 rwx------

原文:Debian上配置vsftpd若干问题集锦

【编辑推荐】

  1. FreeBSD下配置vsftpd虚拟用户
  2. 专题:vsftpd入门——安装、配置、案例与常见问题
  3. 史上最详细的vsftpd配置文件讲解
责任编辑:yangsai 来源: ­blogguy.­cn
相关推荐

2010-08-12 18:01:38

ibmdwJazz

2009-08-11 14:55:44

C#枚举

2009-08-11 14:44:24

C#枚举

2009-08-11 15:24:03

C#枚举

2009-12-29 14:41:12

ADSL常见硬件问题

2012-07-05 09:42:08

jQuery

2010-03-12 09:47:22

2010-01-18 16:14:43

配置VLAN交换机

2011-03-03 13:25:57

2010-01-11 13:12:57

D-LINK交换机配置

2011-05-04 09:53:37

惠普激光打印机故障

2011-03-02 11:32:55

vsftpd配置

2020-07-17 20:35:41

Redis数据库缓存

2011-03-02 13:23:42

Vsftpd配置

2011-03-02 10:19:44

2018-03-29 15:21:03

LinuxDebian网桥

2022-12-27 08:51:31

WebDebian 11

2011-03-04 16:34:03

vsFTPd

2010-07-21 09:10:02

Perl常见问题

2011-04-01 13:55:24

Java
点赞
收藏

51CTO技术栈公众号