该文件/etc/shadow有几个日期字段,表示为自 1970 年 1 月 1 日以来的天数。是否有一种简单的方法可以用来获取用户列表和上次密码更改的日历日期以及到期日期?
参考:人影(5)
所有 unix 和类 Unix 系统上的文件 /etc/shadow 和 /etc/passwd 的格式是否相同或是否存在显着差异?
我的意思是文件的语法,而不是文件位置或名称
我想知道Linux中的密码验证是如何工作的。
我知道密码以散列形式存储在/etc/shadow文件中,用户信息在/etc/passwd文件中。我的理解是这样的:
/etc/shadow文件并找到与用户名对应的行。 我的理解正确吗?
我想知道我的/etc/shadow密码哈希是 SHA 或 MD 还是其他。从我读到的,它与$符号有关,但我没有任何美元符号。
我使用的是 Ubuntu 16
例子:
user:0.7QYSH8yshtus8d:18233:0:99999:7:::
Run Code Online (Sandbox Code Playgroud) 真正愚蠢的问题,但假设一台装有 Linux 的计算机没有加密硬盘。如果我用"openssl passwd"生成了一个散列,我不能只运行一个实时版本的 Ubuntu 并将我的散列添加到 /etc/shadow 文件中吗?或者 /etc/shadow 是否加密,即使硬盘没有加密?
考虑这个阴影字符串
$y$j9T$PaFEMV0mbpeadmHDv0Lp31$G/LliR3MqgdjEBcFC1E.s/3vlRofsZ0Wn5JyZHXAol5
Run Code Online (Sandbox Code Playgroud)
有4部分
问:
j9Tparam 字段中的含义是什么?我见过这个问题;然而,加密密码的格式/etc/shadow,那里没有解释。
如果/etc/shadow文件的第二个字段设置为!!,是否意味着该帐户被禁用?或者这是否意味着该帐户处于活动状态而没有分配密码?
我正在使用 Red Hat Enterprise Linux,以下是详细信息:
uname -a
3.10.0-327.22.2.e17.x86_64
Run Code Online (Sandbox Code Playgroud)
当我检查影子文件的权限时,我看到以下内容:
ls -l /etc/shadow
----------. 1 root root 1467 /etc/shadow
Run Code Online (Sandbox Code Playgroud)
看到这些权限我很惊讶。我认为“passwd”至少需要所有者的读/写权限才能更新此文件。知道这里发生了什么吗?
Mate 中的每个窗口周围都有一个阴影。如果重要的话,我运行 Lightdm。无论应用程序如何,如何完全禁用所有窗口的阴影?
我在/etc/shadow. 我不太明白它的格式。
$y$j9T$F5Jx5fExrKuPp53xLKQ..1$X3DX6M94c7o.9agCG9G317fhZg9SqC.5i5rd.RhAtQ7
Run Code Online (Sandbox Code Playgroud)
它由四部分组成,如下所示。据crypt(5),y指yescrypt。
https://manpages.debian.org/unstable/libcrypt-dev/crypt.5.en.html
- y
- j9T
- F5Jx5fExrKuPp53xLKQ..1
- X3DX6M94c7o.9agCG9G317fhZg9SqC.5i5rd.RhAtQ7
Run Code Online (Sandbox Code Playgroud)
最后三部分是什么意思?
shadow ×10
linux ×4
password ×4
encryption ×2
users ×2
files ×1
hashsum ×1
permissions ×1
security ×1
ubuntu ×1