ubuntu部署vsftpd并添加用户分配权限

在Ubuntu中,部署vsftpd只需要一行命令:

sudo apt install vsftpd

之后使用Ubuntu用户就可以登陆ftp了。


但是如果想添加新用户应该怎么办呢?

如果是单纯的添加用户的话,也蛮简单的:

adduser(/useradd←也有这样的版本) [username]

之后使用

passwd [username]

为其更改密码即可。


但是如果不希望这个用户telnet到服务器呢?

我们可以考虑更改用户的权限,禁止用户登陆ssh↓

usermod -s /sbin/nologin [username]

如果希望恢复ssh,可执行↓

usermod -s /bin/bash [username]

如果希望用户只能进入ssh修改密码。

usermod -s /usr/bin/passwd [username]

这样用户登陆后会直接进入密码修改流程


不过呢。。有的时候我们只希望用户可以某个目录,那么该怎么做呢?

我们可以用d参数设置用户的主目录

usermod -d /home/username [username]

  • 悄悄的告诉你哦~其实-d和-s都是可以在adduser的时候指定的,酱紫会方便很多~
  • 建议同时使用-g ftp参数,将用户归组,便于管理。
  • 设定完用户的初始文件夹后,如需对文件夹之下的内容进行权限控制,可用chown和chmod完成。不要忘记chown可以设置为group哦XD

不过,要警惕,有的时候这样子工作并没有结束呢。因为vsftp的禁用可能还没有开启。

修改配置文件/etc/vsftpd/vsftpd.conf(取消前面的#注释即可

chroot_local_user=YES

修改↑这个配置项为YES,可以限制列表中用户只能访问主文件夹。

但是如果需要特殊的全局权限应该怎么办呢?可以开启以下项目:

chroot_list_enable=YES

chroot_list_file=/etc/vsftpd.chroot_list

如此设置后,只有chroot_list文件中的用户名才具有全局访问权限呢~~~

当然啦,最后不要忘记重启vsftpd服务哦~~否则是生效不了的QAQ

/etc/init.d/vsftpd restart

嘛,下面就可以愉快地玩耍啦~☆

 


 

一定要注意/etc/vsftpd.user_list和/etc/vsftpd.chroot_list不会主动创建。记得要自己创建哦。前者要写入允许使用ftp的用户名单。根据设置的不同而不同。

如果遇到问题,log文件默认在/var/log/vsftpd.log。可以根据错误提示解决问题

Be the first to comment

Leave a comment

Your email address will not be published.


*


不够聪明的人工智能可进不来哦 *