根文件系統中添加telnetd服務

 

使用busybox製作的一個基本根文件系統如何添加telnetd服務呢?

下面把本人的添加過程列出來供大家分享,如有不同意見請不吝賜教!

1、 添加telnet的支持(busybox中配置)

Networking Utilities --->
                [*] telnet
                [*] Pass TERM type to remote host
                [*] Pass USER type to remote host
                [*] telnetd
                [*] Support standalone telnetd (not inetd only)

2、 添加mdev的支持(busybox中配置)

        Linux System Utilities --->
                [*] mdev

3、 添加login(busybox中配置)

Login/Password Management Utilities --->
        [*] login

4、 修改etc/init.d/rcS添加mdev內容

#!/bin/sh

mount -a
        mkdir /dev/pts
        mount -t devpts devpts /dev/pts
        echo /sbin/mdev>/proc/sys/kernel/hotplug
        mdev -s
        /bin/hostname -F /etc/hostname

5、 創建etc/hostnam,並添加主機名

farsight

6、 在etc下創建文件passwd,group,shadow,創建目錄/home

7、 修改etc/fstab爲

#device mount-point type options dump fsck order
        proc /proc proc defaults 0 0
        tmpfs /tmp tmpfs defaults 0 0
        sysfs /sys sysfs defaults 0 0
        tmpfs /dev tmpfs defaults 0 0

8、 內核中添加相應的支持

UNIX98_PTYS=y
        DEVPTS_FS=y

9、 使用adduser添加用戶

#adduser linux

10、 添加命令行提示符格式,修改/etc/profile添加如下內容

PS1='[\u@\h \W]\# '
        HOSTNAME=`/bin/hostname`
        export USER LOGNAME PS1

11、 啓動telnet服務,在/etc/profile下添加如下內容

telnetd

這個時候我們就可以同過telnet client登陸我們的板子了。上面這些步驟有些不是必須的,大家可以根據需求選擇。

12、 參考文獻

A daemon for the TELNET protocol, allowing you to log onto the host running the daemon. Please keep in mind that the TELNET protocol sends passwords in plain text. If you can't afford the space for an SSH daemon and you trust your network, you may say 'y' here. As a more secure alternative, you should seriously consider installing the very small Dropbear SSH daemon instead:

http://matt.ucc.asn.au/dropbear/dropbear.html
        Note that for busybox telnetd to work you need several things:
        First of all, your kernel needs:
        UNIX98_PTYS=y
        DEVPTS_FS=y
        Next, you need a /dev/pts directory on your root filesystem:
        $ ls -ld /dev/pts
        drwxr-xr-x 2 root root 0 Sep 23 13:21 /dev/pts/
        Next you need the pseudo terminal master multiplexer /dev/ptmx:
        $ ls -la /dev/ptmx
        crw-rw-rw- 1 root tty 5, 2 Sep 23 13:55 /dev/ptmx
        Any /dev/ttyp[0-9]* files you may have can be removed.
        Next, you need to mount the devpts filesystem on /dev/pts using:
        mount -t devpts devpts /dev/pts
        You need to be sure that Busybox has LOGIN and FEATURE_SUID enabled. And finally, you should make certain that Busybox has been installed setuid root:
        chown root.root /bin/busybox
        chmod 4755 /bin/busybox with all that done, telnetd _should_ work....

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章