Azure Ubuntu虚拟机部署Ollama后API远程连接失败求助
解决Azure Ubuntu虚拟机上Ollama API外部连接被拒绝的问题
1. 修改Ollama监听地址(核心问题)
Ollama默认仅绑定localhost(127.0.0.1),外部机器无法访问。需要让它监听所有网卡的IP:
临时生效(重启后失效)
在虚拟机终端执行:
OLLAMA_HOST=0.0.0.0:11434 ollama serve
如果需要后台运行,可使用nohup:
nohup OLLAMA_HOST=0.0.0.0:11434 ollama serve &
永久生效(systemd管理)
如果Ollama通过systemd启动,修改服务配置实现永久生效:
- 编辑服务文件:
sudo nano /etc/systemd/system/ollama.service
- 在
[Service]段落添加环境变量:
Environment="OLLAMA_HOST=0.0.0.0:11434"
- 重新加载配置并重启服务:
sudo systemctl daemon-reload sudo systemctl restart ollama
2. 检查Ubuntu本地防火墙(ufw)
即使Azure配置了入站规则,Ubuntu自带的ufw可能拦截11434端口:
- 查看ufw状态:
sudo ufw status
- 若ufw处于激活状态,添加允许规则:
sudo ufw allow 11434/tcp sudo ufw reload
3. 验证Azure入站规则配置
确认Azure网络安全组(NSG)的入站规则满足以下条件:
- 源地址:允许你的客户端IP(测试阶段可暂时设为
0.0.0.0/0,后续再缩小范围) - 端口范围:
11434 - 协议:
TCP - 优先级:确保该规则优先级高于其他拒绝类规则
4. 关于认证问题
Ollama默认没有内置认证机制,当前连接被拒绝的问题和密码/认证无关。如果需要为API添加认证,可通过反向代理(如Nginx)实现Basic Auth或其他认证方式,但这属于后续安全加固步骤,不影响当前连通性问题。
内容的提问来源于stack exchange,提问作者Sakrine
相关产品推荐
相关产品推荐

