3、Linux服务器基础配置:Ubuntu Server 22.04安装、SSH远程连接、基础网络配置、防火墙规则设置
好,咱们进入正题。这一章讲的是服务器的基础配置,说白了就是给Ollama搭个安稳的家。我见过太多人一上来就急着装软件,结果网络不通、防火墙没开,折腾半天才发现是基础没打好。嗯,咱们一步步来。
本章核心目标:让一台裸机Ubuntu Server 22.04变成一台可以远程管理、网络通畅、安全可靠的Linux服务器。
3.1 系统安装:从ISO到跑起来
我个人习惯用Ubuntu Server 22.04 LTS,稳定、社区活跃、坑少。你想想看,Ollama这种AI推理服务,最怕的就是系统隔三差五出幺蛾子,LTS版本刚好能给你省心。
第一步:下载镜像
去官网或者国内镜像站下载ubuntu-22.04.5-live-server-amd64.iso。我建议用清华或者中科大的镜像,速度快得多。
第二步:制作启动盘
用Rufus(Windows)或者dd命令(Linux/Mac)把ISO写入U盘。这里有个坑——我曾经用某个工具制作启动盘,结果安装到一半报错,后来发现是写入模式不对。记得选「DD镜像模式」。
我的小技巧:制作完启动盘后,先在一台测试机上验证一下能不能正常引导,别直接上生产服务器。
第三步:安装过程要点
启动后选择「Try or Install Ubuntu Server」,然后跟着向导走。有几个关键点我提醒一下:
- 语言:选English,别选中文。终端里中文支持容易出乱码,咱们运维人员还是习惯英文环境。
- 键盘布局:默认是English (US),如果你用其他布局记得改。
- 网络配置:这里可以先跳过,后面我们会手动配置静态IP。
- 磁盘分区:我建议用LVM逻辑卷管理,方便以后扩容。至少分三个区:/boot 1GB,swap 4GB(如果内存够大可以不要),剩下的全给根分区。
- 用户名和密码:创建一个非root用户,比如叫ollama。记住这个密码,后面SSH要用。
- 安装OpenSSH server:这一步一定要勾选!不然装完你只能蹲在服务器前操作。
安装完成后重启,拔掉U盘。看到登录提示符,说明系统装好了。
3.2 SSH远程连接:告别键盘显示器
服务器放在机房或者云上,你不可能每次都跑过去插显示器。SSH就是你的远程遥控器。
检查SSH服务状态
登录到服务器,先确认SSH服务在运行:
sudo systemctl status ssh
如果没启动,手动启动并设置开机自启:
sudo systemctl enable --now ssh
从客户端连接
在你自己电脑的终端里:
ssh ollama@<服务器IP地址>
第一次连接会提示确认主机指纹,输入yes就行。然后输入密码,搞定。
注意:默认端口是22,生产环境建议改掉。我习惯改成2222或者10022,能挡掉不少扫描脚本。
配置密钥认证(推荐)
密码登录每次都要输密码,而且容易被暴力破解。密钥认证更安全也更方便。
在客户端生成密钥对:
ssh-keygen -t ed25519 -C "ollama-server"
然后把公钥传到服务器:
ssh-copy-id ollama@<服务器IP>
之后登录就不用密码了。我曾经帮一个客户配置服务器,他之前一直用密码登录,结果某天发现日志里有几万条失败的登录尝试...嗯,从那以后我都是强制密钥认证。
安全加固小技巧
编辑SSH配置文件:
sudo vim /etc/ssh/sshd_config
建议修改以下几项:
| 配置项 | 推荐值 | 说明 |
|---|---|---|
| Port | 2222 | 修改默认端口 |
| PermitRootLogin | no | 禁止root直接登录 |
| PasswordAuthentication | no | 禁用密码登录 |
| PubkeyAuthentication | yes | 启用密钥认证 |
改完后重启SSH服务:
sudo systemctl restart ssh
提醒:修改端口后,连接时要加 -p 参数:ssh -p 2222 ollama@服务器IP
3.3 基础网络配置:让服务器找到路
服务器需要固定的IP地址,不然重启后IP变了,你连SSH都找不到它。Ubuntu 22.04用netplan管理网络,配置文件在/etc/netplan/目录下。
查看当前网络状态
ip addr show
ip route show
记下你的网卡名称,一般是ens33、eth0或者enp0s3之类的。
配置静态IP
编辑netplan配置文件:
sudo vim /etc/netplan/00-installer-config.yaml
示例配置(根据你的网络环境修改):
network:
version: 2
ethernets:
ens33:
dhcp4: no
addresses:
- 192.168.1.100/24
gateway4: 192.168.1.1
nameservers:
addresses:
- 8.8.8.8
- 114.114.114.114
应用配置:
sudo netplan apply
验证一下:
ping -c 4 8.8.8.8
ping -c 4 baidu.com
如果外网能通,说明网络配置没问题。我记得有一次配置完发现内网能通但外网不行,排查了半天发现是网关地址写错了...这种低级错误,谁都会犯,关键是学会排查思路。
DNS配置建议:我习惯用两个DNS,一个国内一个国外。114.114.114.114是国内电信的,8.8.8.8是谷歌的,这样不管访问国内还是国外资源都能解析。
3.4 防火墙规则设置:把门看好
服务器暴露在公网上,就像你家大门敞开着。防火墙就是那把锁。Ubuntu自带的ufw(Uncomplicated Firewall)用起来很简单。
启用ufw
sudo ufw enable
注意:启用前先放行SSH端口,不然你会把自己锁在外面!
血的教训:我曾经在远程服务器上执行ufw enable,结果忘了放行SSH端口,瞬间断连...最后只能让机房的人帮忙重启。所以,先放行再启用!
设置基本规则
# 放行SSH(如果你改了端口,记得改这里)
sudo ufw allow 2222/tcp
# 放行HTTP和HTTPS(如果后面要部署Web服务)
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
# 放行Ollama默认端口(11434)
sudo ufw allow 11434/tcp
# 查看当前规则
sudo ufw status verbose
默认策略
ufw默认是拒绝入站、允许出站。这很合理——别人不能主动连你,但你可以主动连别人。
高级规则示例
如果你只想让特定IP访问Ollama:
sudo ufw allow from 192.168.1.0/24 to any port 11434
这样只有内网192.168.1.x网段的机器才能访问Ollama服务,外网直接挡掉。
规则持久化
ufw的规则默认就是持久化的,重启后还在。你可以用这个命令确认:
sudo ufw show added
我的习惯:每加一条规则,都先测试一下能不能正常访问。比如放行11434端口后,用另一台机器telnet一下:telnet 服务器IP 11434。通则没问题,不通就检查规则。
好了,到这里你的Ubuntu Server 22.04已经具备了基本的生产力:系统装好了、SSH能远程连了、网络配置好了、防火墙也立起来了。接下来就可以安心装Ollama了。
公众号:蓝海资料掘金营,微信deep3321