系统信息检查
uname -a # 查看内核版本
lsb_release -a # 查看发行版信息
cat /etc/*-release # 查看系统版本详情
用户和权限检查
cat /etc/passwd # 查看所有用户
cat /etc/shadow # 查看密码哈希(需root)
sudo awk -F: '($3 == "0") {print}' /etc/passwd # 检查特权用户
服务检测
netstat -tulnp # 查看监听端口和服务
ss -tulnp # 更现代的替代方案
systemctl list-units --type=service --state=running # 查看运行中的服务
Lynis - 开源安全审计工具
sudo apt install lynis # Debian/Ubuntu
sudo yum install lynis # CentOS/RHEL
sudo lynis audit system # 执行全面扫描
OpenVAS (现为Greenbone Vulnerability Management)
# 安装较复杂,通常需要单独服务器
sudo apt install openvas # Debian/Ubuntu
sudo gvm-setup # 初始设置
Nessus (商业工具,提供命令行界面)
# 需要安装客户端后使用
/opt/nessus/bin/nessuscli scan --target 192.168.1.100
Linux Exploit Suggester
wget https://raw.githubusercontent.com/mzet-/linux-exploit-suggester/master/linux-exploit-suggester.sh -O les.sh
chmod +x les.sh
./les.sh
rkhunter - Rootkit检测
sudo apt install rkhunter # Debian/Ubuntu
sudo yum install rkhunter # CentOS/RHEL
sudo rkhunter --check
chkrootkit - Rootkit检测
sudo apt install chkrootkit # Debian/Ubuntu
sudo chkrootkit
检查可用更新
sudo apt update && sudo apt list --upgradable # Debian/Ubuntu
sudo yum check-update # CentOS/RHEL
检查内核漏洞
sudo grep -E "CVE-(202[0-9]|202[0-9])" /var/log/dmesg
使用CVE数据库查询
# 需要安装cve-search工具集
pip install cve-search
cve-search -q "linux kernel"
创建定期扫描的cron任务
# 每月执行Lynis扫描并发送报告
0 0 1 * * /usr/bin/lynis audit system --cronjob > /var/log/lynis-report-$(date +\%Y\%m\%d).log
设置日志监控
# 使用logwatch监控异常
sudo apt install logwatch
sudo logwatch --output mail --format html --mailto admin@example.com
通过以上命令行工具和技术,您可以全面评估Linux服务器的安全状况,及时发现并修复潜在漏洞。