一、SSH远程登录安全强化
新购VPS服务器的首要任务是加固SSH访问通道。默认22端口和root直接登录是黑客重点攻击目标,建议立即执行三项关键操作:修改sshd_config文件中的Port参数为1024-65535之间的非标准端口,此举可规避80%的自动化扫描攻击。禁用密码认证改用密钥对登录,通过ssh-keygen生成RSA 4096位密钥对,将公钥写入~/.ssh/authorized_keys文件并设置600权限。务必禁用root远程登录,新建具有sudo权限的普通账户作为日常管理账号。完成配置后需重启sshd服务,同时建议安装fail2ban工具监控登录尝试,这对防范VPS服务器的暴力破解攻击效果显著。
二、系统防火墙深度配置
Linux系统自带的iptables或firewalld是保护VPS服务器的第一道防线。建议采用白名单机制,仅开放必要服务端口。对于Web服务器,通常只需放行HTTP/HTTPS(80/443)和自定义SSH端口。特别注意关闭ICMP协议响应,可有效防止网络探测。企业级环境中还应配置连接数限制规则,单IP每分钟最多建立3个SSH连接,这对防御DDoS攻击至关重要。CentOS系统推荐使用firewall-cmd永久规则:--add-rich-rule='rule family="ipv4" source address="x.x.x.x" accept'来授权特定IP访问。定期检查防火墙日志可发现异常连接尝试,这是评估VPS服务器安全状态的重要依据。
三、系统补丁自动化管理
保持系统更新是修复Linux漏洞最有效的手段。不同发行版需采用对应命令:Ubuntu/Debian使用apt-get update && apt-get upgrade -y,CentOS/RHEL则执行yum update -y。建议配置无人值守更新,通过crontab设置每周自动安全更新,但内核升级仍需手动确认。对于长期运行的VPS服务器,必须特别关注CVE公告中的高危漏洞,近年爆出的DirtyPipe、Ghost等本地提权漏洞。通过uname -r查看当前内核版本,与官方安全公告对比确认是否需要立即升级。同时删除不再使用的旧内核可释放磁盘空间,使用dpkg --list|grep linux-image或rpm -qa | grep kernel查询已安装内核列表。
四、敏感服务安全加固
VPS服务器上运行的各类服务都可能成为攻击入口。MySQL/MariaDB数据库应运行mysql_secure_installation脚本,移除测试数据库并设置root密码。Web服务方面,Nginx需隐藏server_tokens信息,Apache则应关闭目录浏览功能。对于PHP环境,修改php.ini禁用危险函数如exec、system等,并将upload_max_filesize控制在合理范围。所有服务都应配置为最小权限原则,Nginx工作进程以www-data用户运行。特别提醒定期检查crontab任务和/etc/init.d/目录,这是黑客植入后门的常见位置。通过netstat -tulnp命令可全面监控VPS服务器上的网络服务状态。
五、文件系统权限审计
合理的文件权限是Linux系统安全的基石。建议定期执行find / -perm -4000 -type f命令查找所有SUID文件,异常的可执行文件可能是提权工具。关键目录权限设置应为:/etc/ 755,/etc/shadow 600,/var/log/ 755。使用chattr +i命令可锁定重要配置文件防止篡改,/etc/passwd、/etc/ssh/sshd_config等。对于Web目录,务必确保用户上传目录不可执行PHP代码,可通过mount --bind实现隔离。VPS服务器的日志文件需要特别保护,建议配置logrotate实现自动轮转,避免单个日志文件过大影响性能,同时方便安全审计。
六、安全监控与应急响应
完善的监控体系能及时发现VPS服务器异常。安装配置OSSEC等HIDS(主机入侵检测系统)可监控文件完整性变化,其自带的rootkit检测模块能发现隐藏进程。通过top/htop命令持续观察系统负载,异常CPU占用可能预示挖矿病毒入侵。建议每日检查/var/log/auth.log和/var/log/secure文件,统计失败登录尝试。当发现入侵迹象时,应立即断开网络并创建系统快照,使用rkhunter进行全盘扫描。重要数据应遵循3-2-1备份原则,即3份副本、2种介质、1份异地存储。对于企业级VPS服务器,建议每季度进行渗透测试,模拟攻击检验防护体系有效性。