插件窝 干货文章 保护你的Linux服务器:熟练使用这些命令

保护你的Linux服务器:熟练使用这些命令

bash log Security print 152    来源:    2025-04-11

作为IT工程师,确保Linux服务器安全是首要任务。以下是必须掌握的防护命令和最佳实践,按威胁场景分类整理:

一、用户与权限审计 1. 可疑账户检测

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

# 检查UID为0的非root账户
awk -F: '($3 == 0) {print $1}' /etc/passwd | grep -v root
  1. 权限加固
# 关键目录权限检查
find / -perm -4000 -type f -exec ls -la {} \;  # SUID文件
find / -perm -2000 -type f -exec ls -la {} \;  # SGID文件
find / -type d -perm -o+w  # 全局可写目录

二、实时入侵检测 1. 网络活动监控

# 异常连接检测
netstat -tulnpe | awk '{print $5,$7}' | grep -v "127.0.0.1" | sort | uniq -c | sort -n

# 隐藏进程发现
ps -ef | awk '{print $2,$8}' | grep -v "\[" | sort -n | uniq -c
  1. 文件完整性校验(需提前建立基准)
# 快速校验系统关键文件
find /bin /sbin /usr/bin /usr/sbin -type f -exec md5sum {} \; | diff - baseline.md5

三、日志深度分析 1. 暴力破解检测

# SSH登录失败分析
grep "Failed password" /var/log/auth.log | awk '{print $11}' | sort | uniq -c | sort -nr
  1. 时间线关联分析
# 创建事件时间线
journalctl --since "2023-07-01" --until "2023-07-31" | grep -E "fail|error|warning" > timeline.log

四、主动防御措施 1. 防火墙即时响应

# 自动封禁高频连接IP
tail -f /var/log/auth.log | grep "Failed password" | awk '{print $11}' | sort | uniq -c | awk '$1>5 {print "iptables -A INPUT -s "$2" -j DROP"}' | bash
  1. 内存取证工具
# 使用Volatility检测rootkit
volatility -f memory.dump linux_pslist | grep -i -E "hidden|\[\]"

五、安全增强配置 1. SSH加固示例

# 修改sshd_config关键参数
sed -i 's/#PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
sed -i 's/#MaxAuthTries 6/MaxAuthTries 3/' /etc/ssh/sshd_config
systemctl restart sshd
  1. 内核参数调优
# 防止SYN洪水攻击
echo "net.ipv4.tcp_syncookies = 1" >> /etc/sysctl.conf
sysctl -p

六、自动化监控方案 1. 创建安全巡检脚本

#!/bin/bash
# 每日安全检查脚本
echo "[$(date)] Security Check Report" > /var/log/security_audit.log
echo "--- Open Ports ---" >> /var/log/security_audit.log
ss -tulnpe >> /var/log/security_audit.log
echo "--- Suspicious Processes ---" >> /var/log/security_audit.log
ps auxf | grep -E "[n]map|[h]ydra|[s]qlmap" >> /var/log/security_audit.log

进阶建议: 1. 配置auditd实现细粒度审计 2. 使用SELinux/AppArmor实现强制访问控制 3. 定期进行漏洞扫描(OpenVAS/Nessus) 4. 关键服务器部署HIDS如OSSEC

记住:安全是持续过程,建议: - 建立变更管理日志 - 实施最小权限原则 - 定期验证备份有效性 - 保持系统更新(yum/dnf/apt安全更新)

通过组合使用这些命令和策略,可以构建多层防御体系。对于生产环境,建议先在测试环境验证所有操作。