3、Linux基础环境:Ubuntu Server 22.04安装、SSH远程配置、基础网络设置、系统更新与安全加固
说实话,很多搞AI的同学一上来就急着装CUDA、配PyTorch,结果系统底层一堆坑。我见过太多人因为网络没配好、SSH连不上、系统源没换,折腾一整天。磨刀不误砍柴工,咱们先把地基打牢。
核心目标:搭建一个稳定、安全、可远程操作的Ubuntu Server 22.04环境,为后续GPU驱动和CUDA安装铺平道路。
3.1 安装Ubuntu Server 22.04 LTS
我个人习惯用LTS版本,稳定压倒一切。22.04支持到2027年,够你跑好几个大模型项目了。
3.1.1 下载与制作启动盘
- 去官网下载
ubuntu-22.04.5-live-server-amd64.iso - 用Rufus(Windows)或
dd命令(Linux/Mac)写入U盘 - 注意:Server版没有图形界面,别下成Desktop版了
避坑指南:我曾经用了一个劣质U盘,安装到一半报I/O错误,换了闪迪就没事了。启动盘制作工具推荐Ventoy,一个U盘可以放多个ISO,省事。
3.1.2 安装过程中的关键选项
| 步骤 | 我的建议 |
|---|---|
| 语言选择 | 选English,避免终端乱码问题 |
| 键盘布局 | 选English (US),除非你用欧洲键盘 |
| 网络配置 | 先配静态IP,后面会细说 |
| 磁盘分区 | 选"Use Entire Disk",新手别折腾手动分区 |
| Profile设置 | 服务器名字别乱起,比如 ai-server-01 |
| SSH安装 | 勾选"Install OpenSSH server",省得后面再装 |
嗯,这里要注意:安装过程中会让你创建用户。这个用户就是你的日常管理员账号,别用root直接干活。
3.2 SSH远程配置
服务器装好了,你总不可能天天蹲机房吧?SSH就是你的远程遥控器。
3.2.1 基础SSH配置
安装完系统后,SSH服务默认是启动的。但默认配置太危险,咱们得加固一下。
# 编辑SSH配置文件
sudo vim /etc/ssh/sshd_config
# 我常用的安全配置:
Port 2222 # 改掉默认22端口,防扫描
PermitRootLogin no # 禁止root直接登录
PasswordAuthentication no # 关闭密码登录,只用密钥
PubkeyAuthentication yes # 开启密钥认证
AllowUsers yourusername # 只允许特定用户登录
重要:改端口前,先确保防火墙放行了新端口。我曾经手快改了端口忘了开防火墙,结果把自己锁在外面,只能去机房接显示器…
3.2.2 配置SSH密钥登录
密码登录说白了就是靶子,密钥登录才安全。
# 在本地机器生成密钥对
ssh-keygen -t ed25519 -C "your_email@example.com"
# 把公钥传到服务器
ssh-copy-id -p 2222 yourusername@server_ip
# 测试登录
ssh -p 2222 yourusername@server_ip
为什么用ed25519?它比RSA快,而且更安全。我所有服务器现在都用这个。
3.3 基础网络设置
AI训练经常要下载数据集、拉Docker镜像,网络不稳等于白干。
3.3.1 配置静态IP
Ubuntu 22.04用netplan管理网络,配置文件在 /etc/netplan/ 下。
# 查看网卡名称
ip a
# 编辑netplan配置
sudo vim /etc/netplan/00-installer-config.yaml
# 示例配置(根据你的网络环境修改)
network:
version: 2
ethernets:
enp3s0:
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
个人经验:DNS最好配两个,一个国内一个国外。114.114.114.114解析国内网站快,8.8.8.8用来下GitHub和Docker Hub的东西。
3.3.2 测试网络连通性
# 测试网关
ping -c 4 192.168.1.1
# 测试外网
ping -c 4 baidu.com
# 测试DNS解析
nslookup github.com
如果ping不通外网,八成是网关或DNS配错了。你想想看,网络都不通,后面怎么下CUDA?
3.4 系统更新与安全加固
新装的系统就像毛坯房,得先刷一遍墙、装个防盗门。
3.4.1 系统更新
# 更新软件源
sudo apt update
# 升级所有软件包
sudo apt upgrade -y
# 升级内核(可选)
sudo apt dist-upgrade -y
# 清理无用包
sudo apt autoremove -y
我建议每周跑一次更新。别偷懒,很多安全漏洞就是通过系统更新修复的。
3.4.2 安全加固清单
- 防火墙配置:只开放必要端口
sudo ufw enable
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 2222/tcp # SSH端口
sudo ufw allow 80/tcp # HTTP(如果需要)
sudo ufw allow 443/tcp # HTTPS(如果需要)
sudo ufw status verbose
- Fail2Ban防暴力破解
sudo apt install fail2ban -y
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
# 配置SSH保护
sudo vim /etc/fail2ban/jail.local
[sshd]
enabled = true
port = 2222
maxretry = 3
bantime = 3600
注意:Fail2Ban的端口要跟你改过的SSH端口一致。我见过有人配了默认22,结果改了端口后Fail2Ban根本没生效。
- 自动安全更新
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure --priority=low unattended-upgrades
说白了,安全加固就是给服务器穿上防弹衣。你不想半夜被报警短信吵醒吧?
3.5 本章知识体系
下面这张图帮你理清整个环境搭建的逻辑链条:
你看,整个流程是线性的:先装系统,再配SSH和网络,最后做安全加固。每一步都踩稳了,后面CUDA安装才能顺风顺水。
总结:这一章我们搞定了三件事——装好系统、能远程连上、网络通了且安全。接下来就可以放心大胆地装驱动和CUDA了。