走啊走
加油

轻量应用服务器怎么配置安全组和防火墙规则?

服务器价格表

在使用轻量应用服务器(如腾讯云轻量应用服务器、阿里云轻量应用服务器等)时,配置安全组和防火墙规则是保障服务器安全的重要步骤。下面以腾讯云轻量应用服务器为例,介绍如何配置安全组和系统防火墙(如 firewalldufw),其他平台原理类似。


一、配置安全组(云端控制台)

安全组是云服务商提供的虚拟防火墙,用于控制进出服务器的网络流量。

步骤:

  1. 登录云控制台

    • 登录腾讯云或阿里云控制台,进入「轻量应用服务器」管理页面。
  2. 找到目标实例

    • 找到你要配置的轻量服务器实例,点击进入详情页。
  3. 进入安全组设置

    • 在实例详情中,找到「安全组」或「防火墙」选项。
    • 腾讯云轻量服务器默认使用“防火墙”代替传统安全组,但功能类似。
  4. 添加防火墙规则(入站规则)
    常见端口配置示例:

    协议 端口范围 源IP 描述
    TCP 22 0.0.0.0/0 或你的IP SSH远程登录(建议限制IP)
    TCP 80 0.0.0.0/0 HTTP服务
    TCP 443 0.0.0.0/0 HTTPS服务
    TCP 3306 你的办公IP MySQL数据库(不建议对公网开放)
    ICMP 全部 可选 允许ping测试

    安全建议:

    • 不要随意开放 0.0.0.0/0 到高危端口(如22、3306、redis等)。
    • 尽量限制源IP为自己的公网IP。
    • 关闭不必要的端口。
  5. 保存规则


二、配置系统防火墙(服务器内部)

即使配置了云端安全组,仍建议在操作系统层面启用防火墙,形成双重保护。

方式1:CentOS/RHEL 使用 firewalld

# 查看状态
sudo firewall-cmd --state

# 启动并设置开机自启
sudo systemctl start firewalld
sudo systemctl enable firewalld

# 开放常用端口
sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --permanent --add-port=443/tcp
sudo firewall-cmd --permanent --add-port=22/tcp

# 如果只允许特定IP访问SSH
sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="你的IP" port protocol="tcp" port="22" accept'

# 重新加载配置
sudo firewall-cmd --reload

# 查看已开放端口
sudo firewall-cmd --list-all

方式2:Ubuntu 使用 ufw(Uncomplicated Firewall)

# 安装 ufw(通常已预装)
sudo apt update && sudo apt install ufw

# 设置默认策略
sudo ufw default deny incoming
sudo ufw default allow outgoing

# 允许 SSH、HTTP、HTTPS
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# 更安全的方式:仅允许特定IP访问SSH
sudo ufw allow from 你的IP to any port 22 proto tcp

# 启用防火墙
sudo ufw enable

# 查看状态
sudo ufw status verbose

三、最佳实践建议

项目 推荐做法
SSH端口 修改默认22端口,或使用密钥登录,禁用密码登录
数据库 不暴露在公网,使用内网连接或SSH隧道
Web服务 仅开放80/443,配合Nginx/Apache做反向X_X
定期检查 使用 netstat -tulnss -tuln 查看监听端口
更新系统 定期更新系统和软件包补丁

四、常见问题排查

  • 无法访问网站?

    • 检查安全组是否开放80/443。
    • 检查Web服务是否运行(systemctl status nginx)。
    • 检查本地防火墙是否拦截。
  • SSH连接超时?

    • 检查安全组是否允许22端口(或你修改后的端口)。
    • 检查服务器是否运行SSH服务:systemctl status sshd
    • 检查防火墙是否屏蔽了SSH。

总结

安全组(云平台) + 系统防火墙(OS层) = 双重防护

  1. 在云控制台配置最小必要的入站规则。
  2. 在服务器上启用 firewalldufw,限制违规访问。
  3. 遵循“最小权限原则”,只开放必需的服务端口。

如有具体场景(如部署WordPress、Node.js、MySQL等),可进一步细化规则配置。欢迎补充你的使用环境,我可以提供更具体的配置示例。