云服务器初始化防火墙需协同配置云平台安全组与系统内置防火墙:先在控制台设置安全组入站规则(如ssh限指定ip、http/https开放),再启用ufw或firewalld加固本地防护,最后通过telnet、curl及服务重启验证连通性与规则生效。

先配安全组:守住第一道门
这是最关键的一步,必须在 SSH 登录后立即完成,否则后续任何系统级防火墙配置都可能让你失联。
- 登录云厂商控制台(阿里云/腾讯云/AWS等),找到你的实例 → 进入“安全组”页面
- 新建或编辑一个安全组,重点配置入站规则(Inbound):
-
SSH 端口(如 22 或你改过的自定义端口):协议选 TCP,授权对象填你自己的公网 IP(例如
203.123.45.67/32),绝不要写0.0.0.0/0 - HTTP/HTTPS(80/443):如果部署网站,授权对象可设为
0.0.0.0/0(面向所有用户),但仅限这两个端口 - 其他端口(如数据库 3306、Redis 6379):一律禁止对外暴露,如需访问,应通过跳板机或内网互通
- 出站规则(Outbound)通常保持默认“全部允许”,无需额外操作
- 保存后,将该安全组绑定到你的云服务器实例
再启系统防火墙:加固第二道防线
系统防火墙不替代安全组,而是补充——比如防止同网段其他云主机横向扫描、拦截异常本地进程外连等。推荐根据系统类型选择:
-
Ubuntu/Debian 系统 → 用 UFW:
先确保 SSH 已被安全组放行,再执行:sudo ufw default deny incomingsudo ufw default allow outgoingsudo ufw allow OpenSSH(或sudo ufw allow 2222/tcp,与你实际 SSH 端口一致)sudo ufw allow 80,443/tcpsudo ufw enable -
CentOS/RHEL/Rocky/AlmaLinux → 用 firewalld:
sudo systemctl enable --now firewalldsudo firewall-cmd --permanent --add-service=sshsudo firewall-cmd --permanent --add-service=httpsudo firewall-cmd --permanent --add-service=httpssudo firewall-cmd --reload - 不建议用 iptables 原生命令初始化:规则易错、无区域概念、重启易丢失,适合调试,不适合首配
验证与收尾:别跳过这三步
配置完不能算完,必须确认生效且不影响业务。
- 用另一台机器执行
telnet your-server-ip 22和curl -I http://your-server-ip,测试连通性 - 在服务器上运行
sudo ufw status verbose或sudo firewall-cmd --list-all,核对规则是否按预期加载 - 重启一次 SSH 服务(
sudo systemctl restart ssh)并重新连接,确认会话未中断——这是检验“没把自己锁在外面”的最直接方式











