资讯动态

交换机Telnet登录三种认证模式详解:从仅密码到AAA配置实战

发布时间:2026/10/18 4:09:47 来源:尧图企业网站定制
1. 三种Telnet登录模式到底在解决什么问题很多刚接触网络设备的朋友第一次拿到交换机第一反应就是插上Console线用终端软件连上去敲命令。这当然没问题但实际运维场景里你不可能每次都抱着笔记本跑到机房蹲在机柜旁边。更多时候你需要从办公区、从另一栋楼、甚至从另一个城市远程登录到设备上做配置调整。Telnet就是干这个用的——它让你通过网络远程登录到交换机的命令行界面像坐在设备跟前一样操作。但问题来了交换机怎么知道“谁可以登进来”、“登进来之后能干什么”、“密码怎么校验”这就引出了三种不同的Telnet配置模式。它们不是随便设计的而是对应着不同的安全等级和运维场景。你把这三种模式搞清楚了基本上远程登录这块就不会再犯迷糊。这篇文章我会把三种模式的配置逻辑、适用场景、具体命令、踩坑经验全部拆开讲。不管你是刚入行的网络运维新手还是已经摸过几台设备但没系统梳理过的老手看完都能直接抄作业。我还会补充一些实际项目中容易忽略的细节比如用户权限等级怎么分配、密码加密方式怎么选、ACL怎么配合使用这些都是文档里不会细说但实际干活时一定会遇到的东西。先给个整体印象三种模式分别是仅密码认证模式、用户名密码认证模式、以及基于AAA认证的模式。它们的安全强度依次递增配置复杂度也依次递增。你选哪种取决于你的网络环境有多“干净”、有多少人需要登录、以及你对安全的要求有多高。注意Telnet协议本身是明文传输的密码和命令在网络里跑的时候没有加密。所以在对安全有要求的场景下建议优先考虑SSH。但Telnet的这三种认证模式的设计思路和SSH是相通的搞懂了TelnetSSH的配置逻辑你也能触类旁通。2. 模式一仅密码认证——最简单但也最危险2.1 这种模式的工作原理仅密码认证模式顾名思义交换机只校验一个密码不关心你是谁。你从终端Telnet过去设备弹出一行提示让你输入密码输对了就进去了输错了就踢出去。整个过程没有用户名的概念所有登录的人共用同一个密码。这种模式的底层逻辑是交换机在VTY虚拟终端线路上配置了一个密码当有Telnet连接请求进来时设备直接拿你输入的密码和VTY线路上配置的密码做比对。比对通过就给你一个命令行界面。至于你是谁、你从哪来、你要干什么它一概不管。我见过不少小型办公网络就是这么配的图省事一台交换机就一个密码谁需要登录就告诉谁。短期看没问题但人一多就乱了——有人离职了密码得改改完还得通知所有人麻烦得很。而且你根本不知道谁在什么时候登进来过出了问题连追溯都追溯不了。2.2 具体配置步骤假设我们有一台交换机管理IP是192.168.1.1现在要配置仅密码认证的Telnet登录。完整命令如下system-view telnet server enable user-interface vty 0 4 authentication-mode password set authentication password cipher Huawei123 user privilege level 15 protocol inbound telnet quit逐行解释一下。第一行system-view是从用户视图进入系统视图这是所有配置的起点。第二行telnet server enable是开启Telnet服务有些设备默认是关闭的你不开这一步后面全白搭。第三行user-interface vty 0 4是进入VTY用户界面视图0到4表示同时允许5个Telnet会话连接这个数字可以根据需要调整比如你希望同时支持10个连接就写vty 0 9。第四行authentication-mode password是核心它告诉设备用密码认证模式。第五行set authentication password cipher Huawei123设置密码这里用了cipher关键字表示密码在配置文件里以加密形式存储。如果你写simple密码就是明文存在配置里任何人拿到配置文件就能看到密码非常危险。第六行user privilege level 15是设置登录后的用户权限等级15是最高级意味着登录进来的人可以做任何配置。如果你希望限制权限可以改成1级或2级但那样很多配置命令用不了。最后两行protocol inbound telnet是允许Telnet协议接入quit是退出当前视图。2.3 这种模式的致命缺陷仅密码认证最大的问题就是无法追溯操作人。假设某天凌晨有人登录交换机改了一条路由配置导致整个网络断了。你查日志只能看到“有人用密码登录了”但不知道是谁。如果密码只有两个人知道你还能猜一猜如果密码贴在办公室白板上那就彻底没辙了。另一个问题是密码共享导致的安全漏洞。人多了之后密码传播范围不可控。有人离职了密码没改前员工还能登进来。你改了密码又得挨个通知通知过程中还可能被不该知道的人看到。还有一个容易被忽略的点权限无法差异化。所有人登进来都是同一个权限等级。你没法让甲只能看配置不能改让乙可以改但只能改某些接口。这在稍微正规一点的网络环境里是完全不可接受的。实操心得如果非要用仅密码模式至少把密码设复杂一点别用admin123这种。另外配合ACL限制登录源IP只允许特定网段的人Telnet过来能挡掉一部分风险。ACL的配置后面会讲。3. 模式二用户名密码认证——平衡安全与便利3.1 为什么需要用户名仅密码模式的问题在于“认密码不认人”。用户名密码模式就进了一步每个人有自己的用户名和密码登录时需要同时提供。这样至少能知道“谁在什么时候登进来了”追溯性有了基础。这种模式的逻辑是交换机本地维护一个用户列表每个用户有自己的用户名、密码和权限等级。Telnet连接进来时设备先校验用户名是否存在再校验密码是否匹配两者都对才放行。登录后设备根据该用户配置的权限等级决定他能执行哪些命令。我个人的经验是中小型网络里这种模式最实用。既不像仅密码模式那样完全无法追溯又不像AAA模式那样需要额外搭一台认证服务器。配置量适中维护起来也不复杂。3.2 完整配置流程还是那台交换机管理IP不变现在改成用户名密码认证。命令如下system-view telnet server enable aaa local-user netadmin password cipher Admin2024 local-user netadmin privilege level 15 local-user netadmin service-type telnet local-user operator password cipher Oper2024 local-user operator privilege level 1 local-user operator service-type telnet quit user-interface vty 0 4 authentication-mode aaa protocol inbound telnet quit这里的关键变化在aaa视图下创建本地用户。local-user netadmin password cipher Admin2024创建了一个叫netadmin的用户密码加密存储。local-user netadmin privilege level 15给这个用户最高权限。local-user netadmin service-type telnet指定这个用户可以用Telnet方式登录。然后我又创建了一个operator用户权限等级设为1。等级1的用户登录后只能执行查看类命令比如display开头的命令不能做任何配置修改。这就是权限差异化的体现。最后在VTY视图下把认证模式改成aaa。注意这里虽然叫“aaa”但我们并没有配置远程认证服务器用的是本地用户数据库。华为设备里本地用户名密码认证也是通过AAA框架来实现的所以认证模式要选aaa。3.3 权限等级的实际影响华为设备的权限等级分为0到15级数字越大权限越高。实际常用的几个等级等级典型用途能做什么0参观级只能执行ping、tracert等诊断命令1监控级可以执行display查看命令不能修改配置2配置级可以执行大部分配置命令但不能管理用户3-15管理级可以执行所有命令包括用户管理和系统级操作实际配置时普通运维人员给2级就够了只有核心管理员才给15级。我见过有人图省事所有用户都给15级那用户名密码模式的意义就大打折扣了——反正谁进来都能干所有事只是多输一个用户名而已。注意权限等级和命令级别是两回事。华为设备里每条命令都有自己的级别用户权限等级决定了能执行哪些级别的命令。比如display命令通常是1级interface配置命令通常是2级local-user用户管理命令通常是3级。你给用户设了2级权限他就执行不了3级的用户管理命令。3.4 密码策略的强化在AAA视图下还可以配置密码策略强制要求密码复杂度、有效期、历史记录等。比如aaa local-aaa-user password policy administrator password expire 90 password history 5 password min-length 8 quit这几条命令的意思是管理员用户密码90天过期不能重复使用最近5次用过的密码密码最短8位。这些策略在有一定安全要求的场景下非常有用能防止有人把密码设成123456或者长期不换密码。4. 模式三AAA认证——正规军的选择4.1 AAA到底是什么AAA是Authentication认证、Authorization授权、Accounting计费的缩写。在Telnet登录场景里认证就是“验证你是谁”授权就是“决定你能干什么”计费就是“记录你干了什么”。虽然叫“计费”但在企业网络里通常不是真的收钱而是记录操作日志用于审计。这种模式的核心思想是把认证和授权从网络设备上剥离出来交给专门的服务器处理。交换机不再本地维护用户列表而是把用户提供的凭证转发给AAA服务器通常是RADIUS或TACACS服务器由服务器来判断是否放行、放行后是什么权限。这样做的好处非常明显。第一集中管理所有网络设备的用户都在服务器上统一维护加人删人只改一处。第二审计完善服务器会记录谁在什么时候登录了哪台设备、执行了什么操作。第三扩展性强设备数量多了之后本地用户列表维护起来是噩梦AAA服务器可以轻松应对几百上千台设备。4.2 配置框架与关键参数AAA模式的配置分为两大块一是交换机与AAA服务器的对接配置二是VTY线路引用AAA认证。先看交换机侧的配置system-view aaa radius-server template RADIUS_TEMPLATE radius-server shared-key cipher Radius2024 radius-server authentication 192.168.100.10 1812 radius-server accounting 192.168.100.10 1813 quit aaa authentication-scheme AUTH_SCHEME authentication-mode radius quit authorization-scheme AUTHZ_SCHEME authorization-mode radius quit domain default authentication-scheme AUTH_SCHEME authorization-scheme AUTHZ_SCHEME radius-server RADIUS_TEMPLATE quit user-interface vty 0 4 authentication-mode aaa protocol inbound telnet quit这段配置看起来复杂但拆开看逻辑很清晰。首先创建一个RADIUS服务器模板指定服务器的IP地址、共享密钥和端口号。1812是认证端口1813是计费端口这是RADIUS协议的标准端口。然后创建认证方案和授权方案都指定用RADIUS。最后在domain default里把认证方案、授权方案和RADIUS模板关联起来。这样当用户登录时交换机会把凭证发给192.168.100.10这台服务器去验证。VTY线路下的配置和模式二一样authentication-mode aaa。区别在于模式二用的是本地用户数据库模式三用的是远程RADIUS服务器。4.3 服务器侧需要做什么交换机侧配好了服务器侧也得配合。以常见的RADIUS服务器软件为例你需要在服务器上做几件事第一添加客户端。告诉服务器“192.168.1.1这台交换机是我的客户端它的共享密钥是Radius2024”。共享密钥必须和交换机上配的一致否则服务器会拒绝交换机的请求。第二添加用户。在服务器上创建用户账号设置密码。还可以给每个用户配置特定的属性比如华为设备常用的HW-Privilege-Level属性用来指定用户登录后的权限等级。第三配置授权策略。决定哪些用户可以登录哪些设备、登录后是什么权限。有些RADIUS服务器支持基于用户组的策略比如“网络运维组”的用户可以登录所有交换机且权限为15“监控组”的用户只能登录特定交换机且权限为1。实操心得RADIUS服务器上配置用户时密码的存储方式要注意。有些服务器默认用明文存储有些用加密存储。如果服务器被攻破明文密码就全泄露了。建议开启服务器的密码加密存储功能并且定期审计服务器上的用户列表删掉离职人员的账号。4.4 三种模式的对比与选型建议把三种模式放在一起对比选型就清晰了对比项仅密码模式用户名密码模式AAA模式配置复杂度低中高可追溯性无有知道谁登录有知道谁登录、干了什么权限差异化不支持支持支持集中管理不支持不支持支持适用场景临时调试、极小型网络中小型网络中大型网络、有安全合规要求依赖外部服务器否否是我的建议是如果你只是临时调试一台设备用仅密码模式最快。如果是长期运行的小型网络至少用用户名密码模式。如果设备超过10台或者有安全审计要求直接上AAA模式前期麻烦一点后期省心很多。5. 实操中绕不开的ACL与安全加固5.1 用ACL限制登录源不管用哪种Telnet模式都建议配合ACL限制登录源IP。道理很简单你只允许运维网段的人Telnet过来其他网段的人连TCP握手都完不成攻击面直接缩小一大半。配置示例如下acl number 2000 rule 5 permit source 192.168.10.0 0.0.0.255 rule 10 deny source any quit user-interface vty 0 4 acl 2000 inbound quit这个ACL的意思是只允许192.168.10.0/24网段的IP地址Telnet到交换机其他全部拒绝。rule 5和rule 10之间的数字间隔是留给以后插入新规则的比如你以后要加一个运维网段可以插rule 6或rule 7不用重新编号。注意ACL配错了可能把自己也挡在外面。配完ACL后别急着退出当前会话先另开一个Telnet窗口测试一下能不能登录。确认没问题了再退出否则一旦把自己挡了就只能去机房插Console线了。5.2 修改Telnet端口号Telnet默认用23端口这个端口是扫描器重点关注的对象。把端口改成一个不常见的数字能减少被自动化工具扫描到的概率telnet server port 2323改完之后Telnet的时候需要指定端口号。比如在终端软件里填192.168.1.1:2323。这招不能从根本上解决安全问题但能过滤掉大部分无差别扫描。5.3 登录超时与最大连接数VTY线路下还可以配置超时时间和最大连接数user-interface vty 0 4 idle-timeout 5 0 screen-length 30 history-command max-size 20 quitidle-timeout 5 0表示5分钟无操作就自动断开防止有人登录后忘了退出留下一个敞开的会话。screen-length 30设置每屏显示30行翻页更方便。history-command max-size 20保存最近20条命令历史方便用上下箭头调出之前的命令。5.4 日志记录与审计不管用哪种模式都建议开启登录日志info-center enable info-center loghost 192.168.100.20这样有人登录、退出、执行关键命令时交换机会把日志发给日志服务器。出了问题查日志一目了然。如果用的是AAA模式RADIUS服务器本身也会记录详细的认证和授权日志双重保险。6. 常见问题与排查技巧实录6.1 Telnet连不上怎么办这是最常见的问题。排查思路按顺序来第一检查网络连通性。在客户端ping一下交换机的管理IP通不通。不通的话先解决网络层的问题可能是路由不对、VLAN不对、或者接口没up。第二检查Telnet服务是否开启。在交换机上执行display telnet server status看Telnet服务是不是enable状态。如果是disable执行telnet server enable。第三检查VTY线路配置。执行display user-interface vty 0 4看认证模式、协议类型、ACL配置是否正确。特别要注意protocol inbound这一项如果只配了ssh没配telnetTelnet是连不上的。第四检查ACL。如果VTY下绑定了ACL确认你的客户端IP在允许范围内。可以临时把ACL去掉测试一下确认是ACL的问题后再重新配置。第五检查最大连接数。如果同时登录的人太多超过了VTY线路数量新连接会被拒绝。执行display users查看当前登录的用户如果有闲置会话可以踢掉kill user-interface vty 0。6.2 登录后权限不够怎么办有时候用户名密码认证模式下用户登录后发现自己只能看不能改。这通常是权限等级设低了。解决办法是在AAA视图下修改用户的权限等级aaa local-user netadmin privilege level 15 quit修改后不需要重启设备下次登录就生效。但要注意如果你把权限等级从15降到1当前已经登录的会话不会立即降权需要退出重新登录才生效。6.3 密码忘了怎么恢复如果忘了Telnet密码但还能通过Console口登录那就好办。Console口的认证方式通常和VTY是分开的Console密码可能没忘。登录进去后重新设置VTY密码或者本地用户密码即可。如果Console密码也忘了那就只能走密码恢复流程了。不同型号的交换机恢复方法不一样通常需要重启设备在启动过程中进入BootROM菜单选择清除密码的选项。这个操作有风险建议提前查好对应型号的恢复手册并且确保设备配置有备份。实操心得我习惯在每台设备配置完成后把配置文件备份到本地和服务器上各一份。万一密码忘了或者配置搞乱了直接恢复备份比走密码恢复流程快得多。6.4 AAA服务器不通导致无法登录AAA模式下如果RADIUS服务器挂了或者网络不通用户就登不进交换机了。这时候如果Console口还能用可以临时把VTY的认证模式改回本地认证user-interface vty 0 4 authentication-mode aaa quit aaa authentication-scheme AUTH_SCHEME authentication-mode local radius quitauthentication-mode local radius的意思是先查本地用户本地没有再去查RADIUS服务器。这样即使RADIUS服务器挂了本地用户还能登录。但要注意本地用户数据库得提前建好别等到服务器挂了才想起来没建本地用户。6.5 常见问题速查表现象可能原因排查命令解决方法Telnet连不上Telnet服务未开启display telnet server statustelnet server enableTelnet连不上ACL拦截display acl 2000修改ACL允许源IPTelnet连不上VTY线路占满display userskill user-interface vty X登录后权限不足用户权限等级低display local-user修改privilege level密码认证失败密码错误或未加密display current-configuration重新设置密码AAA登录失败服务器不通ping 服务器IP检查网络或改本地认证登录后自动断开超时时间太短display user-interface vty 0 4调整idle-timeout7. 从Telnet到SSH的平滑过渡虽然这篇文章讲的是Telnet的三种模式但实际项目中只要条件允许我都会建议客户上SSH。SSH的认证模式和Telnet是相通的——仅密码、用户名密码、AAA三种模式在SSH里同样适用。区别在于SSH传输是加密的密码和命令不会在网络上裸奔。从Telnet迁移到SSH配置上的改动很小。首先需要生成RSA密钥对rsa local-key-pair create然后VTY线路下把协议改成SSHuser-interface vty 0 4 protocol inbound ssh quit认证模式的配置完全不用改之前配的AAA、本地用户、权限等级都继续有效。客户端从Telnet换成SSH客户端端口从23变成22其他操作体验基本一致。我个人的做法是新设备上线直接配SSHTelnet只在临时调试时开一下调完就关。老设备如果暂时不支持SSH至少把Telnet配合ACL和复杂密码用起来别裸奔。最后分享一个小技巧如果你不确定当前设备支持哪些协议执行display telnet server status和display ssh server status两个都看看。有些设备默认只开了Telnet没开SSH有些反过来。确认清楚再配省得配了半天发现协议根本没开。

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑