出现无法登录时,先不要重启机器。第一步通过控制面板使用VNC或控制台访问,确认系统是否在线并且SSH服务正在运行。
常见原因包括SSH服务(sshd)未启动、端口被防火墙/安全组阻塞、SSH配置错误(如禁用密码登录但未配置密钥)、IP被封或密码错误。
1)在控制台运行:systemctl status sshd / service ssh status;2)检查端口:ss -tulpn | grep ssh;3)查看防火墙:iptables -L 或 ufw status;4)查看/var/log/auth.log 或 /var/log/secure 获取登录错误信息。
为避免复发,建议启用SSH密钥登录并关闭root密码登录,配置异地备份的控制台账号,开启基于IP的白名单与Fail2Ban。
网络问题对跨国VPS尤为重要。先用ping和mtr(或traceroute)分别测试到目标节点的时延和沿途丢包点,定位是在本地、国际链路还是目的端。
如果在第一跳或国内出口出现丢包,多为本地ISP或数据中心出口问题;如果在海外链路丢包,可能与BGP路由或运营商互联质量有关。
可采取的措施包括更换出站路由或加速线路(例如使用CN–VN优质带宽),调整MTU以避免分片,开启TCP拥塞控制优化(如BBR),以及在必要时联系机房提供商协助排查。
先用df -h和df -i查看磁盘空间与inode,使用iotop或iostat查看IO负载。日志、缓存或临时文件常占用大量空间。
清理建议:清空/var/log中旧日志(配合logrotate)、清理包管理器缓存(apt clean / yum clean all)、删除临时文件与无用备份、压缩或迁移大文件到对象存储。
IO性能问题可考虑更换为更高IOPS的磁盘类型、使用LVM调整分区、启用缓存(如redis/memcached减轻磁盘压力),或将数据库迁移到独立块存储。
使用top/htop查看占用高的进程,结合ps aux --sort=-%mem或--sort=-%cpu锁定问题进程。对于Java、PHP、数据库等常见服务,查看线程数、连接数及GC/慢查询情况。
短期措施包括重启内存泄漏进程、增加swap缓解崩溃;长期建议优化应用逻辑、加入缓存层、限制单进程资源(cgroups/limits.conf)、水平扩展或升级实例规格。
同时部署监控(如Prometheus+Grafana或Zabbix)与告警,定期排查内存泄漏与慢查询,做好容量规划以避免服务抖动。
安全防护从基础做起:关闭不必要端口,使用防火墙(ufw/iptables)和安全组策略,禁用root密码登录并强制SSH密钥认证,安装并配置Fail2Ban或类似入侵防护。
定期更新系统与软件补丁,使用rpm/apt自动安全更新或制定周更计划,针对面向公网的服务启用WAF或应用层保护。
备份策略建议采用3-2-1原则:至少保留三个副本,使用两种不同存储介质,并将至少一份放在异地。结合快照与周期性全量/增量备份,严格测试恢复流程并保留一定时间的历史快照以应对误删或勒索。