zoukankan      html  css  js  c++  java
  • 在Linux下生成crypt加密密码

    【摘要】当我们用红帽Kickstart脚本或useradd或其他方式写东西的时候,经常会需要用到crypt命令加密生成的密码格式。那么,有没有其他方式可以生成这种格式的密码?事实上,方法有很多

    1、我们可以用mkpasswd命令:这个命令就是用来生成crypt格式的密码的:

    mkpasswd

    输入命令后,程序会要求输入一个密码,然后生成crypt格式的字符串。

    2、如果用Apache Web服务器,那么也可以用htpasswd:

    htpasswd -nd user

    用户名(user)叫什么都无所谓,我们关注的是密码。这个命令会输出一个user:password格式的字符串,直接把password字段复制下来就ok了。

    3、有OpenSSL的话,可以使用openssl命令:

    openssl passwd -crypt myPassword

    把上面命令中的myPassword用你想用的密码字符串代替。

    4、其他还有一些需要把命令在命令行中直接输入的方式,不过这种做法有个问题,就是在ps命令中可以看到密码,同时密码也会被记录入shell历史。

    不过这个问题是有解决办法的:用脚本,或者语言解释器。

    比如使用Perl:

    perl -e "print crypt('password','sa');"

    Perl需要一个加密盐,如这里使用了sa(salt指加密中用到的随机字符串,用不同的salt可以生成不同的加密结果)。

    5、Ruby也一样需要加密盐:

    ruby -e 'print "password".crypt("JU"); print("
    ");'

    6、PHP也可以:

    php -r "print(crypt('password','JU') . "
    ");"

    需要注意的是,如果不使用加密盐(如上面命令中的JU),那么输出的字符串将不是crypt加密格式,而是MD5加密格式的。所以,加密盐其实是必须的参数。

    7、Python需要导入crypt库并使用加密盐:

    python -c 'import crypt; print crypt.crypt("password","Fx")'

    这里的加密盐是Fx。

    作者:jz

  • 相关阅读:
    周总结3
    周总结6
    Java时间日期格式转换
    [专贴]在使用了母版页的内容页后,如何在javascript中调用服务器控件值
    用到函数的题目
    javascript解析dom(2)
    javascript解析dom
    自己的分页
    javascript解析DOM(3)
    转载 ajax XML dataset
  • 原文地址:https://www.cnblogs.com/2020-zhy-jzoj/p/13165536.html
Copyright © 2011-2022 走看看