BusyBox 1.13.0 telnetd
November 22, 2008 – 8:46 pm
Recently, I was working with my embedded Linux platform and wanted to implement a telnet server on it. My platform, based on the Atmel AT91SAM9260 CPU, runs an unpatched BusyBox. BusyBox has a telnet daemon (telnetd) built into it, but it required some configuration to get running. I’d like to document those configuration steps here for future reference.
1. Download the latest BusyBox. These instructions are based on BusyBox v1.13.0.
2. Run make menuconfig, and select all of the options you want built into BusyBox. Remember to setup your cross compiler!
3. Run make.
In my case, I’m not using devpts, so I manually make the pseudo terminal (pty) entries in /dev. I used the following script to do this:
for i in 0 1 2 3 4 5 6 7
do
/bin/mknod /dev/ttyp$i c 3 $i
/bin/mknod /dev/ptyp$i c 2 $i
done
Also, I made sure that CONFIG_FEATURE_DEVPTS was not set in the BusyBox .config before running make. The devpts file system was not configured in my kernel, so I knew I didn’t want it in BusyBox either. As far as I can tell, telnetd is the only BusyBox module that relies on this setting.
Some say that telnet is dead due to security issues and we should used ssh/scp instead of telnet/ftp. If you’re in that camp, I’d urge you to check out dropbear. However, for what I’m doing with this board, easy remote access trumps complicated security measures. Of course, your mileage may vary (YMMV), and I’m not advocating ignoring security concerns altogether.
