给定一个linux用户名和一个密码如何测试一个有效的帐号?
发布时间:2020-12-13 19:43:08 所属栏目:Linux 来源:网络整理
导读:所以我的问题是直接给出一个 linux用户名和密码如何测试,如果它是一个有效的帐户? 解决方法 您可以使用影子文件验证给定用户名的给定密码是否正确. 在大多数现代发行版中,散列密码存储在影子文件/ etc / shadow(只能由root读取)中.以root身份,从给定用户的
所以我的问题是直接给出一个
linux用户名和密码如何测试,如果它是一个有效的帐户?
解决方法
您可以使用影子文件验证给定用户名的给定密码是否正确.
在大多数现代发行版中,散列密码存储在影子文件/ etc / shadow(只能由root读取)中.以root身份,从给定用户的影子文件中拉线,如下所示: cat /etc/shadow | grep username 你会看到这样的东西: username:$1$TrOIigLp$PUHL00kS5UY3CMVaiC0/g0:15020:0:99999:7::: 用户名后有$1.这表示它是一个MD5哈希.之后有另一个$,那么(在这种情况下)TrOIigLp后跟另一个$. TrOIigLp是盐.之后是使用盐散列的哈希密码 – 在这种情况下是PUHL00kS5UY3CMVaiC0 / g0. 现在,您可以使用openssl来使用相同的盐来哈希给定的密码,如下所示: openssl passwd -1 -salt TrOIigLp 在提示时输入给定的密码,openssl命令应使用提供的salt来计算MD5哈希,并且它应该与影子文件完全一样.上述命令中的-1为MD5散列. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |