首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有可能在启动后直接在远程服务器上获得登录提示?

是否有可能在启动后直接在远程服务器上获得登录提示?
EN

Unix & Linux用户
提问于 2018-10-14 21:59:30
回答 1查看 741关注 0票数 1

连接到远程计算机的通常工作流程如下:

  1. 登录到本地机器
  2. 启动终端窗口
  3. 输入"ssh user@r.lan“
  4. 登录到远程机器

我想摆脱本地登录,并将其压缩为一个步骤。就像VT220终端一样。预期工作流程:

  1. 启动终端机器(文本模式)
  2. 向用户提供带有登录提示符的tty。
  3. 它的凭据中的用户类型
  4. 凭据在远程计算机(r.lan)上进行验证。
  5. 用户进入远程计算机外壳(r.lan)。

上下文:我正在设计一个简单的终端应用程序,我希望一些客户使用。应用程序应该用最小的硬件从专用终端运行。如果我在本地运行应用程序,我只需将登录shell更改为指向应用程序并获得所需的工作流(用户-auth然后直接放到应用程序中)。但是,我希望这个应用程序驻留在服务器上,而不是让用户显式地与本地机器和ssh交互。

EN

回答 1

Unix & Linux用户

发布于 2018-10-15 06:24:37

回到我在一所科技大学学习的时候(1997年左右),当地的学生会收到了一些旧的VT220终端和一些低规格的PC(我想是英特尔20 MHz 386 CPU)作为捐赠(我认为是来自uni的计算中心)。该协会已经有一两台PC可以运行网络浏览器,但学生们最需要的服务只是一个SSH连接,可以用来读取电子邮件和使用(基于文本的)课程注册系统。

我将终端连接到PC机上,配置getty进程以显示hostname:提示符,而不是通常的login:。然后,我获取了/bin/login的源代码,并对其进行了修改。

该程序将接受为getty输入的主机名作为命令行参数(与通常的用户名一样),然后提示输入实际用户名,然后为所需的远程主机提供exec()命令。当SSH命令退出时,整个“登录会话”将停止,进程将自动重新启动,因为init将重新启动getty

可以在本地控制台和串行终端连接上使用相同的配置。现在,每台旧电脑都可以作为一个多座位的SSH亭!

您可以执行类似的操作,但是更简单,因为您不需要主机名提示步骤。修改后的/bin/login只需接受已键入的用户名,并启动与特定远程计算机的SSH连接即可。然后,SSH客户端将显示一个密码提示。

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/475480

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档