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 本章知识体系

下面这张图帮你理清整个环境搭建的逻辑链条:

Linux基础环境搭建知识体系 Ubuntu Server 22.04安装 SSH远程配置 基础网络设置 系统更新与安全加固 • 启动盘制作 • 安装选项 • 用户创建 • 端口修改 • 密钥登录 • 安全配置 • 静态IP • DNS配置 • 连通性测试 • 系统更新 • UFW防火墙 • Fail2Ban

你看,整个流程是线性的:先装系统,再配SSH和网络,最后做安全加固。每一步都踩稳了,后面CUDA安装才能顺风顺水。

总结:这一章我们搞定了三件事——装好系统、能远程连上、网络通了且安全。接下来就可以放心大胆地装驱动和CUDA了。

可可精品资料库