SSHd 根据用户名执行操作

cas*_*asr 5 ssh

我的网络主机使用一种优雅的方式来处理多个站点,同时保持每个站点的独立性。对于我通过 登录ssh,我使用以下内容:

ssh hostname -l username1_sitename1
Run Code Online (Sandbox Code Playgroud)

这会按照将我 chroot 到sitename1与我的 UID相关的特定目录并更改我的 UID 以匹配的方式执行一些操作。与 if I usedssh hostname -l username1_sitename2等相同。登录 forusername1每次使用相同的密码并且hostname保持不变。

如果另一个用户username2需要访问,sitename1那么他们可以使用类似的方案访问所述站点:

ssh hostname -l username2_sitename1
Run Code Online (Sandbox Code Playgroud)

并且username1在访问sitename1.

我希望在我的一台电脑上复制一个类似的方案。是否可以在不手动将每个化身添加username_sitename到系统的情况下实现这一点?

Aar*_*ron 1

简短的回答:数以千计的 Perl 脚本,孩子!

长答案:一旦您进入大型托管游戏,您希望一切都通过脚本完成,并且所有后端进程都可以相互通信。手动干预意味着你输了。您希望一键访问暂停、创建、删除等。因此,它很可能不是“手动”创建的,而是他们这边的某人了解了他们想要如何实现事物,然后编写了必要的代码来添加这些为所有适当的位置命名,设置权限等。与托管的大多数事情一样,这是可以完成的,您只需要根据您的具体愿望来实现即可。