服务器到手后第一件事,不是装面板、不是配网站,而是立刻修改SSH默认端口并关闭root密码登录,这个动作直接决定服务器安全配置的成败。
很多新手买了云服务器,第一反应是装宝塔、搭环境,结果用了不到一周就被扫爆,行业共识认为,服务器被入侵的常见原因中,弱口令和默认配置占比相当大,开箱第一步必须是安全基线检查,做完再谈其他。
先做安全基线:改掉所有默认设置
修改SSH端口和密码登录策略
服务器自带公网IP那一刻起,扫描器就开始24小时探测了,默认的22端口是首选攻击目标,root账号加弱密码更是敞开的门。
具体操作路径(以主流Linux系统为例):
- 登录服务器(用云控制台VNC或已配置的密钥)
- 执行命令
vi /etc/ssh/sshd_config - 找到
Port 22改为Port 你自定义的端口(建议用10000-65535之间的五位数) - 找到
PermitRootLogin yes改为PermitRootLogin no - 找到
PasswordAuthentication yes改为PasswordAuthentication no - 保存后执行
systemctl restart sshd
改成密钥登录后,记得把私钥下载到本地妥善保管,这一步做完,大约能挡掉九成以上的暴力破解尝试,如果担心自己忘记密钥导致无法登录,可以先用密钥登录确认无问题后再关闭密码登录,给自己留个缓冲期。
创建普通用户并赋予sudo权限
日常运维不能老用root,风险太大,创建普通用户做日常操作,需要管理员权限时再临时提权。
操作步骤:
useradd admin passwd admin usermod -aG wheel admin # CentOS/RHEL系列 # 或者 usermod -aG sudo admin # Ubuntu/Debian系列
这样即使普通用户账号被攻破,攻击者也拿不到完整系统权限。
系统更新和基础环境检测
更新系统内核和软件包
刚装好的系统,软件包版本可能偏旧,漏洞修补不及时,等于裸奔。
以CentOS/RHEL系列为例:
yum update -y yum install -y wget curl vim net-tools

Debian/Ubuntu系列用:
apt update && apt upgrade -y apt install -y wget curl vim net-tools
更新完成后重启一次,确保内核生效,这是一次性投入,能避免后续很多隐患。
检查服务器真实性能表现
很多人买服务器只看配置参数,不看实际表现,到手后跑一遍基础测试,心里才有底。
重点看三样:
- CPU信息:执行
lscpu查看核心数和主频 - 内存大小:执行
free -h确认实际可用内存 - 磁盘IO:执行
dd if=/dev/zero of=test bs=64k count=4k conv=fdatasync粗略测一下读写
拿到的数据和你买的时候宣传是否一致,这个环节立马见分晓,有朋友遇到过买2核4G的服务器,实际商家只给1核2G,后台显示正常但实际性能缩水,跑一遍测试当场露馅。
配置防火墙和基础安全防护
放行必要端口,关闭其余所有入口
防火墙是服务器安全配置的核心环节,很多用户装完环境后防火墙没开,或者干脆懒得配,等于把服务器裸着挂在公网上。
业界通用的做法是默认拒绝,按需放行:
- 只放行SSH端口(你改过的那个)
- 只放行Web服务端口(80和443)
- 只放行数据库内网访问(不暴露公网)
- 其余端口一概关闭
CentOS系列用firewalld:
systemctl start firewalld firewall-cmd --permanent --add-port=你的SSH端口/tcp firewall-cmd --permanent --add-port=80/tcp firewall-cmd --permanent --add-port=443/tcp firewall-cmd --reload
Ubuntu系列用ufw:
ufw allow 你的SSH端口/tcp ufw allow 80/tcp ufw allow 443/tcp ufw enable
数据库端口比如3306、6379,如果不是必须公网访问,直接不放开,业务需要再单独评估。
安装基础防护组件
安全防护不是装一个东西就完事了,需要多层配合:
- Fail2ban:监控SSH登录日志,自动封禁多次尝试失败的IP
- Rkhunter

:定期扫描后门程序
- 系统自带SELinux或AppArmor:保持开启状态,不要一上来就关掉
安装Fail2ban很简单:
yum install -y fail2ban # CentOS apt install -y fail2ban # Ubuntu systemctl start fail2ban systemctl enable fail2ban
配置好之后,恶意IP连续输错几次密码就会被自动拉黑。
数据备份策略和系统快照
设置快照和远程备份
数据丢了再后悔就来不及了,服务器到手就要把备份机制建好,不要等出事才想到。
云服务商一般都有快照功能,登录控制台找到云服务器管理页面,创建快照策略,建议:
- 数据盘每周快照一次
- 系统盘每次重大变更前手动快照
- 重要业务数据库每日自动备份
同时本地也要有备份,用crontab定时把关键数据打包下载到本地,这样服务器被删、机房故障、误操作都有退路。
测试备份恢复流程
备份光有文件不行,还得验证能不能恢复,找个维护窗口,把备份恢复到一台测试机上跑一遍,确认数据完整性和服务可用性。
这一步很多运维老手都会定期做,但个人站长往往是第一次丢数据时才想起来,2026年当下的共识是:备份不验证等于没备份,这个原则适用于所有服务器。
服务器性能和网络质量摸底
测试国内不同地域的访问速度
服务器所在地决定了访问延迟,如果你是面向国内用户,选了香港或海外节点,用户体验可能不太好。
有几个经验值可以参考:
- 国内用户访问国内机房,延迟一般在20-50ms之间
- 国内访问香港节点,延迟约50-100ms
- 国内访问美国西海岸,延迟约150-200ms
可以用ping命令测延迟,用traceroute看路由跳数,如果发现某条线路绕路严重,考虑换区或加CDN。
检查商家带宽是否真实
说是5M带宽,实际跑多少?用speedtest-cli测一下:
curl -s https://raw.githubusercontent.com/sivel/speedtest-cli/master/speedtest.py | python3

测完对比商家宣传的数值,带宽虚标的情况在低价服务器里并不少见,尤其是服务器租用价格特别便宜的那种,带宽和硬件往往都有水分。
部署环境时注意的细节
安装网站环境前先规划目录结构
不要一股脑全装默认路径,提前规划好:
- 网站代码放
/data/www/而不是默认的/var/www/ - 日志集中放
/data/logs/ - 备份放
/data/backup/
这样后续迁移、扩容、排查问题都方便得多,目录乱成一锅粥的服务器,出了问题连找日志都得半天。
时区和时间同步
服务器时间不准会导致日志错乱、定时任务异常、HTTPS证书校验失败,执行:
timedatectl set-timezone Asia/Shanghai timedatectl set-ntp yes
确保时间同步服务正常运行,这个细节虽然小,但影响面很大。
常见问题解答
服务器安全配置具体要花多长时间?
熟练的话半小时内可以完成基础安全配置,包括改SSH端口、建普通用户、配防火墙、安装Fail2ban,新手慢一点,一小时内也能搞定,这个时间投入换来的是一台不容易被攻破的服务器,性价比极高。
买服务器后怎么判断是哪里的服务器?
最直接的方法是看IP归属地,用ipinfo.io或whois查询都可以,更实用的是跑traceroute看路由走向,如果从国内访问要经过很多跨国节点,大概率是海外服务器,国内服务器备案是绕不开的话题,如果网站要放国内机房且使用80/443端口提供Web服务,必须先完成ICP备案,否则服务器随时可能被拦截。
服务器环境用宝塔面板还是手动搭建好?
没有绝对答案,如果业务简单、追求效率,宝塔类面板确实方便,但要注意面板本身也有漏洞历史,用了就要保持更新,如果业务复杂或对安全要求高,手动搭建虽然慢,但每个组件都是自己配的,可控性更强,建议先学手动搭建流程,再用面板提升效率,不要跳过原理直接套面板。