我们想要通过公网IP访问部署在云服务器上的Ollama服务,需要注意以下几点:

1. 默认情况下,Ollama服务只监听本地(127.0.0.1)的请求,我们需要将其配置为监听所有网络接口(0.0.0.0)或者云服务器的内网IP。

2. 云服务器的安全组(防火墙)需要开放对应的端口(默认11434)的公网访问。

3. 考虑到安全性,直接暴露服务在公网可能不安全,建议设置身份验证(但Ollama本身不提供身份验证,所以可能需要结合反向代理添加认证,或者通过VPN/SSH隧道访问)。

步骤:

1. 修改Ollama的监听地址 设置环境变量 OLLAMA_HOST 为 0.0.0.0:11434(或者指定一个端口)来让Ollama监听所有网络接口。 例如,在Linux系统中,

可以编辑 ~/.bashrc 或 /etc/systemd/system/ollama.service(如果使用systemd)来设置环境变量。 临时设置(当前终端有效): export OLLAMA_HOST="0.0.0.0:11434"

永久设置: 在用户配置文件(如 ~/.bashrc)中添加上述export命令,

然后执行 source ~/.bashrc。 或者,如果使用systemd服务,

则修改服务文件(通常在/etc/systemd/system/ollama.service)

并添加环境变量设置:

[Service]

Environment="OLLAMA_HOST=0.0.0.0:11434"

然后重启服务:

sudo systemctl daemon-reload

sudo systemctl restart ollama

2. 检查云服务器防火墙 确保云服务器的防火墙(安全组)允许入站流量访问11434端口(或你设置的端口)。具体操作根据云服务商的不同而不同。

3. 验证监听 在服务器上运行:

netstat -tuln | grep 11434

应该能看到类似:

tcp6 0 0 :::11434 :::* LISTEN 4.

测试公网访问 在本地机器上,

使用curl测试:

curl http://<云服务器公网IP>:11434/api/tags

如果返回模型列表,则成功。

5. 安全性考虑(非常重要) 由于Ollama没有内置身份验证,直接暴露在公网意味着任何人都可以访问你的Ollama服务并运行模型,

可能导致: - 未授权访问 - 资源滥用 - 安全风险 因此,强烈建议:

a) 使用反向代理(如Nginx)添加基本身份验证或使用API密钥(通过HTTP Basic Auth或JWT等方式)。

b) 仅允许特定的IP地址访问(通过云防火墙或反向代理的IP白名单)。

c) 或者通过SSH隧道访问(推荐),这样服务不直接暴露在公网。

SSH隧道示例(在本地机器上运行):

ssh -N -L 11434:localhost:11434

user@your-server-ip 这样,

本地访问

localhost:11434就会被转发到云服务器的Ollama服务。

6. 使用Nginx反向代理添加基本认证(可选,但推荐) 安装Nginx,并配置一个代理服务器,

同时设置基本认证。

示例配置

(/etc/nginx/sites-available/ollama):

server { listen 80; server_name your-domain.com;

# 或者公网IP location / { proxy_pass http://localhost:11434; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; #

添加基本认证 auth_basic "Restricted Access"; auth_basic_user_file /etc/nginx/.htpasswd; } } 创建认证文件: sudo sh -c "echo -n 'username:' >> /etc/nginx/.htpasswd" sudo sh -c "openssl passwd -apr1 >> /etc/nginx/.htpasswd" 然后输入密码。 重启Nginx: sudo systemctl restart nginx 然后通过http://your-domain.com访问,需要输入用户名密码。 注意:为了安全,建议使用HTTPS(通过Let's Encrypt免费证书),配置略。

7. 如果云服务器提供商有额外的网络安全组(如阿里云、AWS、Azure等),请确保在控制台开放端口。 总结:配置Ollama监听0.0.0.0并开放端口后,即可通过公网访问,但务必注意安全风险,采取适当的安全措施。

Logo

免费领 150 小时云算力,进群参与显卡、AI PC 幸运抽奖

更多推荐