我有一个以这种方式创建的用户:
sudo adduser --system --home=/opt/someone --group someone
该用户没有登录名,但是当我使用自己的用户登录服务器时,我可以使用 更改为该用户sudo su - someone -s /bin/bash
。 没问题。
但有时我需要将文件远程传输到someone
用户主目录,但我无法使用该用户,因为它没有登录名。 漫长的方法是将scp
文件传输到我自己的主目录,然后使用我自己的用户登录,然后切换到someone
并将这些文件从我的主目录复制到someone
主目录。 但这样做很烦人。
也许有更好的替代方案,我可以直接scp
使用someone
用户文件?
答案1
可以添加具有 shell 的用户,该 shell 仅允许使用诸如scp
和rsync
其他好用的实用程序:发送
我以前在我的网站托管服务上使用过它,确实管用。用户无法登录并获得 shell,但他们仍能正常上传内容。
将他们添加为普通用户,但使用 chsh 为他们提供 rssh 作为 shell,这样就大功告成了。这样,您就可以轻松地以他们的用户身份上传文件,或者让他们自己上传。