
开篇前言:多少小白踩过“裸奔服务器”的大坑
刚接触建站、搭工具、跑小程序的朋友,十有八九都会犯同一个致命错误:服务器开通,直接上传程序上线,完全忽略安全配置。
我身边太多人吃过亏。有人花几十块买低配VPS搭建个人博客,域名解析刚做完,后台CPU直接拉满100%;还有朋友用阿里云ECS做项目测试,隔天收到服务商预警,机器被植入挖矿程序,疯狂消耗流量产生高额账单,最后主机直接被封禁,项目数据全部丢失。
事后排查原因,没有复杂的网站漏洞,全是基础设置的低级漏洞:密码设123456、SSH默认22端口全开、root账号随便外网登录、安全组放行全部端口……相当于把家门大敞,黑客自动化扫描工具全网轮询,几分钟就能扫到你的服务器,植入木马、挖矿脚本,轻则机器卡顿报废,重则被黑客当成肉鸡发起攻击,承担连带风险。
很多新手抱有侥幸心理:我只是个人小站点,没有重要数据,没人会盯上。这个想法大错特错。黑客工具是全自动批量扫描,不区分服务器大小、用途,只要公网主机存在薄弱入口,就会批量植入挖矿程序薅算力。
今天这篇文章,专门写给完全不懂运维的小白,整理10台新服务器开通后,必须第一时间做完的加固操作。覆盖SSH登录防护、账号权限、双层防火墙、无用端口清理、防爆破工具等全套实操,CentOS、Ubuntu系统通用,国内ECS、海外VPS全部适配。
文中所有Linux命令都可以直接复制粘贴运行,不用死记硬背,跟着步骤一步步操作,彻底解决弱密码、全开放安全组裸奔两大最高危问题,从源头挡住暴力破解、挖矿入侵。建议先收藏,新机器到手对照逐项操作,加固完成再部署网站。
一、第一步先改高强度密码,掐断最简单的爆破入口
绝大多数入侵,都是从简单密码开始。黑客工具会循环尝试生日、手机号、连续数字、账号同名等弱口令,只要密码简单,几分钟就能暴力登录服务器,拿到操作权限。
实操操作:
登录服务器终端,输入命令修改登录密码:
passwd
回车后输入两遍新密码,这里给大家一个安全标准:长度≥12位,大小写字母+数字+特殊符号组合,不要使用有规律的字符。
小白避坑提醒:
不要图省事设置简单密码,哪怕后面配置防火墙,依旧存在被穿透破解的风险;不要把密码存放在服务器文件夹、记事本内,防止文件泄露。
二、禁用root远程SSH登录,堵死最高权限入侵通道
Linux系统里root是超级管理员,拥有主机全部操作权限。一旦root账号被外网登录,黑客可以随意删除文件、植入挖矿程序、篡改系统底层配置,安全风险直接拉满。
正确操作逻辑:新建普通管理员账号,日常远程登录只用新账号,需要修改系统配置时再临时获取管理员权限,彻底关闭root外网登录权限。
全套可复制命令
创建专属登录账号,把下方username替换成你自定义的名字
useradd usernamepasswd username
给账号添加管理员权限
CentOS系统执行:
usermod -aG wheel username
Ubuntu系统执行:
usermod -aG sudo username
修改SSH配置,禁止root远程登录
vi /etc/ssh/sshd_config
打开文件后,找到PermitRootLogin这一行,修改为:
PermitRootLogin no
重启SSH服务让配置生效
CentOS:
systemctl restart sshd
Ubuntu:
systemctl restart ssh
操作完成后,不要立刻关闭终端,新开连接窗口测试,确认新账号可以正常登录,root账号无法远程访问才算成功。
三、修改默认22端口,避开全网自动化批量扫描
SSH默认22端口是全网黑客工具的首要扫描目标,90%以上自动化爆破脚本都会优先扫描这个端口。更换自定义端口,能直接过滤掉绝大多数无针对性的批量攻击。
完整操作流程+复制命令
1.编辑SSH配置文件
vi /etc/ssh/sshd_config
找到#Port22,删掉前面#注释符号,替换成自定义端口,推荐10000-60000之间数字,示例22689:
Port 22689
2.本地防火墙放行新端口
CentOS firewalld:
firewall -cmd--add-port=22689/tcp --permanentfirewall -cmd--reload
Ubuntu ufw防火墙:
ufw allow 22689/tcpufw reload
3.重启SSH服务,测试连接
确认新端口能正常登录后,登录云服务商控制台,修改安全组规则:放行自定义SSH端口,彻底删除22端口全网放行规则。
关键提醒:
修改端口后,Xshell、FinalShell等连接工具端口号同步更改;操作过程中不要关闭当前终端,防止配置出错,彻底连不上服务器。
四、开启本地防火墙,仅放行业务必需端口,拒绝全端口裸奔
很多新手图方便,直接关闭服务器自带防火墙,或是不做任何限制,所有端口对外完全开放,等于把主机所有漏洞暴露在公网。
防护核心思路:只开放网站80、443、自定义SSH端口,其余所有端口统一拦截,缩小黑客攻击范围。
CentOS防火墙一键配置
systemctl enable firewalldsystemctl start firewalldfirewall-cmd --set-default-zone=drop --permanentfirewall-cmd --add-port=80/tcp --permanentfirewall-cmd --add-port=443/tcp --permanentfirewall-cmd --add-port=22689/tcp --permanentfirewall-cmd --reload
Ubuntu防火墙一键配置
#默认拦截所有外部入站流量ufw default deny incoming#放行业务端口ufw allow 80/tcpufw allow 443/tcpufw allow 22689/tcp#开启防火墙ufw enable
配置完成后,外部网络无法访问服务器未放行端口,大幅降低被扫描入侵概率。
五、云安全组设置IP白名单,搭建外网第一道防护墙
服务器本地防火墙是内部防护,云平台控制台的安全组,是外网入口第一层拦截,双层防护才能做到万无一失。
新手最常见高危操作:安全组入站规则填写0.0.0.0/0,代表全球任意IP都能访问SSH端口,暴力破解门槛直接归零。
最优安全方案:SSH自定义端口仅放行自己家里、公司的固定公网IP,其他所有IP全部拦截。就算登录密码不慎泄露,陌生IP也无法发起连接。
简单操作步骤:
1.浏览器搜索“本机公网IP”,复制自己当前外网地址;
2.进入ECS/云服务器安全组入站规则,删除全部0.0.0.0/0无限制规则;
3.新增规则:填写自定义SSH端口,授权对象填入你的公网IP/32;
4.80、443端口保留全网开放,保障网站正常对外访问。
安全组+系统防火墙双重限制,能把SSH暴力破解的可能性降到近乎为0。
六、关闭闲置无用服务与端口,减少漏洞暴露面
Linux系统自带大量默认开启的老旧服务,telnet、rpc、未使用FTP等,这类工具存在大量历史安全漏洞,黑客可通过闲置端口植入挖矿脚本。
查看本机所有开放端口
netstat -lntp
执行后能清晰看到当前运行服务和对应端口,不用的服务直接关闭禁用。
一键关闭高危闲置服务命令
#关闭明文传输telnet服务systemctl stop telnet.socketsystemctl disable telnet.socket
#关闭rpc闲置进程systemctl stop rpcbindsystemctl disable rpcbind
如果平时不用FTP上传文件,同步关闭vsftpd服务,避免账号密码明文传输泄露。日常只保留Nginx、MySQL、SSH等业务必须程序运行。
七、安装Fail2ban自动拉黑爆破IP,持续抵御扫描攻击
就算改端口、设强密码,依旧会有黑客持续批量尝试登录服务器。Fail2ban是运维圈公认必备工具,实时监控登录日志,短时间多次输错密码的IP,会自动封禁一段时间,持续阻断恶意扫描。
CentOS安装启动命令
yum install fail2ban -ysystemctl enable fail2bansystemctl start fail2ban
Ubuntu安装启动命令
apt install fail2ban -ysystemctl enable fail2bansystemctl start fail2ban
工具默认规则:同一IP5次密码错误,自动封禁10分钟,有需求可以修改配置文件,延长封禁时长,拦截长期恶意扫描IP。
八、定期更新系统与软件,及时修补高危漏洞
系统内核、SSH、网站服务、数据库会不断爆出安全漏洞,黑客会利用未修复漏洞直接入侵主机。绝大多数小白买完服务器,常年不做系统更新,长期放置等于给黑客留后门。
CentOS一键全量升级
yum update -y
Ubuntu一键全量升级
apt update && apt upgrade -y
建议新服务器完成全部加固后,执行一次完整更新;后续每月定期运行一次升级命令,及时封堵系统底层漏洞。
九、限制数据库外网访问,防止拖库、恶意写入挖矿脚本
搭建网站基本都会用到MySQL数据库,很多新手直接放行3306数据库端口全网访问,搭配简单数据库密码,极易出现数据泄露、黑客写入挖矿脚本的情况。
数据库三点加固方案:
1.修改数据库配置,仅允许本地127.0.0.1地址访问;
2.防火墙、安全组删除3306全网放行规则;
3.不使用数据库root账号运行网站,新建独立业务账号,只分配最低运行权限。
如果偶尔需要本地远程管理数据库,临时在安全组放行本机IP,操作结束立刻删除对应规则,不要长期开放。
十、定期巡检异常进程,第一时间发现挖矿入侵痕迹
挖矿程序特征非常明显:CPU占用长期居高不下、后台存在陌生定时任务、不知名进程持续占用算力。养成定期巡检习惯,可以在入侵初期及时清理,避免长期损耗服务器资源。
查看服务器实时进程
top
查看系统定时任务(黑客植入挖矿最常用渠道)
crontab-lcat /etc/crontab
如果发现不知名高占用进程,记录PID编号强制终止,同时删除对应的定时任务、木马文件。
额外补充加固细节:关闭服务器匿名FTP、匿名文件访问权限,杜绝黑客上传恶意脚本。
总结:
以上10项服务器加固操作,没有任何复杂专业门槛,全部命令复制即可运行,是每一台全新ECS、VPS上线前,必须完成的基础防护流程。
市面上99%的挖矿入侵、SSH暴力破解事故,根源逃不开三点:弱登录密码、默认22端口全网开放、安全组无限制裸奔。只要按照本文步骤修改SSH端口、禁用root远程、防火墙搭配安全组做IP白名单、拦截恶意扫描,就能隔绝绝大多数自动化黑客攻击。
很多新手觉得自己只是搭建个人小站点,没有商业数据,不需要做防护,这个想法一定要摒弃。黑客扫描工具不会区分服务器用途,只要存在薄弱入口,就会批量植入挖矿程序,不仅持续消耗带宽算力产生额外费用,严重时还会因为服务器被用作网络攻击源头,遭到云服务商永久封禁,辛苦搭建的项目全部付诸东流。
建议大家把这篇文章收藏起来,每次新买云服务器,对照10项加固清单逐项核对,全部配置完成之后,再部署网站、小程序、爬虫等业务。基础安全防线筑牢,才能安心使用服务器,彻底告别上线几分钟就被挖矿入侵的糟心事。