插件窝 干货文章 Linux服务器安全性的秘诀:精通这些必备命令

Linux服务器安全性的秘诀:精通这些必备命令

检查 bash 查看 文件 362    来源:    2025-04-11

Linux服务器安全性:必备命令指南

作为IT工程师,确保Linux服务器的安全性是至关重要的任务。以下是一系列关键命令和最佳实践,可帮助您维护和监控服务器安全。

1. 用户和权限管理

检查用户账户

# 查看所有用户
cat /etc/passwd

# 查看有登录权限的用户
grep -v "/sbin/nologin" /etc/passwd | grep -v "/bin/false"

# 检查空密码账户
awk -F: '($2 == "") {print}' /etc/shadow

用户权限管理

# 查看sudo权限用户
grep -Po '^sudo.+:\K.*$' /etc/group

# 查看用户组成员
groups username

# 修改文件权限
chmod 750 sensitive_file  # 所有者:rwx, 组:r-x, 其他:---
chown root:root sensitive_file

2. 系统监控与审计

登录监控

# 查看最近登录记录
last

# 查看失败登录尝试
lastb

# 查看当前登录用户
who

进程监控

# 查看运行中的进程
ps aux

# 查看网络连接
netstat -tulnp
ss -tulnp

# 查找异常进程
top -c
htop

3. 文件系统安全

查找敏感文件

# 查找SUID/SGID文件
find / -perm -4000 -type f -exec ls -la {} \; 2>/dev/null
find / -perm -2000 -type f -exec ls -la {} \; 2>/dev/null

# 查找可写文件
find / -xdev -type d \( -perm -0002 -a ! -perm -1000 \) -print
find / -xdev -type f \( -perm -0002 -a ! -perm -1000 \) -print

# 查找无主文件
find / -xdev \( -nouser -o -nogroup \) -print

文件完整性检查

# 创建重要文件的哈希值
sha256sum /etc/passwd /etc/shadow /etc/group > /root/file_hashes.txt

# 定期检查
sha256sum -c /root/file_hashes.txt

4. 网络安全

防火墙管理

# iptables (传统)
iptables -L -n -v

# nftables (较新系统)
nft list ruleset

# firewalld (CentOS/RHEL)
firewall-cmd --list-all

SSH安全

# 检查SSH配置
cat /etc/ssh/sshd_config | grep -v "^#" | grep -v "^$"

# 推荐的SSH配置:
# Port 2222 (非标准端口)
# PermitRootLogin no
# PasswordAuthentication no (使用密钥认证)
# MaxAuthTries 3

5. 日志分析

关键日志文件

# 认证日志
tail -f /var/log/auth.log  # Debian/Ubuntu
tail -f /var/log/secure   # RHEL/CentOS

# 系统日志
journalctl -xe  # systemd系统

日志分析命令

# 查找失败登录尝试
grep "Failed password" /var/log/auth.log | awk '{print $9}' | sort | uniq -c | sort -nr

# 查找暴力破解尝试
grep "BREAK-IN ATTEMPT" /var/log/auth.log

# 实时监控日志
tail -f /var/log/syslog | grep -i "error\|fail\|warning"

6. 安全更新

系统更新

# Debian/Ubuntu
apt update && apt upgrade -y
apt list --upgradable

# RHEL/CentOS
yum update -y
yum check-update

# 自动安全更新 (Ubuntu)
unattended-upgrades --dry-run --debug

7. 安全扫描工具

安装和使用Lynis

# 安装
apt install lynis  # Debian/Ubuntu
yum install lynis  # RHEL/CentOS

# 运行扫描
lynis audit system

Rootkit检查

# 安装rkhunter
apt install rkhunter  # Debian/Ubuntu
yum install rkhunter  # RHEL/CentOS

# 运行检查
rkhunter --check --sk

8. 应急响应

可疑活动检查清单

# 检查cron任务
crontab -l
ls -la /etc/cron*

# 检查启动项
systemctl list-unit-files --type=service | grep enabled
ls -la /etc/init.d/

# 检查内核模块
lsmod

最佳实践建议

  1. 最小权限原则:只授予必要的权限
  2. 定期更新:及时应用安全补丁
  3. 禁用不必要的服务:减少攻击面
  4. 使用密钥认证:替代密码登录SSH
  5. 配置防火墙:只开放必要的端口
  6. 启用SELinux/AppArmor:提供额外的安全层
  7. 定期备份:并验证备份的完整性
  8. 监控日志:设置警报机制

通过熟练掌握这些命令和最佳实践,您可以显著提高Linux服务器的安全性,并能够快速识别和响应潜在的安全威胁。