Juniper JUNOS用户登录密码配置

juniper-junos-shipping-guy首次拆封Juniper Networks路由器的时候,JUNOS系统软件已经被安装到Juniper路由器内部。由于还没有对Juniper路由器进行任何初始化配置,你需要通过console线路连接到Juniper路由器的console端口上,使用JUNOS CLI对Juniper路由器进行初始化配置。另外,如果你接触到的是Juniper的J系列企业级业务路由器,你也可以使用预安装的J-Web,通过图形化界面对Juniper路由器进行初始化配置。不过J-Web并不在我们这次的讨论范围之内,我们主要关注使用JUNOS CLI完成Juniper路由器的初始化配置。

由于在最开始的时候JUNOS系统内只存在root用户,在配置更多的用户之前你仅能通过root用户帐号登录到Juniper路由器上面。同时,Juniper路由器默认并没有对root用户设置登录密码,因此我们初始化配置的第一步便从配置JUNOS root用户帐号密码开始。

Juniper JUNOS root用户登录密码配置

Juniper路由器完成加电启动以后,通过console线路使用root用户帐号登录。

Amnesiac (ttyd0)

login: root

--- JUNOS 7.2R4.2 built 2006-02-14 07:33:49 UTC

root@%

使用cli命令从FreeBSD切换至JUNOS的运维模式;下一步使用configure命令进一步切换至JUNOS的配置模式。注意命令提示符的变化。

root@% cli
root@> configure
Entering configuration mode

[edit]
root@# 

设置JUNOS root用户帐号的登陆密码,注意,在初始化配置的时候你只能够使用plain-text-password参数设置JUNOS root用户帐号的登录密码。

[edit]
root@# set system root-authentication plain-text-password
New password:
Retype new password:

[edit]
root@#

Juniper JUNOS plain-text-password vs. encrypted-password

这里有一个让刚刚开始接触JUNOS的人感到疑惑的地方,在设置JUNOS用户帐号密码的时候,除了plain-text-password参数以外还存在一个encrypted-password参数。刚开始的时候,包括我在内,往往会以为这个参数用于为root用户帐号设置一个加密的登录密码。然而一旦使用这个参数设置密码以后,重新使用root用户登录JUNOS的时候,却发现无法使用刚刚设置的密码进行登录。而实际上,encrypted-password参数并非用于在初始化配置JUNOS用户帐号的时候指定密码。当你使用plain-text-password参数设置JUNOS root用户帐号的登录密码以后,JUNOS会自动将你所输入的密码进行加密,而这个被JUNOS加密后的密码,就叫做encrypted-password。因此,即便你使用plain-text-password参数指定用户帐号密码,当查看配置文件的时候JUNOS显示的便是被加密后的encrypted-password

[edit]
root@# show system root-authentication
encrypted-password "$1$K.HVFjnf$8nveYBwn7UDJFMbDOnaqy."
;## SECRET-DATA

所以,encrypted-password参数的真正用法在于当你需要在多台Juniper路由器上设置相同的用户名与密码的时候。那么你可以先在第一台Juniper路由器上用plain-text-password参数指定用户帐号密码,然后将包含整段加密后的密文:

$1$K.HVFjnf$8nveYBwn7UDJFMbDOnaqy.

在内的配置粘帖到其他的Juniper路由器上面。此时,你便可以使用相同的用户名与密码在多台Juniper路由器上登录了。我们将root用户帐号的相关配置全部粘帖到另外一台Juniper路由器上面。

[edit]
nigel@junos# edit system root-authentication 

[edit system root-authentication]
nigel@junos# load merge terminal relative
[Type ^D at a new line to end input]
encrypted-password "$1$K.HVFjnf$8nveYBwn7UDJFMbDOnaqy."
; ## SECRET-DATA
load complete

[edit system root-authentication]
nigel@junos# 

Juniper JUNOS用户登录密码加密方式

JUNOS默认使用SHA1方式对登录密码进行加密,而实际上,你还可以指定JUNOS使用DES或者MD5方式对所有用户的登录密码进行加密。当然,修改JUNOS对登录密码的加密方式将影响所有的用户,你不能为单独的用户指定与其他用户不一样的登录密码加密方式。另外,set system login password是一个JUNOS隐藏命令,你需要手工将password这个JUNOS隐藏命令全部敲入,而不能依赖空格键自动补全。

[edit]
nigel@junos# set system login ?
Possible completions:
  announcement         System announcement message
                       (displayed after login)
+ apply-groups         Groups from which to inherit
                       configuration data
+ apply-groups-except  Don't inherit configuration data
                       from these groups
> class                Login class
  message              System login message
> user                 Username

[edit]
nigel@junos# set system login password format ?
Possible completions:
  des                  Use DES to encrypt password
  md5                  Use MD5 to encrypt password
  sha1                 Use SHA1 to encrypt password

Juniper JUNOS用户登录密码格式

在配置JUNOS用户登录密码的时候,默认情况下JUNOS要求一个合法的用户登录密码,至少应该有6个字符长度,同时包含一次字母到数字或者字母大小写之间的变换。同样,使用JUNOS隐藏命令set system login password,我们能够修改JUNOS对于合法的用户登录密码的定义。如我们将合法的用户密码定义为至少有8位字符长度,另外需要包含两次变换。

[edit system login]
nigel@junos# set password minimum-length 8 

[edit system login]
nigel@junos# set password minimum-changes 2 

[edit system login]
nigel@junos# commit
commit complete

当我们再添加一个用户jnpr,并且使用密码test123的时候,JUNOS将出现报错信息,无论密码长度或者变换次数均不符合刚才我们给JUNOS定义的合法的用户登录密码的要求。

[edit system login]
nigel@junos# set user jnpr authentication plain-text-password
New password:
error: minimum password length is 8
error: require 2 changes of case, digits or punctuation

我们可以将该用户的JUNOS登录密码调整为Test1234重新指定。

4 thoughts on “Juniper JUNOS用户登录密码配置

  1. 如你所说,以为encrypted-password是设置密码,结果设置后,使用root账号进不去了,如何解决?

发表评论

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / 更改 )

Twitter picture

You are commenting using your Twitter account. Log Out / 更改 )

Facebook photo

You are commenting using your Facebook account. Log Out / 更改 )

Google+ photo

You are commenting using your Google+ account. Log Out / 更改 )

Connecting to %s