嵌入式Linux之telnet

时间:2021-06-23 18:37:39
telnetd
 
1、busybox搭建根文件系统时telnet配置
Networking Utilities——>
[*]telnetd
[*]Support standalone telnetd(not inetd only) (telnetd可以由inetd启动,也可以单独启动)
Login/Passeword Management Utilities --->
[*]login   (一定要选择上login功能,否则会telnet登陆时候提示 “遗失对主机的连接”或者“Connection closed by foreign host.”)
 
2、根文件系统/etc/fstab或者启动脚本挂载devpts
mount -t devpts devpts /dev/pts (/etc/fstab中添加)
 
3、内核配置选项
UNIX98_PTYS=y
DEVPTS_FS=y
 
4、配置所有网口均可telnet登录
串口默认通过/dev/console端口登录
telenet登录/dev/pts/xxx端口登录
/dev/ptmx Master侧
/dev/pts/<number> Slave侧
如果不存在上述节点,就使用/dev/ttyp<number>
 
5、开机自启动
Linux根文件系统init进程启动顺序
/etc/inittab -> /etc/init.d/rcS -> /etc/profile
在rcS或者profile中添加/usr/bin/telnetd -p <端口号>启动telnetd服务(如果不指定端口,则端口号为默认端口号23)
 
使用说明:
Usage: telnetd [OPTIONS]
Handle incoming telnet connections
        -l LOGIN Exec LOGIN on connect
        -f ISSUE_FILE Display ISSUE_FILE instead of /etc/issue
        -K              Close connection as soon as login exits
                        (normally wait until all programs close slave pty)
        -p PORT         Port to listen on
        -b ADDR[:PORT]  Address to bind to
        -F              Run in foreground
        -i              Inetd mode
        -w SEC          Inetd 'wait' mode, linger time SEC
        -S              Log to syslog (implied by -i or without -F and -w)

功能说明:远端登入
linux下telnet
语  法:telnet [-8acdEfFKLrx][-b<主机别名>][-e<脱离字符>][-k<域名>][-l<用户名称>][-n<记录文件>][-S<服务类型>][-X<认证形态>][主机名称或IP地址<通信端口>]
补充说明:执行telnet指令开启终端机阶段作业,并登入远端主机。
参  数:  -8   允许使用8位字符资料,包括输入与输出
                    -a   尝试自动登入远端系统。 
                    -b<主机别名>   使用别名指定远端主机名称。
                    -c   不读取用户专属目录里的.telnetrc文件。
                    -d   启动排错模式。 
                    -e<脱离字符>   设置脱离字符。 
                    -E   滤除脱离字符。 
                    -f   此参数的效果和指定"-F"参数相同。 
                    -F   使用Kerberos V5认证时,加上此参数可把本地主机的认证数据上传到远端主机。 
                    -k<域名>   使用Kerberos认证时,加上此参数让远端主机采用指定的领域名,而非该主机的域名。 
                    -K   不自动登入远端主机。 
                    -l<用户名称>   指定要登入远端主机的用户名称。 
                    -L   允许输出8位字符资料。 
                    -n<记录文件>   指定文件记录相关信息。 
                    -r   使用类似rlogin指令的用户界面。 
                    -S<服务类型>   设置telnet连线所需的IP TOS信息。 
                    -x   假设主机有支持数据加密的功能,就使用它。 
                    -X<认证形态>   关闭指定的认证形态。
 
unix下telnet
telnet [-a][-e escape char][-f log file][-l user][-t term][host [port]]
-a      企图自动登录。除了用当前已登陆的用户名以外,与 -l 选项相同。
-e      跳过字符来进入 telnet 客户提示。
-f      客户端登录的文件名
-l      指定远程系统上登录用的用户名称。         要求远程系统支持 TELNET ENVIRON 选项。
-t      指定终端类型。         支持的终端类型仅是: vt100, vt52, ansi 和 vtnt。 host    指定要连接的远程计算机的主机名或 IP 地址。 port    指定端口号或服务名。