人到中年有点甜
不过还是告诉你真正的原因好了= =缘起...请上网找寻Cisco的文件编号: 45843『To specify a password on a line, use the password command in line configuration mode. To enable password checking at login, use the login command in line configuration mode.Under the line console configuration, login is a required configuration command to enable password checking at login. Console authentication requires both the password and the login commands to work.』里面解释了这件事...首先你要知道login是做啥用的在Cisco设备上的解释是 Enable password checking(你用? 去看设备上login的解释)表示在...启用密码检查(当登入时,在这条连线上启用密码认证)而loing local当中的local是何意思呢?请看设备上的解释... local Local password checking表示使用本机上的密码作认证那重点来了...line vty 0 4logintransport input sshtransport output none通过远程ssh总提示密码不对因为你只下了login告诉switch在line vty 0 4启用密码验证但是...问题是...你没有告诉它用何种方法来验证?所以你即便输入了正确的密码....它还是告诉你『密码不对』因为它没有一个依据来跟你输入的密码作比对,所以...你永远只会得到....密码不对正确密码 & null 得到得结果还是Fail(密码错误)空白密码 & null 得到得结果还是Fail(密码错误)(布林代数)那...这个为何成功?line vty 0 4login localtransport input sshtransport output none之后,马上就可以了。密码已经确认过没有问题关键很明显就在这里...login local你明确的告诉Switch当有人用这条线路line vty 0 4登入时,使用本机的密码作为认证方式正确密码 & 正确密码 =True(布林代数)但还有一个关键...你没有下login这个命令我前面有提到...下了login,就是告诉switch在line vty 0 4启用密码验证所以正统的作法其实是...line vty 0 4loginlogin localtransport input sshtransport output none但是...後来Cisco考虑到人性的懒(讲好听叫...人性化)在IOS上加入了这项功能当使用者不敲login命令时,系统会自动帮login给加进去虽然你只打了login local但系统会自动帮你补上login(启用密码验证)这条命令因此你使用line vty 0 4(login)←系统会自动帮你补上login localtransport input sshtransport output none是可行的但是...使用line vty 0 4login(它不会自动帮你补上login local)transport input sshtransport output none是万万不可行的这样的解释我猜你懂了^^可惜...我不是高手(因为我没有任何Cisco的证照)注意:不是每个版本的IOS都会自动帮你补上login喔