enable password这种方式是明文的。enable secret是采用了MD5加密的。
service password-encryption这个加密的方式是采用了cisco的私有加密方式来加密的。所以我在设置了vty、console、和AUX口密码的时候,开启service password-encryption,然后你在show run一看,这些接口的password后面都跟有一个数字7,这个数字7就表示是采用了cisco的私有加密算法,是可以逆转的,当然,我们在路由器上面再敲入:no service password-encryption这条命令后,是不可能直接解密的,是通过其他办法解密的。
至于你说的enable password 7,你可以在路由器下面输入这个命令:enable password ?后面会出现如下:
0 Specifies an UNENCRYPTED password will follow
7 Specifies a HIDDEN password will follow
LINE The UNENCRYPTED (cleartext) 'enable' password
level Set exec level password
输入:enable secret ?,出现:
0 Specifies an UNENCRYPTED password will follow
5 Specifies an ENCRYPTED secret will follow
LINE The UNENCRYPTED (cleartext) 'enable' secret
level Set exec level password
这里可以这样理解:
0 、5、7的意思是:0为不加密,5为使用MD5加密,7为使用cisco的私有算法加密。
enable password 0 后面可以直接跟加密的内容,这个命令和enable password 一样。
enable password 7后面必须要跟你加密的密码经过思科私有算法出来那个数值。比如,你想把这个密码设置成cisco,那么,你得必须先使用思科的私有算法算出cisco是多少,这里cisco使用思科的算法是060506324F41,即:enable password 060506324F41,然后你不能启用service password-encryption,在这个时候你show run看下,密码是不是cisco?
至于enable secret ,你在这个后面跟上0,也使用MD5加密,并不是明文,在使用enable secret 5 这个后面必须跟上你要使用的密码的MD5算法得出来的数值,并不能对MD5的出来的数值再进行加密。
以上有不当之处,请指出,谢谢!!!