linux命令验证密码 linux如何验证用户和密码是否设置成功

Linux修改用户密码的命令是在Unix/Linux系统中,passwd这个指令可以用来变更使用者的密码 , 对于一般使用者而言(非root),执行passwd之后,会需要输入目前现行的密码 , 才可以允许密码的变更;而如果是root管理者的话,则可以在不需要现行密码的情况下 , 变更任何使用者的密码(包含root自己的密码) 。
变更使用者密码
一般的使用者执行passwd即可变更自己的密码:
如果是root管理者的话,可以变更任何使用者的密码:
sudo passwd xxx
如果变更root管理者的密码,就跟一般使用者一样直接执行passwd即可 。
显示密码状态资讯
若要显示密码的状态资讯 , 可以加上-S参数:
这个输出包含七个栏位:
帐号名称 。
密码状态,状态包含锁定密码(L)、无密码(NP)与可用密码(P) 。
上次修改密码的时间 。
密码最短使用期限(minimum password age) , 单位为天 。
密码最长使用期限(maximum password age),单位为天 。
密码过期前警告期间(password warning period),单位为天 。
密码过期后可使用的期间(password inactivity period),单位为天 。
如果是root管理者,则可以查看特定使用者的密码资讯:
sudo passwd -S gtwang
root管理者可以使用-aS参数查阅所有使用者的密码状态资讯:
sudo passwd -a
移除使用者的密码
若要移除使用者的密码,可以使用-d参数,并加上使用者的名称:
sudo passwd -d xxxx
移除使用者的密码之后,可以检查一下状态资讯:
sudo passwd -S xxxx
xxxx NP 09/30/2015 0 99999 7 -1
在密码被移除之后,该使用者的帐号也会同时被停用 , 无法登入 。
设定密码为过期状态
有时候因为某些原因(像是重新设定密码之后),我们会希望使用者立刻更改自己的密码 , 这时候我们可以使用-e参数:
sudo passwd -e xxx
passwd: password expiry information changed.
检查一下状态资讯:
sudo passwd -S xxx
xxx P 01/01/1970 0 99999 7 -1
这时候如果使用者使用SSH 登入的话,系统就会强制变更密码:
linux命令输完后出现password 求大神解释在LOGINlinux命令验证密码:后打用户名超级用户是 root
然后在Password:处打密码 。登陆后 才可以操作 。
init 0 是关机命令init 6 是重启命令
linux怎么获取使用md5处理前的密码这里以字符串123456为例子,它的md5密文值为:e10adc3949ba59abbe56e057f20f883e
这里以1.txt为需要被加密的文件 。
一、 用oppnssl md5 加密字符串和文件的方法 。
1. oppnssl md5 加密字符串的方法
a.手动输入命令及过程如下:
#openssl //在终端中输入openssl后回车 。
OpenSSL md5 //输入md5后回车
123456 //接着输入123456,不要输入回车 。然后按3次ctrl d 。
123456e10adc3949ba59abbe56e057f20f883e //123456后面的就是密文了
解释:为何在输入123456后不回车呢?
是因为openssl默认会把回车符当做要加密的字符串中的一个字符 , 所以得到的结果不同 。如果你输入123456后回车,在按2次ctrl d 。得到的结果是:
OpenSSL md5
123456
f447b20a7fcbf53a5d5be013ea0b15af //因为openssl不忽略回车符导致的
b.或者直接用管道命令
# echo -n 123456 | openssl md5 //必须要有-n参数,否则就不是这个结果了 。
e10adc3949ba59abbe56e057f20f883e
解释:为何要加-n这个参数?
-n就表示不输入回车符,这样才能得到正确的结果 。如果你不加-n , 那么结果和前面说的一样为:
f447b20a7fcbf53a5d5be013ea0b15af //因为openssl不忽略回车符导致的
2.用openssl加密文件 。
#openssl md 5 -in 1.txt
##################################################3
Openssl其他相关加密的命令参数:引自:实用命令:利用openssl进行BASE64编码解码、md5/sha1摘要、AES/DES3加密解密 收藏
一. 利用openssl命令进行BASE64编码解码(base64 encode/decode)
1. BASE64编码命令
对字符串‘abc’进行base64编码:
# echo abc | openssl base64
YWJjCg== (编码结果)
如果对一个文件进行base64编码(文件名t.txt):
# openssl base64 -in t.txt
2. BASE64解码命令
求base64后的字符串‘YWJjCg==’的原文:
# echo YWJjCg== | openssl base64 -d
abc (解码结果)
如果对一个文件进行base64解码(文件名t.base64):
# openssl base64 -d -in t.base64
二. 利用openssl命令进行md5/sha1摘要(digest)
1. 对字符串‘abc’进行md5摘要计算:echo abc | openssl md5
若对某文件进行md5摘要计算:openssl md5 -in t.txt
2. 对字符串‘abc’进行sha1摘要计算:echo abc | openssl sha1
若对某文件进行sha1摘要计算:openssl sha1 -in t.txt
三. 利用openssl命令进行AES/DES3加密解密(AES/DES3 encrypt/decrypt)
对字符串‘abc’进行aes加密,使用密钥123,输出结果以base64编码格式给出:
# echo abc | openssl aes-128-cbc -k 123 -base64
U2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g= (结果)
对以上结果进行解密处理:
# echo U2FsdGVkX18ynIbzARm15nG/JA2dhN4mtiotwD7jt4g= | openssl aes-128-cbc -d -k 123 -base64
abc (结果)
若要从文件里取原文(密文)进行加密(解密),只要指定 -in 参数指向文件名就可以了 。
进行des3加解密,只要把命令中的aes-128-cbc换成des3就可以了 。
注:只要利用openssl help就可以看到更多的安全算法了 。
###############################################
二、 利用php的md5函数加密字符串
#touch a.php //创建a.php文件
#vi a.php //用vi 编辑a.php文件
将?php echo md5(123456); ?输入进去后保存
#php a.php //运行a.php文件
显示:e10adc3949ba59abbe56e057f20f883e
三、 利用md5sum命令
A.在linux或Unix上,md5sum是用来计算和校验文件报文摘要的工具程序 。一般来说,安装了Linux后 , 就会有md5sum这个工具 , 直接在命令行终端直接运行 。可以用下面的命令来获取md5sum命令帮助 man md5sum
#md5sum –help
有个提示:“With no FILE, or when FILE is -, read standard input.”翻译过来就是“如果没有输入文件选项或者文件选项为 - , 则从标砖读取输入内容”,即可以直接从键盘读取字符串来加密 。
利用md5sum加密字符串的方法
# md5sum //然后回车
123456 //输入123456.然后按两次ctrl d.
显示:
123456e10adc3949ba59abbe56e057f20f883e 红色代表加密后的值
还可以用管道命令:
#echo -n '123123' | md5sum
或者写成md5加密脚本,名字叫md5.sh,
将以下内容复制进脚本里:
#!/bin/bash
echo -n $1 | md5sum | awk '{print $1}'
保存后,给脚本执行权限 。
#sh md5.sh 123456
显示:e10adc3949ba59abbe56e057f20f883e
B.其实也可以将文本放入文本文件,然后用md5sum 加密改文本,也可以得到字符串加密的值 。过程如下:
#touch a.txt
#echo -n 123456a.txt //将123456写进文本文件,不能丢了 –n参数,避免回车符干扰
#md5sum a.txt
显示:e10adc3949ba59abbe56e057f20f883e a.txt
ctrl d有两个含义:
一是向程序发送文件输入结束符EOF 。
二是向程序发送exit退出指令 。程序收到信号后具体动作是结束输入、然后等待 , 还是直接退出 , 那就要看该程序捕获信号后是如何操作的了 。
md5sum属于第一个含义 。两次strl d了 , 第一次读取EOF指令,再次捕获就会当成exit指令 。而shell一类的程序,会直接把ctrl d解析为退出指令 。
熟悉linux命令行的进,这是要提示输入账号密码吗?是linux命令验证密码的linux命令验证密码,输入用户名linux命令验证密码 , 然后下面接着输入密码linux命令验证密码,密码不会显示的,跟着感觉走,输完直接回车进
Linux命令行生成随机密码的方法有哪些生成一个随机密码
对于下面的任何一种方法,linux命令验证密码你可以通过简单的修改来生成特定长度的密码,或者只使用其输出结果的前N位 。希望你正在使用一些类似于LastPass的密码管理器,这样你就不用自己记住这些随机生成的密码了 。
1. 这种方法使用SHA算法来加密日期 , 并输出结果的前32个字符linux命令验证密码:
Shell
1
date%s | sha256sum | base64 | head -c 32 ; echo
2. 这种方法使用内嵌的/dev/urandom,并过滤掉那些日常不怎么使用的字符 。这里也只输出结果的前32个字符:
Shell
1
/dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-32};echo;
3. 这种方法使用openssl的随机函数 。如果你的系统也许没有安装openssl , 你可以尝试其它九种方法或自己安装openssl 。
Shell
1
openssl rand -base64 32
4. 这种方法类似于之前的urandom,但它是反向工作的 。Bash的功能是非常强大的!
1
tr -cd '[:alnum:]'/dev/urandom | fold -w30 | head -n1
5. 这种方法使用string命令,它从一个文件中输出可打印的字符串:
Shell
1
strings /dev/urandom | grep -o '[[:alnum:]]' | head -n 30 | tr -d '\n'; echo
6. 这是使用urandom的一个更简单的版本:
Shell
1
/dev/urandom tr -dc _A-Z-a-z-0-9 | head -c6
7. 这种方法使用非常有用的dd命令:
Shell
1
dd if=/dev/urandom bs=1 count=32 2/dev/null | base64 -w 0 | rev | cut -b 2- | rev
8. 你甚至可以生成一个只用左手便可以输入的密码:
Shell
1
/dev/urandom tr -dc '12345!@#$%qwertQWERTasdfgASDFGzxcvbZXCVB' | head -c8; echo ""
9. 如果每次都使用上述某种方法,那更好的办法是将它保存为函数 。如果这样做了 , 那么在首次运行命令之后 , 你便可以在任何时间只使用randpw就可以生成随机密码 。或许你可以把它保存到你的~/.bashrc文件里面 。
Shell
1
randpw(){/dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-16};echo;}
10. 最后这种生成随机密码的方法是最简单的 。它同样也可以在安装了Cygwin的Windows下面运行 。在Mac OS X下或许也可以运行 。我敢肯定会有人抱怨这种方法生成的密码没有其它方法来的随机 。但实际上如果你使用它生成的全部字符串作为密码,那这个密码就足够随机了 。
Shell
1
date | md5sum
是的,这种方法也极其好记 。
【linux命令验证密码 linux如何验证用户和密码是否设置成功】linux命令验证密码的介绍就聊到这里吧,感谢你花时间阅读本站内容 , 更多关于linux如何验证用户和密码是否设置成功、linux命令验证密码的信息别忘了在本站进行查找喔 。

    推荐阅读