Session 检索SSH唯一会话ID

Session 检索SSH唯一会话ID,session,ssh,uniqueidentifier,openssh,Session,Ssh,Uniqueidentifier,Openssh,我想知道,对于通过ssh(OpenSSH)连接的服务器和客户端,是否有任何方法可以检索某些唯一的会话标识符(让它成为USID) 这将用于限制特定(自定义)软件的执行(让它成为a.exe),因此它只能通过特定ssh会话执行,即使其他用户(可能是root用户)有权访问该可执行文件: 从机器C(客户端)到机器S(服务器)打开ssh会话后,机器C(知道USID)将更新机器X(第三方服务器)上的记录,让它知道此USID是“安全的” 调用计算机S上的a.exe时,将检查当前会话的USID是否“安全”(此信

我想知道,对于通过ssh(OpenSSH)连接的服务器和客户端,是否有任何方法可以检索某些唯一的会话标识符(让它成为USID)

这将用于限制特定(自定义)软件的执行(让它成为a.exe),因此它只能通过特定ssh会话执行,即使其他用户(可能是root用户)有权访问该可执行文件:

  • 从机器C(客户端)到机器S(服务器)打开ssh会话后,机器C(知道USID)将更新机器X(第三方服务器)上的记录,让它知道此USID是“安全的”
  • 调用计算机S上的a.exe时,将检查当前会话的USID是否“安全”(此信息将由X提供),并在收到否定回答时停止执行
XCXS之间的通信通道是安全的,因此这里唯一的问题是检索USID,而不必编写自己的ssh客户端和/或服务器


有什么想法吗?

在我看来,您正在尝试重新实现kerberos。在我看来,您希望GSSAPI保护客户端和服务器之间的传输;因此,您的客户端需要向服务器进行身份验证

这样做的典型方式是使用keytab将其“kinit”到prinicpal,然后将该凭证传递给服务器。Kerberos确保了它很难伪造

这可能会比你上面描述的方法不那么脆弱


-Ace

您有什么原因不能将公钥用作USID?