从登录中获取当前用户密码并将其传递给 Bash 脚本

从登录中获取当前用户密码并将其传递给 Bash 脚本

我正在 Linux 中编写一个 Bash 脚本,用于远程登录 Windows 机器。我想捕获该用户的当前用户和密码,以便脚本将他们登录到 TS 会话。我正在使用 Linux 制作一个瘦客户端。

答案1

恐怕系统不知道您的密码。永远不知道。它只知道您的密码的某种哈希值。哈希值的本质是它们不能被恢复为明文。如果您输入密码,系统将使用与创建密码时相同的哈希函数并比较哈希值。因此,捕获密码:首先:将其以明文形式散布在伪装的 bash 脚本中不是一个好主意,除非您是 Linux 的绝对安全专家并且知道自己在做什么。其次:出于充分的理由,这几乎不可能做到。

但是,还有其他方法可以实现无密码登录。例如,SSH/SSH-Server使用公钥/私钥系统进行身份验证。或者,您可以使用单点登录环境,就像使用 kerberos 一样。由于第二种选择在您的网络上尚不存在,因此有点过头了,因此请使用基于 ssh 密钥的身份验证。有一个askUbuntu 上的问题关于这一点。不过,你需要找到一个适用于 Windows 的 sshd。维基百科列表一些。这很可能会限制您对 Windows 框的访问到文本控制台。

对于 gui-logins,您可能想使用Krdc或进行探索Remmina。但我不知道您能如何将它们集成到脚本中,更不用说无密码登录了。

答案2

在终端中输入命令

$ sudo apt-get install zenity

然后你需要编写包含以下内容的 bash 脚本:

zenity --password

相关内容