Sudhosh 用户如何在没有 sudosh 命令的情况下登录登台服务器?

Sudhosh 用户如何在没有 sudosh 命令的情况下登录登台服务器?

当用户通过 ssh 访问暂存服务器时,他使用以下命令:

# sudo -u raja sudosh (user logged on in this format )
# sudo ssh xyz@server-ip-address sudosh ( login to staging server through ssh)

用户登录或使用 ssh 时不想使用 sudosh 命令,而是想使用/user/bin/sudoshshell。用户希望按如下方式登录:

# raja

# ssh xyz@server-ip-address

解决方案是什么?

答案1

sudosh· Github提供了有关如何设置sudosh为用户默认 shell 的详细说明:

  1. 启用sudo日志记录。编辑/etc/sudoers.d/sudosh

    Defaults log_output
    Defaults!/usr/bin/sudoreplay !log_output
    Defaults!/sbin/reboot !log_output
    
  2. 将此命令添加到/etc/shells

    /usr/bin/sudosh
    

    提示:为防止用户使用其他 shell 登录,请从 中删除这些 shell /etc/shells

  3. 更新用户foobar以使用 sudosh shell。

    chsh -s /usr/bin/sudosh foobar
    echo 'foobar ALL=(foobar) ALL' > /etc/sudoers.d/sudosh-foobar
    

    笔记:文件名sudoers.d不能包含.字符

另一种选择(尽管很多更容易绕过!)alias,例如:

alias raja='sudo -u raja sudosh'
alias ssh_login='sudo ssh xyz@server-ip-address sudosh'

相关内容