Qwen1.5-1.8B GPTQ企业级部署指南:内网穿透与安全访问配置

张开发
2026/4/5 19:21:13 15 分钟阅读

分享文章

Qwen1.5-1.8B GPTQ企业级部署指南:内网穿透与安全访问配置
Qwen1.5-1.8B GPTQ企业级部署指南内网穿透与安全访问配置在星图GPU平台上一键部署好Qwen1.5-1.8B GPTQ模型后很多企业开发者会遇到一个现实问题模型服务跑在内网服务器上怎么让外网的同事、客户或者自己的其他应用安全、稳定地访问它直接暴露端口风险太大但业务又确实需要远程调用。这篇文章我就结合自己过去在类似场景下的折腾经验跟你聊聊怎么给这个部署在内网的AI模型服务“开一扇安全的门”。我们不讲复杂的网络理论就聚焦于几个经过验证的、能实际跑通的方案从简单的防火墙配置到更灵活的反向代理再到解决核心痛点的内网穿透一步步构建起一个兼顾性能与安全的企业级访问架构。1. 理解挑战为什么不能直接暴露服务你可能觉得部署好了拿到一个内网IP和端口比如192.168.1.100:7860直接在公司路由器上做个端口映射不就行了理论上可以但对企业环境来说这几乎是“裸奔”会带来几个大问题安全风险极高将服务的端口直接暴露在公网相当于向整个互联网开放了一个入口。即使服务本身有认证其底层框架如Gradio、FastAPI也可能存在未知漏洞容易成为攻击目标。缺乏访问控制谁都可以来连无法区分内部员工、合作伙伴还是恶意爬虫。IP地址不稳定大多数企业或家庭宽带的公网IP是动态的可能会变化导致配置好的访问地址失效。不符合合规要求很多行业如金融、医疗对数据安全和访问日志有严格规定直接暴露服务很难满足审计要求。所以我们的目标很明确让授权的用户能从外网访问同时把服务本身藏在内网前面加上一层或多层“保安”。2. 基础防护配置服务器防火墙这是第一道也是最基础的防线。即便服务在内网也应该遵循最小权限原则只开放必要的端口。假设你的Qwen1.5-1.8B GPTQ模型服务通过Gradio启动在7860端口。在部署模型的Linux服务器上我们可以用ufwUncomplicated Firewall来快速设置。# 1. 首先允许SSH端口确保自己不会把自己关在外面 sudo ufw allow 22/tcp # 2. 默认情况下拒绝所有入站连接允许所有出站连接 sudo ufw default deny incoming sudo ufw default allow outgoing # 3. 如果你只需要同一内网的其他机器访问该服务可以只允许内网网段 # 假设你的内网是 192.168.1.0/24 sudo ufw allow from 192.168.1.0/24 to any port 7860 proto tcp # 或者在测试阶段你可以临时允许所有IP访问生产环境不推荐 # sudo ufw allow 7860/tcp # 4. 启用防火墙 sudo ufw enable # 查看防火墙状态和规则 sudo ufw status verbose关键点这一步确保了即使服务进程在运行来自非授权网络比如互联网的流量在服务器层面就被拒绝了。但这只解决了服务器自身的安全要对外提供服务还需要接下来的步骤。3. 进阶网关使用Nginx作为反向代理反向代理像是公司的前台接待。外部的访问请求先到达它Nginx由它根据规则转发给内网真正的模型服务Gradio。这样做的好处太多了隐藏后端用户只知道Nginx的地址和端口不知道后端服务的真实IP和端口。负载均衡如果你部署了多个模型服务实例Nginx可以把流量分发给它们。SSL/TLS终结在Nginx上配置HTTPS证书实现加密通信后端服务可以继续用HTTP简化配置。访问控制与日志方便地配置IP黑白名单、限流、并记录详细的访问日志。3.1 安装与基础配置首先在服务器上安装Nginx。# Ubuntu/Debian sudo apt update sudo apt install nginx -y # CentOS/RHEL sudo yum install epel-release -y sudo yum install nginx -y安装后创建一个新的配置文件来代理我们的模型服务。假设我们想让用户通过https://ai.your-company.com来访问。sudo vim /etc/nginx/conf.d/qwen_proxy.conf将以下配置写入文件。这里我们假设模型服务运行在本机的http://127.0.0.1:7860你已有一个域名ai.your-company.com并解析到了这台服务器的公网IP注意此时服务端口仍需通过其他方式暴露给Nginx见第4节。server { listen 80; server_name ai.your-company.com; # 你的域名 # 建议将所有HTTP请求重定向到HTTPS更安全 return 301 https://$server_name$request_uri; } server { listen 443 ssl http2; server_name ai.your-company.com; # SSL证书路径你需要申请并放置证书文件 ssl_certificate /path/to/your/certificate.crt; ssl_certificate_key /path/to/your/private.key; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers HIGH:!aNULL:!MD5; # 反向代理核心配置 location / { # 设置一些超时参数避免长连接请求被中断 proxy_read_timeout 300s; proxy_connect_timeout 75s; proxy_send_timeout 300s; # 将请求转发给后端的Gradio服务 proxy_pass http://127.0.0.1:7860; # 传递重要的请求头信息 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection upgrade; # 这对Gradio的WebSocket连接很重要 # 禁用缓冲对于AI模型流式输出特别有用 proxy_buffering off; } # 可以添加访问日志 access_log /var/log/nginx/qwen_access.log; error_log /var/log/nginx/qwen_error.log; }3.2 测试与启用配置# 检查Nginx配置语法是否正确 sudo nginx -t # 如果显示“syntax is ok”则重新加载Nginx使配置生效 sudo systemctl reload nginx现在Nginx已经配置好了。但是如果服务器在公司内网公网用户仍然无法访问到ai.your-company.com对应的服务器IP。这就需要“内网穿透”来打通最后一公里。4. 核心解决方案实现安全的内网穿透“内网穿透”是解决无公网IP或服务位于多层NAT后访问问题的关键技术。其原理是在公网有一台具有固定IP的服务器称为“服务端”或“中转服务器”内网的服务称为“客户端”主动连接到它建立一个隧道。公网用户访问服务端的某个端口流量就会通过这个隧道转发到内网服务。这里我以frp这个开源工具为例因为它配置灵活、性能稳定。你需要准备一台公网服务器VPS作为服务端你的内网模型服务器作为客户端。4.1 公网服务器端配置下载frp在公网服务器上从GitHub Release页面下载对应架构的frp。编辑服务端配置(frps.ini)# frps.ini [common] bind_port 7000 # frp服务端监听的端口用于与客户端建立控制连接 # 以下认证和Dashboard配置是为了增强安全性建议设置 authentication_method token token your_strong_password_here # 设置一个强密码客户端需要匹配 # 启用Web管理界面可选方便查看状态 dashboard_port 7500 dashboard_user admin dashboard_pwd admin_dashboard_password启动frp服务端./frps -c ./frps.ini建议使用systemd或supervisor来守护进程保证其持续运行。4.2 内网模型服务器端配置同样下载frp客户端。编辑客户端配置(frpc.ini)。这里我们配置两种常见的穿透方式方式一TCP隧道简单直接将公网服务器7001端口的流量直接转发到内网模型的7860端口。# frpc.ini [common] server_addr your_vps_public_ip # 你的公网服务器IP server_port 7000 # 对应frps的bind_port token your_strong_password_here # 必须与frps.ini中设置的一致 [qwen-gradio-tcp] type tcp local_ip 127.0.0.1 local_port 7860 # 本地Gradio服务端口 remote_port 7001 # 公网服务器上暴露的端口配置好后用户访问http://your_vps_public_ip:7001就能连接到内网的模型服务。此时可以将这个your_vps_public_ip:7001配置为前面Nginx配置中的proxy_pass目标从而结合HTTPS和反向代理。方式二HTTP/HTTPS隧道更推荐frp服务端直接扮演Web服务器绑定域名省去再配一层Nginx的麻烦。首先在公网服务器的frps.ini中增加# frps.ini 追加 vhost_http_port 8080 # 用于HTTP域名的监听端口 vhost_https_port 8443 # 用于HTTPS域名的监听端口然后在内网的frpc.ini中配置# frpc.ini [common] server_addr your_vps_public_ip server_port 7000 token your_strong_password_here [qwen-gradio-web] type http # 或 https local_port 7860 custom_domains ai.your-company.com # 你的域名 # 如果你希望使用HTTPS且证书在公网服务器上type用https # 并将域名解析到公网服务器IP这种方式下用户直接访问https://ai.your-company.com:8443或配置Nginx将80/443反向代理到frps的8080/8443端口实现标准端口访问流量路径是用户 - 公网服务器(frps) - 隧道 - 内网模型。4.3 启动与测试在内网服务器启动frp客户端./frpc -c ./frpc.ini查看frp服务端日志和Dashboard (http://your_vps_ip:7500)确认客户端连接成功和隧道建立。通过配置好的域名或IP:PORT访问测试。安全加固建议使用强Token务必设置并保管好token。限制端口在公网服务器防火墙只开放必要的端口如7000, 7500, 8080, 8443。使用HTTPS尽可能为域名配置SSL证书frp支持将HTTPS流量解密后以HTTP形式转发给内网服务。设置访问控制在frp或前端的Nginx中可以配置IP白名单只允许公司IP或VPN IP访问。5. 总结与选择建议走完这三步我们实际上构建了一个多层次的安全访问体系主机防火墙守护服务器自身过滤非法网络请求。反向代理作为统一的流量入口提供负载均衡、SSL卸载、访问日志和精细控制的能力。内网穿透解决网络可达性问题让内网服务能够安全地“主动出站”对外提供服务。对于企业部署Qwen1.5-1.8B GPTQ这类AI服务我的建议是测试与开发环境如果只是小范围临时测试可以只用防火墙 frp TCP隧道快速打通。预发布与生产环境强烈推荐防火墙 Nginx frp HTTP/HTTPS隧道的组合。Nginx负责HTTPS、域名绑定和初步过滤frp解决网络穿透。这样既能享受Nginx的强大功能又能保持后端服务在内网的安全。高阶安全场景在Nginx之前可以再引入企业级防火墙、WAFWeb应用防火墙或者要求用户先接入公司VPN再从内网访问服务地址实现零暴露。最后别忘了监控和日志。检查Nginx的access.log和error.log关注frp服务端的连接状态。任何安全策略都不是一劳永逸的结合业务流量和威胁情报适时调整规则才是可持续的运维之道。这套组合拳打下来你的Qwen1.5-1.8B GPTQ模型服务就能在深藏内网的同时为授权用户提供稳定、安全、高效的远程访问能力了。获取更多AI镜像想探索更多AI镜像和应用场景访问 CSDN星图镜像广场提供丰富的预置镜像覆盖大模型推理、图像生成、视频生成、模型微调等多个领域支持一键部署。

更多文章