linux用户密码加密
openssl是可以加解密,但是你的要求是创建用户并输入密码,据我所知,linux的passwd命令好象只能用键盘交互,没法用脚本预设的。有个可用的法是:用useradd命令创建完用户后,再用脚本修改/etc/shadow(这个文件是真正存放用户密码的地方)里的密码段,这个密码段是用hash算法加密的,好象是sha256还是sha512之类的吧,例如'000000',加密后是$6$7z4nJy/C69Wj$A65GjO61mBtErCbGNxIt1IUumPs/YUmeu1Zb7jElxNU/5TNmIDNx//etc/shadow的权限只有root用户可以修改,因此这个脚本要由root来执行。
2. linux用户密码是怎么加密的为什么两次同样的密码会出现不同的密文还是说这个还有别的可变参照
加密算法随机生成数列,密文每次都不同,但每个都能用。
3. 关于linux设置密码加密
用户名加密遇见的较少。密码一般都支持md5,sha1等。就是你选通过md5,sha1等算法加密你的密码,然后把密文写在你的配置文件里。具体格应该看你的应用程序的说明。
4. 在Linux下生成crypt加密密码的方法
我们可以用mkpasswd命令:这个命令就是用来生成crypt格式的密码的:
mkpasswd
输入命令后,程序会要求输入一个密码,然后生成crypt格式的字符串。
如果用Apache
Web服务器,那么也可以用htpasswd:
htpasswd
-nd
user
用户名(user)叫什么都无所谓,我们关注的是密码。这个命令会输出一个user:password格式的字符串,直接把password字段复制下来就ok了。
有OpenSSL的话,可以使用openssl命令:
openssl
passwd
-crypt
myPassword
把上面命令中的myPassword用你想用的密码字符串代替。
其他还有一些需要把命令在命令行中直接输入的方式,不过这种做法有个问题,就是在ps命令中可以看到密码,同时密码也会被记录入shell历史。
不过这个问题是有解决办法的:用脚本,或者语言解释器。
比如使用Perl:
perl
-e
"print
crypt('password','sa');"
Perl需要一个加密盐,如这里使用了sa(salt指加密中用到的随机字符串,用不同的salt可以生成不同的加密结果)。
Ruby也一样需要加密盐:
ruby
-e
'print
"password".crypt("JU");
print("n");'
php也可以:
php
-r
"print(crypt('password','JU')
.
"n");"
需要注意的是,如果不使用加密盐(如上面命令中的JU),那么输出的字符串将不是crypt加密格式,而是MD5加密格式的。所以,加密盐其实是必须的参数。
python需要导入crypt库并使用加密盐:
python
-c
'import
crypt;
print
crypt.crypt("password","Fx")'
这里的加密盐是Fx。
数据库也可以生成crypt密码。比如用Mysql:
echo
"select
encrypt('password');"
|
mysql
另外,Tcl,Ubuntu下的trf,还有Lua的lua-crypt插件也可以实现相同的目的。
欢迎补充其他的方式!
5. linux中用脚本创建非root用户,要脚本中配制非root用户的密码,如何用openssl对密码加密
openssl是可以加解密,但是你的要求是创建用户并输入密码,据我所知,linux的passwd命令好象只能用键盘交互,没法用脚本预设的。
有个可用的办法是:用useradd命令创建完用户后,再用脚本修改/etc/shadow(这个文件是真正存放用户密码的地方)里的密码段,这个密码段是用hash算法加密的,好象是sha256还是sha512之类的吧,例如'000000',加密后是$6$7z4nJy/C69Wj$A65GjO61mBtErCbGNxIt1IUumPs/YUmeu1Zb7jElxNU/5TNmIDNx/
/etc/shadow的权限只有root用户可以修改,因此这个脚本要由root来执行。
6. Linux的密码是什么算法加密的
数字和所使用的加密算法对应关系:
1: MD5 ,(22位)
2a: Blowfish, 只在有一部分linux分支中使用的加密方法
5: SHA-256 (43位)
6: SHA-512 (86位)
后面两种加密算法只在glibc2.7版本之后才支持。
7. linux centos6.2 用户登陆口令使用什么加密机制
使用的应该是md5吧,不过使用salt值的md5算法,$符号前后一共三个字段,第一个字段代表的意思就是加密算法的代号,第二个字段就是salt值,第三个字段就是加密后的字符串!
开机时候你输入密码后,系统会读取第一个字段来判断加密类型,然后读取第二个字段+你输入的密码来进行md5摘要,然后生成一个字符串去和系统中保存的密码去比对!
MD5的ID应该是1,也就是$1$然后后面是salt,salt值的作用就是让同样的密码可以生成不同的字符串,为了防止弱口令的批量泄露!
8. 谁知道Linux下对用户密码加密的函数呀
参看:
http://www.360doc.com/content/13/0321/16/10384031_273031689.shtml