我正在开发一个具有交互式telnet管理控制台的系统。要求规定我们禁用telnet访问并添加SSH。将管理控制台更改为我们可用于SSH登录的独立程序需要供应商参与。我在想一个更便宜的解决方案,将是这样的:将SSH登录会话重定向到交互式telnet到本地主机
阻止从外部访问的telnet管理控制台,但离开它运行供本地主机连接。
编写一个用作代理的登录shell(使用C++,或者像this那样简单,如果幸运的话)。登录shell将telnet到本地主机,并通过telnet发送它从用户接收到的所有命令,并发送所有显示并提示从远程登录服务器接收的返回给用户。
更改/ etc/passwd以在用户通过ssh登录时启动此代理shell。
我在想什么?是否有可怕的陷阱,我会卡住?有更好的选择吗?我使用OpenSSH作为ssh守护进程。
好主意直接调用telnet而不需要写代理。当我在/ etc/passwd中将admin用户的shell替换为它时,它运行良好。对我来说,远程登录控制序列通过了很好! – indiv 2010-01-14 23:05:13