作为IT工程师,熟练掌握命令行工具对于维护服务器安全至关重要。以下是从安全角度出发的命令行使用指南:
SSH安全连接
ssh -i ~/.ssh/private_key.pem user@server_ip -p 2222
用户权限管理
sudo adduser newuser
sudo usermod -aG sudo newuser
sudo passwd -l unuseduser
实时监控
top # 实时进程监控
htop # 增强版top
netstat -tulnp # 查看网络连接
ss -tulnp # 更现代的替代方案
日志检查
journalctl -xe # 查看系统日志
tail -f /var/log/auth.log # 监控认证日志
grep "Failed" /var/log/auth.log | awk '{print $9}' | sort | uniq -c | sort -nr
防火墙配置
sudo ufw enable
sudo ufw allow 22/tcp
sudo ufw deny 23/tcp
文件权限检查
find / -perm -4000 -type f -exec ls -ld {} \; # 查找SUID文件
find / -perm -2000 -type f -exec ls -ld {} \; # 查找SGID文件
find / -type f -perm -o+w -exec ls -ld {} \; # 查找全局可写文件
自动安全更新
sudo apt-get install unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades
可疑进程检查
ps auxf
lsof -i
文件完整性检查
md5sum /bin/ls # 与已知安全版本对比
sudo
而非直接root登录/etc/passwd
和/etc/shadow
文件权限bash
sudo systemctl disable telnet
tmux
或screen
保持会话安全bash
export HISTTIMEFORMAT="%F %T "
export HISTSIZE=10000
export HISTFILESIZE=10000
掌握这些命令行技能将显著提升您维护服务器安全的能力,帮助您快速识别和应对潜在威胁。