telnetd(telnet端口)
telnet的命令的具体格式
TELNET(TELecommunications NETwork),提供了一种本地主机通过网络登录远程服务器的方法.对于Windows、Linux系统来讲需要安装和配置一个Telnet服务器,而对于Unix系统只需要运行一个telnetd(Daemon)的程序即可做为Telnet服务器。命令方式的FTP、Telnet应用参输入数比较多。
Telnet命令
Telnet提供对远程机器的终端服务,即本地机器作为远程的一个虚拟终端对远程机器进行操作。
1 Telnet命令格式:
telnet [选项] 主机名
选项包括:
-8 采用8位二进制传输
-E 屏蔽所有的退出
-L 使用8位二进制输出
-a 自动登录
-d 开关DEBUG信息,可从/usr/adm/syslog中看到(UNIX)
-e [ESCAPE_CHAR] 设置退出字符
-l USER 自动登录时作为用户名
2 Telnet命令使用方法:
在提示符后键入
#telnet [option] HOSTNAME (UNIX)
c:\TNVT220 HOSTNAME (DOS LanWorkPlace4.0 or 4.2)
c:\telnet HOSTNAME (ODS LanWorkPlace4.2)
或
#telnet
c:\ tnvt220
c:\telent
屏幕上出现:
TELNET
TELNETopen hostname
然后等待建立连接,连接建立后远程机器要求输入用户名和口令。
希望某位大大详细教我一下怎么开启openwrt的telnet
一般情况我们是直接使用.sh的,这个是dropbear采用的方式;其余的情况呢,我们采用的是telnetd,这个
1. 开启telnet需要修改login.sh脚本。 init.d脚本
telnetd -l /bin/ash 无需密码,直接登录
2. 开启密码登录需要其他的支持。login程序。
telnetd -l /bin/login.sh
修改login.sh
weedsdeMacBook-Pro:bin weeds$ cat login.sh
#!/bin/sh
# Copyright (C) 2006-2011 OpenWrt.org
cat EOF
=== IMPORTANT ============================
Use 'passwd' to set your login password
this will disable telnet and enable SSH
------------------------------------------
EOF
exec /bin/login
设置开机默认启动telnet (/etc/init.d/telnet)
weedsdeMacBook-Pro:files weeds$ cat telnet
#!/bin/sh /etc/rc.common
# Copyright (C) 2006-2011 OpenWrt.org
START=50
has_root_pwd() {
local pwd=$([ -f "$1" ] cat "$1")
pwd="${pwd#*root:}"
pwd="${pwd%%:*}"
test -n "${pwd#[\!x]}"
}
get_root_home() {
local homedir=$([ -f "$1" ] cat "$1")
homedir="${homedir#*:*:0:0:*:}"
echo "${homedir%%:*}"
}
has_ssh_pubkey() {
( /etc/init.d/dropbear enabled 2 /dev/null grep -qs "^ssh-" /etc/dropbear/authorized_keys ) || \
( /etc/init.d/sshd enabled 2 /dev/null grep -qs "^ssh-" "$(get_root_home /etc/passwd)"/.ssh/authorized_keys )
}
start() {
# if ( ! has_ssh_pubkey \
# ! has_root_pwd /etc/passwd ! has_root_pwd /etc/shadow ) || \
# ( ! /etc/init.d/dropbear enabled 2 /dev/null ! /etc/init.d/sshd enabled 2 /dev/null );
# then
service_start /usr/sbin/telnetd -l /bin/login.sh
# fi
}
stop() {
service_stop /usr/sbin/telnetd
}
linux中的Telnetd是什么
telnetd (telnet daemon):telnet 守护进程服务程序(telnet 服务器,标准端口21),提供telnet 协议虚拟终端服务。
telnet:telnet协议用户界面(telnet 客户端命令行工具),可能通过此工具登录到telnet服务器。

busybox telnetd的使用
在非root用户下运行busybox的telnetd服务,会因为默认绑定的是23端口,而导致运行失败,直接退出无任何提示。
可以通过busybox telnetd -p 23023方式选择其他端口。
通过查看busybox telnetd --help的帮助,可以看到可以通过-l选项指定当telnet登录时,会执行的login脚本
这里演示执行:
写了一个login.sh脚本
在另外一个窗口登录
如何关闭telnet等服务的反向地址解析
在没有反向地址解析的环境里使用telnet等服务会等待一段时间,本文探讨如何在linux里关闭telnet等服务的反向地址解析
因为在旧式系统(以inetd为超级服务器)内telnetd和ftpd是通过tcpd服务程序启动的,
而tcpd在启动的时候需要进行安全性检查和IP地址反向解释。
解决这个问题的方法有两种,
一是把IP地址的反向解释加到/etc/hosts文件中或者在DNS内为IP地址做反向解释。
第二种方法是不通过tcpd加载telnetd和ftpd,方法为修改/etc/inetd.conf:
把
ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -a
改为:
ftp stream tcp nowait root /usr/sbin/in.ftpd in.ftpd -l -a
把
telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd
改为:
telnet stream tcp nowait root /usr/sbin/in.telnetd in.telnetd
修改完成以后通过killall -HUP inetd即可生效。