0

我们正在从 AVR 上的 C 转移到嵌入式 Linux 平台。

感谢一些关于我们应该如何编程(例如 bash 脚本/c 程序)telnet“管理控制台”以首先登录设备的“最佳实践”建议(我们现在有一个工作内核并能够运行简单的“hello world”c 程序),然后允许用户输入诸如“set msc”之类的命令,控制台将提示输入 apn?用户名?密码...等

我们是否只是将 ac 程序编写为“远程登录服务器”并让它运行以等待通过套接字的远程登录客户端连接?或者嵌入式 Linux 中还有其他方法吗?谢谢你。

4

2 回答 2

0

首先,我建议在目标上使用dropbear(lightweight sshd) 以便与设备的通信被加密,仅telnetd在必须时才包括。

无论您选择哪种方式(或两种方式),您都需要设置一些脚本来启动 dropbear/telnetd。这将取决于您的发行版。

然后在将用于管理系统的设备上设置一个帐户,并使该用户 shell 成为您的自定义 CLI。(此信息存储在 /etc/passwd 中)

然后可以用任何合适的语言来实现 CLI,它只会读/写 stdin/stdout,它们将连接到用户端的 telnet 或 ssh 客户端。所有 telnet 逻辑都由其处理,telnetd然后依次调用login以管理用户的身份验证。这两个应用程序都可用,busybox它们很可能是根文件系统的一部分。

于 2012-08-22T11:24:34.997 回答
0

最佳实践可能是使用现有的解决方案。例如,我们将openssh用于我们的嵌入式板(ARM 和 x86 平台),以及用于调试的串行控制台。这两个都将免费为您提供登录处理和所有这些。

此外,我们的内核和 rootfs 是使用PTXdist创建的,因此我们可以轻松地从标准主机添加、处理和交叉编译新的应用程序和包。它工作得很好,并且还使得将完整的应用程序实际移植到其他平台变得非常容易。

于 2012-04-08T10:25:47.127 回答