返回

保障安全,赢在有备:Linux 账号密码安全策略设置指南

后端

Linux 系统账号密码安全策略

互联网时代的网络安全重中之重

当今数字化时代,网络安全至关重要。作为服务器、个人电脑和嵌入式系统的主力军,Linux 操作系统以其开源、免费和稳定的特点享有广泛应用。然而,随着 Linux 的普及,其安全问题也日益凸显,其中账号密码安全更是重中之重。

一、SSH 安全设置:筑牢远程登录防线

SSH(安全外壳协议)是 Linux 系统默认开启的加密远程登录协议。为了提升 SSH 的安全性,可采取以下措施:

  1. 修改 SSH 端口: 将默认的 22 端口更改为更隐蔽的端口,让攻击者难以猜到。
  2. 启用 SSH 密钥认证: 使用 SSH 密钥生成工具生成密钥对,并使用公钥认证替代传统密码认证,提高安全性。
  3. 限制 SSH 登录次数: 设置 SSH 登录次数限制,当登录失败达到一定次数后自动禁止该 IP 地址登录,防止暴力破解。
  4. 启用 SSH 登录日志: 记录所有 SSH 登录事件,以便溯源安全事件。
# 修改 SSH 端口
sudo vi /etc/ssh/sshd_config
# 将 Port 22 改为自定义端口
Port 10022

# 启用 SSH 密钥认证
ssh-keygen -t rsa
ssh-copy-id user@remote_server

# 限制 SSH 登录次数
sudo vi /etc/ssh/sshd_config
# 将 MaxAuthTries 3 改为更严格的限制
MaxAuthTries 5

# 启用 SSH 登录日志
sudo vi /etc/ssh/sshd_config
# 将 SyslogFacility AUTHPRIV 改为 AUTH
SyslogFacility AUTH

二、sudo 安全设置:谨慎授予管理权限

sudo 命令赋予普通用户执行管理员权限的权利。为了提高 sudo 的安全性,可采取以下措施:

  1. 限制 sudo 权限: 修改 sudoers 文件,限制普通用户对 sudo 命令的使用权限,只允许执行特定命令或在特定时间段内使用。
  2. 启用 sudo 日志: 记录所有 sudo 命令的使用情况,方便溯源安全事件。
# 限制 sudo 权限
sudo visudo
# 添加以下行
username ALL=(ALL) NOPASSWD: /bin/command_to_execute

# 启用 sudo 日志
sudo vi /etc/sudoers
# 将 Defaults:env_reset 改为 Defaults:env_reset,timestamp_timeout=5
Defaults:env_reset,timestamp_timeout=5

三、root 账号安全设置:保护超级权限

root 账号是 Linux 系统的超级管理员账号,具有最高权限。为了提升 root 账号的安全性,可采取以下措施:

  1. 禁用 root 账号直接登录: 迫使用户使用普通账号登录,通过 sudo 命令提升权限,避免直接使用 root 账号登录带来的安全风险。
  2. 设置复杂的 root 账号密码: 使用密码生成器生成随机且复杂的 root 账号密码。
  3. 定期更改 root 账号密码: 设置密码过期时间,迫使用户定期更改 root 账号密码,降低密码泄露风险。
# 禁用 root 账号直接登录
sudo passwd -l root

# 设置复杂的 root 账号密码
sudo passwd root

# 定期更改 root 账号密码
sudo chage -d 0 root

四、其他安全策略:多管齐下,构筑安全堡垒

除了上述安全设置外,还可采取以下措施进一步提高 Linux 系统的安全性:

  1. 定期安装安全补丁: 安装安全补丁及时修复系统中的安全漏洞。
  2. 启用防火墙: 阻止未经授权的网络访问。
  3. 启用安全审计: 记录系统中的安全事件,以便及时发现潜在安全威胁。

结语:安全卫士,护航系统稳定

通过以上安全策略的设置,我们可以有效地提高 Linux 系统的安全性,降低安全风险,确保系统安全稳定运行。谨记安全是永无止境的过程,需要持续关注和维护,才能有效抵御网络威胁,保障 Linux 系统的正常运作。

常见问题解答

1. 修改 SSH 端口后,如何连接到服务器?

使用 SSH 命令并指定修改后的端口号,例如:

ssh -p 10022 user@remote_server

2. 如何限制普通用户只能执行某些特定的 sudo 命令?

在 sudoers 文件中添加以下行:

username ALL=(ALL) NOPASSWD: /bin/command_to_execute

3. 如何查看 sudo 日志?

使用以下命令查看 sudo 日志:

sudo grep sudo /var/log/auth.log

4. 为什么建议禁用 root 账号直接登录?

禁用 root 账号直接登录可以防止攻击者直接获取超级权限,降低安全风险。

5. 如何定期强制 root 账号更换密码?

使用 chage 命令设置密码过期时间,例如:

sudo chage -d 0 root