Linux命令之telnet
telnet [-8EFKLacdfrx] [-X authtype] [-b hostalias] [-e escapechar] [-k realm] [-l user] [-n tracefile] [host [port]]
telnet命令⽤于远程登录主机,对远程主机进⾏管理。telnet因为采⽤明⽂传送报⽂,安全性不好,许多Linux服务器都不开放telnet服务,⽽改⽤更安全的ssh⽅式。但任然有许多别的系统可能采⽤了telnet⽅式来通过远程登录,因此弄清楚telnet客户端的使⽤⽅式仍是很有必要的。
如果在没有host参数的情况下调⽤telnet,它将进⼊命令模式,由其提⽰符(telnet>)指⽰。在此模式下,它接受并执⾏下⾯列出的命令(请使
⽤“man –a telnet”查看)。如果使⽤参数调⽤它,它将使⽤这些参数执⾏open命令。
如果主机名解析到多个IP地址,则telnet会尝试与每个地址建⽴连接,直到其中⼀个地址成功或直到不再有地址为⽌。
(1).常⽤选项
-8 允许使⽤8位字符资料。包括输⼊输出
-a 尝试⾃动登录。
-b hostalias(主机别名) 使⽤别名指定远端主机名称。
-c 禁⽤读取⽤户的.telnetrc⽂件
-d 启动Debug模式
-e escapechar(脱离字符) 设置脱离字符(是逃逸字符,跳过的意思?)
-E 滤除脱离字符
-f使⽤Kerberos V5认证时,允许将本地凭证抓发到远程系统
telnet远程登录配置-F 使⽤Kerberos V5认证时,允许将本地凭证抓发到远程系统,包括已经转发到本地环境的任何凭证
-k realm(域名) 如果正在使⽤Kerberos⾝份验证,则请求telnet让远程主机获取指定的域名realm⽽不是远程主机的域名。
-K 不⾃动登录远程主机
-l user(⽤户名) 指定远程登录的⽤户名
-L 允许输出8位字符资料。
-n tracefile(跟踪⽂件) 指定跟踪⽂件记录跟踪信息.
-r 指定与rlogin类似的⽤户界⾯。逃逸字符设置为~,可通过-e选项修改
-x 如果有数据流加密,则打开
-X atype(认证形态) 禁⽤atype类型的⾝份验证
(2).实例
测试⼀下连接本地主机,端⼝号为23
[xf@xuexi ~]$ telnet localhost 23
Trying ::1...
Connected to localhost.
Escape character is '^]'.
Kernel 3.10.0-862.11.6.el7.x86_64 on an x86_64
xuexi login: root
Password:
Login incorrect
xuexi login: xf
Password:
Last login: Thu Sep 27 13:52:50 on :0
⽤Windows系统连接CentOS。注意添加23端⼝详细请看(5). CentOS防⽕墙添加端⼝
telnet 192.168.128.223 23
之后会出现如下图的登录界⾯
⽤CentOS系统连接Windows系统,如下(虚拟机需要使⽤桥接模式,有乱码是因为centOS采⽤UFT编码⽅式,⽽win10采⽤GB2312编码⽅式)
[xf@xuexi ~]$ telnet 192.168.128.137
Trying 192.168.
Connected to 192.168.128.137.
Escape character is '^]'.
Welcome to Microsoft Telnet Service
login: administrator
password:
*===============================================================
Microsoft Telnet Server.
*===============================================================
C:\Users\Administrator>
(3).telnet环境安装
很多Linux已经没有telnet服务,所以需要⾃⼰安装
1)安装telnet-server,telnet,xinted:
yum install -y telnet-server
yum install -y xinted
yum install -y telnet
2)将xinetd、telnet服务加⼊开机启动项:
CentOS7如下
systemctl enable xinetd.service
systemctl enable telnet.socket
CentOS6.8如下
chkconfig xinetd on
chkconfig telnet on
3)启动服务
CentOS7如下
systemctl start telnet.socket
systemctl start xinetd
CentOS6.8如下
vim /etc/xinetd.d/telnet 将其中disable的值改为no
service xinted restart
4)测试完后为安全考虑请关闭相应服务的⾃启功能
CentOS7如下
systemctl disable xinetd.service
syetemctl disable telnet.socket
CentOS6.8如下
chkconfig xinetd off
chkconfig telnet off
(4).Windows中telnet环境部署
控制⾯板-->程序-->打开或关闭Windows功能-->勾选Telnet服务器和Telnet客户端-->等待完成
部分系统还需要前往服务中打开telnet服务
(5).CentOS防⽕墙添加端⼝
CentOS6.8使⽤vim /etc/sysconfig/iptables命令修改配置⽂件,如下
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter :INPUT ACCEPT [0:0] :FORWARD ACCEPT [0:0] :OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 23 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited COMMIT
最后使⽤命令service iptables restart命令重启
CentOS7使⽤vim /etc/firewalld/l命令修改配置⽂件,如下
xml version="1.0" encoding="utf-8"?>
<zone>
<short>Public</short>
<description>For use in public areas. You do not trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.</description> <service name="ssh"/>
<service name="dhcpv6-client"/>
<port protocol="tcp" port="23"/>
</zone>
最后使⽤firewall-cmd --complete-reload命令或systemctl restart firewalld重启。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论