-
用户身份验证方法:
-
密码身份验证:用户通过输入用户名和密码来登录系统。这是最常见的身份验证方法。
-
公钥/私钥身份验证:用户使用公钥/私钥对进行身份验证。用户将公钥添加到服务器上,服务器通过匹配私钥进行验证。
-
双因素身份验证:用户需要提供两种不同类型的验证因素,如密码和手机生成的验证码,以增加安全性。
-
-
密码策略:
-
设置密码复杂性要求:要求密码包含大小写字母、数字和特殊字符,以提高密码的安全性。
-
设置密码过期时间:要求用户定期更改密码,防止长期使用弱密码。
-
设置密码重复使用限制:限制用户不能在短时间内多次使用相同的密码。
-
-
密码管理工具:
-
passwd 命令:设置用户密码或修改密码。 示例:为用户 "alice" 设置密码。
sudo passwd alice
- chage 命令:设置用户账号的密码策略。 示例:将用户 "bob" 的密码过期时间设置为30天。
sudo chage -M 30 bob
-
- SSH 密钥认证:
- 生成 SSH 密钥对:
ssh-keygen -t rsa -b 4096
将公钥添加到远程服务器上的授权文件中。
ssh-copy-id user@remote_host
- 生成 SSH 密钥对:
远程登录时不再需要密码,而是通过私钥进行身份验证。
- PAM(Pluggable Authentication Modules):
-
- PAM 提供了一种灵活的方式来配置用户身份验证。
- 通过编辑 PAM 配置文件,可以实现自定义的身份验证策略,如密码策略、登录限制等。
- 用户锁定和解锁:
-
- 锁定用户账号:使用 usermod 命令可以锁定用户账号,防止用户登录系统。 示例:锁定用户 "john" 的账号。
sudo usermod -L john
-
- 解锁用户账号:解锁被锁定的用户账号,使其可以登录系统。 示例:解锁用户 "john" 的账号。
sudo usermod -U john
- 解锁用户账号:解锁被锁定的用户账号,使其可以登录系统。 示例:解锁用户 "john" 的账号。
udo 访问权限:
- 通过 sudo 访问权限,普通用户可以在需要时以超级用户权限执行命令,提高了系统安全性。
- 编辑 sudoers 文件,授予或限制用户的 sudo 访问权限。
双因素认证:
- 在用户登录时,除了密码外,还需要提供第二种身份验证因素,如手机生成的验证码,以增加登录的安全性。
常见的双因素认证方法包括 Google Authenticator、YubiKey 等。
PAM 密码策略:
- PAM 提供了灵活的方式来定义密码策略。
通过编辑 PAM 配置文件,可以设置密码复杂性、密码过期时间、密码历史等。
密码哈希和加密:
- 用户密码在存储时通常不以明文保存,而是经过哈希和加密处理。
/etc/shadow 文件存储用户密码的哈希值,增加了密码的安全性。
限制远程登录:
- 通过 SSH 配置文件可以限制哪些用户可以远程登录系统。
- 配置文件路径:/etc/ssh/sshd_config