是否有脚本或软件可以每天更改服务器上的用户密码并将新密码邮寄到电子邮件地址?
我们希望授予人们对我们服务器的有限访问权限,但如果他们不再在场,我们不希望他们再拥有访问权限(因此每天需要重置密码)。
编辑:它是一个外部托管的网络服务器(即不托管在我们的网络上),并且我们不使用活动目录。
答案1
假设您拥有明文列表中所有可能的密码,因为您似乎根本不关心安全性。将此 I 放入任务计划程序并将其设置为每日:
$passw = Get-Content C:\password_list.txt | Get-Random -Count 1
([adsi]“WinNT://<your local computer name here>/AccountName”).SetPassword(“$passw")
$smtpServer = "yourmailserver.com"
$msg = new-object Net.Mail.MailMessage
$smtp = new-object Net.Mail.SmtpClient($smtpServer)
$msg.From = "[email protected]"
$msg.To.Add("[email protected]")
$msg.subject = "Here is your plaintext insecure password"
$msg.body = "Username - $passw"
$smtp.Send($msg)
现在,为了对你所珍视的一切的热爱,不要使用这个!
它不能替代适当的系统管理。每个需要特权访问您服务器的人都应该拥有自己的帐户,以便他们可以留下审计线索。一旦该人离开您的公司,该人的所有帐户都应关闭。如果您有 Active Directory,那将变得非常简单。如果没有,那就麻烦了,但却是必要的。
让人们共享密码已经够糟糕了,但还想以纯文本形式通过电子邮件发送密码就更糟糕了。