linuxvsftpd用户
Linux添加FTP用户并设置权限
在linux中添加ftp用户,并设置相应的权限,操作步骤如下:
1、环境:ftp为vsftp。被限制用户名为test。被限制路径为/home/test
2、建用户:在root用户下:
useradd
-d
/home/test
test
//增加用户test,并制定test用户的主目录为/home/test
passwd
test
//为test设置密码
3、更改用户相应的权限设置:
usermod
-s
/sbin/nologin
test
//限定用户test不能telnet,只能ftp
usermod
-s
/sbin/bash
test
//用户test恢复正常
usermod
-d
/test
test
//更改用户test的主目录为/test
4、限制用户只能访问/home/test,不能访问其他路径
修改/etc/vsftpd/vsftpd.conf如下:
www.2cto.com
chroot_list_enable=YES
//限制访问自身目录
#
(default
follows)
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
编辑
vsftpd.chroot_list文件,将受限制的用户添加进去,每个用户名一行
改完配置文件,不要忘记重启vsFTPd服务器
[root@linuxsir001
root]#
/etc/init.d/vsftpd
restart
5、如果需要允许用户修改密码,但是又没有telnet登录系统的权限:
usermod
-s
/usr/bin/passwd
test
//用户telnet后将直接进入改密界面
❷ Linux下安装vsftpd常见问题
当我们限定了用户不能跳出其主目录(chroot_local_user=YES)之后,使用该用户登录FTP时往往会遇到这个错误,这个问题由于版本更新造成的,从2.3.5之后,vsftpd增强了安全检查, 如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了! 如果检查发现还有写权限,就会报该错误。
要修复这个错误,可以用命令chmod a-w /home/user去除用户主目录的写权限,注意把目录替换成你自己的。或者你可以在vsftpd的配置文件中增加下列两项中的一项:
参考: https://www.cnblogs.com/116970u/p/10788285.html
要是还不行,就使用客户端工具吧,常用的FileZilla个大平台免费使用。
可以通过systemctl status vsftpd -l查看出现了什么问题,本立当中就是出现了变量错误的情况
11月 20 19:01:36 MyCentos vsftpd[40707]: 500 OOPS: unrecognised variable in config file: anno_root
anno_root变量写错了,修改即可
❸ linux vsftpd本地用户权限设置
先确认下安装上了没,可以使用
代码如下 复制代码
[root@localhost sv005-mongodb]# service vsftpd restart
Shutting down vsftpd: [ OK ]
Starting vsftpd for vsftpd: [ OK ]
或者使用命令
[root@localhost sv005-mongodb]# chkconfig --list vsftpd
vsftpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off
如果没有安装我们需要先是需要安装:
代码如下 复制代码
yum install vsftpd
然后启动vsftpd : /etc/init.d/vsftpd start
vi /etc/vsftpd/vsftpd.conf 修改里面的 这两项:
chroot_local_user=YES (须添加)
chroot_list_enable=NO
然后 保存即可!
创建用户组:
groupadd 用户组
useradd -g webusers -d /路径 用户名
passwd 用户名 修改用户的密码。
chown -R 用户名:用户组 /路径/
刚才由于修改了配置文件 所以要记得重启:service vsftpd restart
OK ! 成功了!
到上面就完成了,如果你还需要加一些虚拟用户,我们可向下看
vsFTPD配置虚拟用户
FTP用户一般是不能登录系统的,这也是为了安全。在系统中,没有权限登录系统的用户一般也被称之为虚拟用户;虚拟用户也是要写进 /etc/passwd中;这只是一种虚拟用户的方法,但说实在的并不是真正的虚拟用户,只是把他登录SHELL的权限去掉了,所以他没有能力登录系统;如果我们想把beinan这个用户目录定位在/opt/beinan这个目录中,并且不能登录系统;我们应该如下操作。
代码如下 复制代码
[root@localhost ~]# adser -d /opt/beinan -g ftp -s /sbin/nologin beinan
[root@localhost ~]# passwd beinan
Changing password for user beinan.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.
[root@localhost ~]#
其实这还是不够的,还要改一下配置文件vsftpd.conf ,以确保本地虚拟用户能有读写权限;
local_enable=YES
write_enable=YES
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)的工具或命令;
groupadd 注:添加用户组;
groupdel 注:删除用户组;
groupmod 注:修改用户组信息
groups 注:显示用户所属的用户组
用户管理命令
useradd 注:添加用户
userdel 注 :删除用户
adser 注:添加用户
passwd 注:为用户设置密码
usermod 注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等;
❹ 在linux中vsftpd中的虚拟用户怎么配置求解
相关的虚拟用户设置在
/etc/vsftpd/account
账号文件
/etc/vsftpd/account.txt.
相关数据库连接
/etc/pam.d/vsftp.vu建立步骤:
1.
在
/etc/vsftpd/下建立account.txt
文件
文件内为虚拟用户账号和密码奇数行为账号
偶数行为密码
2.
生成口令文件,并修改权限
#db_load
–T
–t
hash
–f
/etc/vsftpd/account
/etc/vsftpd/account.db
#chmod
600
/etc/vsftpd/account.db
2.生成口令库文件,并修改其权限:
#db_load
-T
-t
hash
-f
./account.txt
/etc/vsftpd/account.db
#chmod
600
/etc/vsftpd/account.db
3.新建一个虚拟用户的PAM文件。加上如下两行内容:
❺ linux vsftpd怎么让本地用户允许登录
限制本地用户访问FTP
Userlist_enable=yes
(用userlist来限制用户访问)
Userlist_deny=no
(名单中的人不允许访问)
Userlist_file=/指定文件存放的路径/
(文件放置的路径)
注:开启userlist_enable=yes匿名帐号不能登陆
所以只需要把你想访问的用户加到userlist里面就可以了
❻ 关于linux vsftp 用户权限
useradd
-G
test
–d
/tmp/test
–M
usr1
注:G:用户所在的组
d:表示创建用户的自己目录的位置给予指定
M:不建立默认的自家目录,也就是说在/home下没有自己的目录
useradd
–G
test
–d
/tmp/test
–M
usr2
接着改变文件夹的属主和权限
chown
usr1.test
/tmp/test
----这表示把/tmp/test的属主定为usr1
chmod
750
/tmp/test
----7表示wrx
5表示rx
0表示什么权限都没有
这个实验的目的就是usr1有上传、删除和下载的权限
而usr2只有下载的权限没有上传和删除的权限
当然主配置文件vsftpd.conf
要确定local_enable=yes、write_enable=yes、chroot_local_usr=yes这三个选项
❼ Linux vsftpd服务器的用户主要分为哪几种它们的区别
VSFTPD的用户分为三类:匿名用户、本地用户(local user)以及虚拟用户(guest)。
1、匿名用户
anonymous_enable=YES|NO
控制是否允许匿名用户登录,YES允许,NO不允许,默认值为YES。
ftp_username=
匿名用户所使用的系统用户名。默认下,此参数在配置文件中不出现,值为ftp。
no_anon_password=YES|NO
控制匿名用户登入时是否需要密码,YES不需要,NO需要。默认值为NO。
deny_email_enable=YES|NO
此参数默认值为NO。当值为YES时,拒绝使用banned_email_file参数指定文件中所列出的e-mail地址进行登录的匿名用户。即,当匿名用户使用banned_email_file文件中所列出的e-mail进行登录时,被拒绝。显然,这对于阻击某些Dos攻击有效。当此参数生效时,需追加banned_email_file参数
banned_email_file=/etc/vsftpd.banned_emails
指定包含被拒绝的e-mail地址的文件,默认文件为/etc/vsftpd.banned_emails。
anon_root=
设定匿名用户的根目录,即匿名用户登入后,被定位到此目录下。主配置文件中默认无此项,默认值为/var/ftp/。
anon_world_readable_only=YES|NO
控制是否只允许匿名用户下载可阅读文档。YES,只允许匿名用户下载可阅读的文件。NO,允许匿名用户浏览整个服务器的文件系统。默认值为YES。
anon_upload_enable=YES|NO
控制是否允许匿名用户上传文件,YES允许,NO不允许,默认是不设值,即为NO。除了这个参数外,匿名用户要能上传文件,还需要两个条件:一,write_enable参数为YES;二,在文件系统上,FTP匿名用户对某个目录有写权限。
anon_mkdir_write_enable=YES|NO
控制是否允许匿名用户创建新目录,YES允许,NO不允许,默认是不设值,即为NO。当然在文件系统上,FTP匿名用户必需对新目录的上层目录拥有写权限。
anon_other_write_enable=YES|NO
控制匿名用户是否拥有除了上传和新建目录之外的其他权限,如删除、更名等。YES拥有,NO不拥有,默认值为NO。
chown_uploads=YES|NO
是否修改匿名用户所上传文件的所有权。YES,匿名用户所上传的文件的所有权将改为另外一个不同的用户所有,用户由chown_username参数指定。此选项默认值为NO。
chown_username=whoever
指定拥有匿名用户上传文件所有权的用户。此参数与chown_uploads联用。不推荐使用root用户。
2、本地用户
在使用FTP服务的用户中,除了匿名用户外,还有一类在FTP服务器所属主机上拥有账号的用户。VSFTPD中称此类用户为本地用户(local users),等同于其他FTP服务器中的real用户。
local_enable=YES|NO
控制vsftpd所在的系统的用户是否可以登录vsftpd。默认值为YES。
local_root=
定义所有本地用户的根目录。当本地用户登入时,将被更换到此目录下。默认值为无。
user_config_dir=
定义用户个人配置文件所在的目录。用户的个人配置文件为该目录下的同名文件。个人配置文件的格式与vsftpd.conf格式相同。例如定义 user_config_dir=/etc/vsftpd/userconf,并且主机上有用户xiaowang,lisi,那我们可以在 user_config_dir的目录新增名为xiaowang、lisi的两个文件。当用户lisi 登入时,VSFTPD则会读取user_config_dir下lisi这个文件中的设定值,应用于用户lisi。默认值为无。
3、虚拟用户
guest_enable=YES|NO
若是启动这项功能,所有的非匿名登入者都视为guest。默认值为关闭。
guest_username=
定义VSFTPD的guest用户在系统中的用户名。默认值为ftp。