如何安全地禁止用户的密码通过木偶?

我有我的SSH服务器设置为只使用密码身份validation禁用公钥身份validation。

当通过木偶添加用户时,我想禁用用户密码。

到目前为止,我已经提出了这似乎工作,但我不知道这是多么安全:

user { 'john': ensure => 'present', comment => 'John Smith', groups => ['adm','sudo','wheel','users'], home => '/home/john', managehome => true, shell => '/bin/bash', password => '*', } 

正在使用password => '*'定义被认为是安全的禁用用户密码?

阴影(5)手册页说

如果密码字段包含一些不是crypt(3)的有效结果的string,例如! 或*,用户将不能使用unix密码login(但用户可以通过其他方式login系统)。

所以是的,使用*是安全的。 那! passwd(1)使用encryption密码的第一个字符来指示密码被locking( passwd -l ),并且可以解锁( passwd -u )。