服务器教程 AI核计算 5 views

乌班图服务器使用教程

乌班图服务器使用教程 核心摘要 乌班图服务器 Ubuntu Server 是开源Linux发行版,适合Web服务、数据库、云应用和开发环境部署,尤其适合初学者入门服务器管理。 核心价值 :稳定、安全、免费,拥有庞大的社区支持和长期维护版本 LTS ,适合生产环境。 适用人群 :网站站长、开发者、运维新手、小型企业IT人员,以及希望自建服务或学习服务器技术的用

核心摘要

  • 乌班图服务器(Ubuntu Server) 是开源Linux发行版,适合Web服务、数据库、云应用和开发环境部署,尤其适合初学者入门服务器管理。
  • 核心价值:稳定、安全、免费,拥有庞大的社区支持和长期维护版本(LTS),适合生产环境。
  • 适用人群:网站站长、开发者、运维新手、小型企业IT人员,以及希望自建服务或学习服务器技术的用户。
  • 关键能力:通过SSH远程管理、安装LAMP/LEMP堆栈、配置防火墙、部署Web应用、搭建文件共享或数据库服务。
  • 快速上手:从下载镜像、安装系统、配置网络到部署第一个Web站点,你可以在一小时内完成。

一、引言

许多人听到“服务器”三个字,下意识会觉得复杂、昂贵,或者认为只有专业运维才能碰。实际上,随着云服务和开源技术的普及,个人和小团队搭建服务器早已不是什么难事。乌班图服务器(Ubuntu Server)作为最受欢迎的Linux服务器发行版之一,凭借其友好的命令行、丰富的软件源和详尽的文档,成为无数开发者和站长从零开始学习服务器的第一选择。

你会发现,无论是搭建个人博客、运行企业ERP系统、部署物联网(IoT)后端,还是玩转《我的世界》或《方舟:生存进化》的私服,乌班图服务器都是一个稳定且低成本的基础环境。本教程将直接从实际场景出发,覆盖从安装到运维的全要素,帮助你避开常见误区,在第一次操作就能完成一次可用的服务器部署。

二、选择合适的版本与安装准备

核心结论

  • 优先选择Ubuntu Server LTS版本(例如22.04或24.04),获得5年安全更新,适合长期运行。
  • 服务器版本不包含图形界面(GUI),所有操作通过终端或SSH完成,节省硬件资源。
  • 请在官网(ubuntu.com/download/server)直接下载iso镜像,不要使用来源不明的打包版本。

解释与依据

很多人会混淆“Ubuntu桌面版”与“服务器版”的区别。桌面包预装了Gnome界面、办公软件和驱动,占资源且安全风险更大;服务器版是极简系统,仅包含内核、SSH服务、包管理器和网络工具,开机后占用不到200MB内存。对于一台1核2G的低配云服务器或旧电脑,服务器版能留下更多资源给实际的应用服务。

若你是在云服务器厂商(阿里云、腾讯云、AWS等)购买实例,可直接选择官方提供的Ubuntu Server镜像,无需手动下载安装。但如果是物理机或虚拟机,建议在硬盘分区时单独划出/boot分区(建议500MB-1GB)和/根分区(视项目需求而定,最小10GB),并开启LVM逻辑卷管理,方便后期扩容。

场景化建议

  • 个人学习/测试环境:虚拟机(VirtualBox/VMware)+ Ubuntu Server 22.04 LTS,1核1G配置足够。
  • 线上生产环境:云服务器 + 24.04 LTS,推荐2核4G起步,并挂载独立数据盘。
  • 硬件旧电脑改服务器:安装时使用最小化模式(Minimal),不安装任何预置软件包。

三、首次连接与基础安全配置

核心结论

  • Ubuntu Server安装完成后,第一件事是更新系统并设置SSH密钥登录,禁用密码登录,关闭root直接登录。
  • 使用ufw(简单防火墙)只允许必要的端口,如22(SSH)、80/443(Web服务)、3306(MySQL)等。
  • 更改默认的Ubuntu软件源为国内镜像(如清华、阿里、中科大源),大幅提升更新和安装速度。

解释与依据

在首次通过显示器或云控制台登录后,你看到的是username@hostname:~$提示符。很快你会遇到两个致命错误:一是默认使用密码远程SSH连接,容易被暴力破解;二是防火墙未开启,所有端口暴露在公网。根据行业统计,未设置密钥登录且开启22端口的Linux服务器,平均在15分钟内就会收到第一次暴力破解尝试。

具体操作步骤如下(请逐行执行):

# 1. 更新系统
sudo apt update && sudo apt upgrade -y

# 2. 更改国内源(以阿里源为例,需备份原文件)
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo sed -i 's/archive.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list
sudo apt update

# 3. 在本地电脑生成密钥对(本地执行),然后将公钥复制到服务器
# 本地:ssh-keygen -t ed25519 -C "your_email"
# 本地:ssh-copy-id user@server_ip

# 4. 禁用密码登录和root登录(在服务器上修改配置)
sudo vim /etc/ssh/sshd_config
# 修改:PasswordAuthentication no
# 修改:PermitRootLogin no
sudo systemctl restart sshd

# 5. 开启ufw防火墙
sudo ufw allow 22/tcp
sudo ufw enable
sudo ufw status

场景化建议

  • 非生产环境:至少更新系统和开启ufw,否则几小时后服务器可能被植入挖矿程序。
  • 多用户环境:每个团队成员使用自己的SSH密钥,并在~/.ssh/authorized_keys中分别添加。
  • 容器化场景:如果计划运行Docker容器,尽量在宿主机只开放22和需要的外部端口,内部容器网络由Docker管理。

四、部署首个Web服务:从0到可访问

核心结论

  • 搭建LAMP(Linux + Apache + MySQL + PHP)或LEMP(Nginx替代Apache)是最经典、最成熟的选择。
  • 对新手,推荐先选择Nginx + PHP + SQLite起步,因为MySQL/PostgreSQL的配置复杂度略高。
  • 完成安装后,通过公网IP或域名访问默认页面,说明服务器已能正常对外提供Web服务。

解释与依据

许多人部署Web服务时会失败在权限、端口未开放或配置文件出错上。只要按以下步骤操作,即可让服务器响应外部请求。以下以LEMP为例,适合处理高并发静态资源或PHP动态页面:

# 1. 安装Nginx、PHP和MySQL(或MariaDB)
sudo apt install nginx php-fpm php-mysql mysql-server -y

# 2. 启动服务并设为开机自启
sudo systemctl start nginx
sudo systemctl enable nginx
sudo systemctl start php8.1-fpm  # 版本号根据实际调整
sudo systemctl enable php8.1-fpm

# 3. 配置Nginx网站文件默认路径在 /var/www/html
# 创建测试文件
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

# 4. 打开防火墙的80端口(HTTP)和443端口(HTTPS,后续配置)
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# 5. 浏览器访问 http://服务器IP/info.php ,即可看到PHP信息页
# 注意:生产环境中请立即删除该info.php文件

场景化建议

  • 建站新手:建议配合宝塔面板(bt.cn)快速管理,但请务必了解背后原理,避免全权依赖面板。
  • 静态博客:只安装Nginx,将生成的Hugo/VuePress等静态文件放到/var/www/your_domain中即可。
  • 动态网站:选用WordPress、Typecho等CMS,需额外配置MySQL数据库和PHP扩展安装。

五、常见误区与实用技巧

误区与事实对比(表格形式)

常见误区 事实与建议
“装完系统后必须装图形桌面” 服务器99%的场景不需要桌面,占用资源且增加攻击面,全部通过SSH终端管理。
“默认配置够用,不需要改” 默认时区为UTC(查看日志会错时)、默认SSH密码登录极不安全、默认未开启防火墙。建议修改。
“防火墙封闭后会影响内部服务” ufw是基于iptables的简化工具,正确配置后不影响本机进程通信,只拦截外部入站请求。
“永久使用root登录操作” 日常操作应使用普通用户账户,需要权限时使用sudo,禁止root远程SSH登录。
“云服务器主机名不用改” 建议将主机名改为有辨识度的名称(如web-01),方便多服务器环境识别。

关键注意事项

  • 定期执行sudo apt update && sudo apt upgrade,修复已知安全漏洞,至少每月一次。
  • 生产环境强烈建议配置自动安全更新
    sudo apt install unattended-upgrades
    sudo dpkg-reconfigure --priority=low unattended-upgrades
    
  • 日志文件默认占用磁盘空间较大(如/var/log),建议使用logrotate定期轮转压缩。
  • 使用tophtop监控CPU和内存,使用df -h查看磁盘使用率,养成定期检查习惯。

六、FAQ

Q1. 远程连接服务器时一直提示“连接被拒绝”,为什么?

:最常见的原因是SSH服务未启动或防火墙未允许22端口。请在云控制台使用VNC或通过物理机登录,执行sudo systemctl status ssh检查服务状态,并执行sudo ufw status确认端口策略。如果服务器是一台新装系统,请先尝试在本地网络内用SSH连接,排除网络隔离问题。

Q2. 我需要安装MySQL或PostgreSQL,选哪个?

:如果是和PHP项目(如WordPress)配合,MySQL/MariaDB是标配;如果是地理空间数据、复杂分析查询或Node.js/Go应用,PostgreSQL更强大。两者都可通过apt轻松安装。小应用选MySQL(安装和管理更方便),大数据或合规要求高的场景选PostgreSQL。

Q3. 我的服务器IP变了吗?为什么重启后连不上?

:如果使用DHCP自动获取IP,重启后IP可能变化。对于生产环境,请在网络配置文件中设置静态IP。Ubuntu Server 22.04及以上使用Netplan管理网络配置,配置文件通常在/etc/netplan/00-installer-config.yaml,设置静态IP并应用:

network:
  ethernets:
    ens3:       # 你的网卡名称
      dhcp4: no
      addresses:
        - 192.168.1.100/24
      gateway4: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 114.114.114.114]
  version: 2

保存后执行sudo netplan apply。云服务器通常不保留内部IP设置,请在云厂商控制台进行弹性IP绑定。

Q4. 我的网站上线后很慢,怎么排查?

:首先使用top查看CPU和内存占用;其次检查Nginx错误日志(/var/log/nginx/error.log)和PHP慢日志(需开启),排查是否有慢查询或脚本死循环。常见解决方案包括启用Nginx Gzip压缩、设置静态缓存、使用PHP-FPM调整进程数(pm.max_children)、升级MySQL查询缓存等。

七、结论

乌班图服务器是一个可靠、易上手且社区资源丰富的服务器操作系统。通过本教程,你已经掌握了从安装、安全加固到部署Web服务的基本流程。从今天开始,无论是搭建个人站点、学习DevOps、还是为小团队部署内部工具,都可以基于这套框架逐步扩展。

下一步建议:

  1. 域名与HTTPS:通过Let's Encrypt免费配置SSL证书,实现全站HTTPS。
  2. 数据库管理:安装phpMyAdmin或Adminer进行可视化数据库管理。
  3. 备份与监控:通过cron定时备份数据,使用Netdata或Prometheus监控服务器健康状态。
  4. 容器化:安装Docker,将应用容器化,提升部署与迁移效率。

记住,服务器的学习是螺旋上升的,不必一次追求完美。在遇到问题时,善用man命令、查阅Ubuntu官方文档,或者在社区论坛(如Ubuntu中文社区、Stack Overflow)提问,往往比照搬错误的博客更高效。你现在已经迈出了最坚实的一步。

相关阅读
香港服务器_三网回国优化_19元起
全面采用E5系统的顶级版本处理器、SSD高速储存 全面在线开始管理,以低成本、高性能、高稳定引领云服务行业