linux怎么设置vsftp用户访问目录权限

linux怎么设置vsftp用户访问目录权限,第1张

展开全部

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后将直接进入改密界面

首先必须安装的两个包是:vsftpd和db4-until

然后还得注意访问的时候防火墙的设置

还有就是selinu的事,把它设置成disabled

1、建立虚拟用户口令库文件;

# cat yy.txt

test1

123

test2

123

注意:奇数行为用户,偶数行为密码;

2、生成vsftpd的认证文件;

# db_load -T -t hash -f yy.txt /etc/vsftpd/user.db //生成vsftpd的认证文件

# file /etc/vsftpd/user.db

/etc/vsftpd/yy.db: Berkeley DB (Hash, version 8, native byte-order)

# chmod 600 /etc/vsftpd/user.db //设置yy.db文件权限只对root用户可读写;

# ll /etc/vsftpd/user.db

-rw------- 1 root root 12288 Jul 1 19:57 /etc/vsftpd/yy.db

3、建立虚拟用户所需的PAM配置文件;内容如下:

# cat /etc/pam.d/user.vu

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/user

account required /lib/security/pam_userdb.so db=/etc/vsftpd/user

4、建立虚拟用户及要访问的目录并设置相应的权限

# useradd -d /home/ftp ftptest//建立用户名为ftptest,对应的宿主目录为ftp

# chmod 700 /home/ftp //设置权限是700

5、修改vsftpd.conf配置文件,添加虚拟用户的配置项,内容如下:

guest_enable=YES

guest_username=ftptest

pam_service_name=user.vu

6、重新启动vsftpd服务

#service vsftp restart

7、测试vsftpd中的虚拟用户账号

#touch /home/ftp/a.txt

#chown ftptest.ftptest /home/ftp/a.txt //建立一个文件供下载测试用

C:\Documents and Settings\admin>ftp 192.168.2.101

Connected to 192.168.2.101.

220 (vsFTPd 2.0.1)

User (192.168.2.101:(none)): test1 //输虚拟FTP用户名

331 Please specify the password.

Password://输FTP的密码

230 Login successful. //成功

ftp>get a.txt //下载a.txt文件

200 PORT command successful. Consider using PASV.

150 Opening BINARY mode data connection for a.txt (0 bytes).

226 File send OK.//成功下载

ftp>

8、为不同的虚拟用户给权限

1)修改vsftpd.conf配置文件,在里面添加以下内容:

user_config_dir=/etc/vsftpd_user_conf//设置在/etc/vsftpd_user_conf这个目录下保存虚拟用户的配置文件,

2)建立用户配置文件目录

# mkdir /etc/vsftpd_user_conf

3)为虚拟用户建立单独的配置文件

# cat /etc/vsftpd_user_conf/ky //虚拟用户ky的配置文件

anon_world_readable_only=NO//具有浏览和下载的权限

# cat /etc/vsftpd_user_conf/xx//虚拟用户xx的配置文件

anon_world_readable_only=NO //具有浏览和下载的权限

anon_upload_enable=YES //具有上传的权限

anon_mkdir_write_enable=YES//有建立和删除目录权限

anon_other_write_enable=YES //有文件改名和删除文件权限

注意:在/etc/vsftpd_user_conf/目录中的虚拟用户的配置文件名称要和虚拟用户名相同。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11716682.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存