我花了至少 5 个小时尝试在运行 Centos 的服务器上使用他自己的主目录为 vsftpd 设置新登录。
我已经完成的步骤:
useradd <user>
passwd <user>
chown -R <user> /var/www/mywebsite
groupadd <group>
gpasswd -a <user> <group>
chgrp -R <group> /var/www/mywebsite
chmod -R g+rw /var/www/mywebsite
我还启用了 vsftpd.conf chroot_local_user 中的 local_enable
并将 HOME 目录移至上述文件夹
问题是,现在即使我尝试从机器上使用 ftp(通过 ssh),我也可以使用机器上的默认用户及其密码登录,但是当我尝试使用新创建的用户登录时,它会失败。也许与此有关:http://prntscr.com/c3feji当我以新用户身份登录到机器时,它看起来不像往常,我可以看到我所在的用户名和文件夹,而且很多命令也不起作用。
所以我的结论是,在创建新用户时我是否错过了什么?在此先感谢您的帮助!
杰峰
编辑:我已经使用了虚拟用户,这对我来说非常适合,但我仍然想保留这个问题,因为答案可以帮助有类似问题的人。
答案1
你只需说,用户无法登录。
这是我所知道的一种标准方式。
对于您创建的任何用户,只需更改 mod 即可执行此操作:
usermod -s /sbin/nologin username
这将阻止用户登录。
另外,在创建用户本身时,您可以这样做
useradd -s /sbin/nologin test3
您有可用的用户,但无法登录系统。