linux telnet服务
来源:互联网 发布:adb删除数据库 编辑:程序博客网 时间:2024/06/05 02:02
1.进入busybox源代码目录,选择telnet,telnetd.然后make;make install并制作ramdisk
2.确保在ramdisk的sbin目录下存在inetd和telnetd
3.在ramdisk中的mnt/etc目录中,确保存在文件fstab,service,inetd.conf,passwd 文件
4.确保fstab文件中存在 none /dev/pts devpts mode=0622 0 0 这一行
5.确保services文件中存在 telnet 23/tcp 这一行
6.确保inetd.conf中存在 telnet stream tcp nowait root /sbin/telnetd telnetd
7.确保passwd文件中存在 root::0:0:root:/:/bin/sh ,表示没有密码的root帐号
8.在kernal的代码中,通过make menuconfig,
在Character devices中选中 Unix98 PTY support
退出后make zImage
9.在BusyBox源码中,通过make menuconfig,选中dev/pts file system for Unix98 PTYs
退出后make;make install
10.在ramdisk的启动文件mnt/etc/init.d/rcS中,在mount –a的后面下一行加入 inetd或者telnet /bin/ash ,使系统启动的时候就加载telnetd服务
另外注意,如果系统的mac地址冲突,会造成系统telnet不能连接,或者时断时续!
/***********************************************************************************************************/
来源:http://blog.chinaunix.net/u3/108761/showart.php?id=2151302
主机系统: fedora8 + vmware
目标板: utu2440 / linux-2.6.29.1
交叉编译器: arm-linux-gcc-3.4.1
软件资源: busybox-1.10.1
在根文件系统制作成功的基础上就可以移植 telnetd 到开发板,这样可以在同一局域网的任一台主机上通过 telnet 远程登录到开发板上,而不仅是只能通过串口连接开发板,当然 telnet 采用明文密码,安全性不如 sshd ,这是它的局限性。以下是详细移植步骤:
1 . Busybox 配置
Busybox 中已集成了 telnet client 和 telnetd, 以下是 busybox 中关于 telnet 的配置选项:
Networking Utilities --->
[*] telnet
[*] telnetd
[*] Support standalone telnetd (not inetd only)
2 .修改 etc/init.d/rcS
telnet client 功能只要选中配置选项就可以了,而 telnetd 需要 devpts ,因此要在启动脚本中开启 devpts 支持及启动 telnetd 。修改后的 etc/init.d/rcS 如下所示:
#!/bin/sh
PATH=/sbin:/bin:/usr/sbin:/usr/bin
runlevel=S
prevlevel=N
umask 022
export PATH runlevel prevlevel
mount -a
mkdir /dev/pts
/bin/mknod /dev/pts/0 c 136 0
/bin/mknod /dev/pts/1 c 136 1
/bin/mknod /dev/pts/2 c 136 2
/bin/mknod /dev/pts/3 c 136 3
/bin/mknod /dev/pts/4 c 136 4
/bin/mknod /dev/pts/5 c 136 5
/bin/mount -t devpts devpts /dev/pts
echo /sbin/mdev>/proc/sys/kernel/hotplug
mdev -s
/bin/hostname -F /etc/sysconfig/HOSTNAME
/sbin/ifconfig lo 127.0.0.1
/sbin/ifconfig eth0 192.168.1.168
/sbin/route add default gw 192.168.1.1
/etc/init.d/ts.sh
/usr/sbin/telnetd
重新启动开发板后,在主机上 telnet 连接开发板,但 login 登陆时出现如下错误提示:
login: cannot run /bin/bash: No such file or directory
Connection closed by foreign host.
在目标板上 ls -l /bin/*sh 发现只有 ash 和 sh,
ln -s /bin/sh /bin/bash 创建一个指向 sh 的软链接 bash ,重启开发板后,再在主机上 telnet 连接开发板, login 时又出现如下错误:
bash: applet not found
Connection closed by foreign host.
后来发现是 /etc/passwd 中指定了用户的 shell 为 bash, 而 busybox 只有 ash 和 sh, 将 /etc/passwd 中的 /bin/bash 都改为 /bin/sh 后问题解决。
telnet 登陆时串口终端显示:
[root@liuzg]# login[966]: root login on 'pts/0'
- linux启用telnet服务
- Linux启用Telnet服务
- linux telnet服务
- Linux Telnet服务开启
- linux开启telnet服务
- linux telnet服务
- Linux系统telnet服务
- linux开启telnet服务
- LINUX telnet 服务配置
- linux的telnet服务
- Linux telnet 服务配置
- Linux telnet服务
- linux开启telnet服务
- Linux开启telnet服务
- Linux 关闭Telnet服务
- linux安装telnet服务
- linux开启telnet服务
- linux 安装telnet服务
- ElasticSearch5.6.3 安装步骤
- 【机器学习实验】使用朴素贝叶斯进行文本的分类
- 使用Kotlin进行服务器端开发
- redis的持久化存储
- Fiddler系列教程3:使用Fiddler录制Jmeter性能测试脚本
- linux telnet服务
- 回调函数理解的文章
- Python垃圾回收机制
- vue父组件与子组件双向绑定
- QtChart——简单的动态波形图
- C++ 中MFC DLL 如何链接SQLite数据库,增加数据,并得到当前日期
- 大数据学习之路
- pageEncoding和ContentType的区别
- 人工智能有哪些好书值得推荐?