或
海外云服务器 40个地区可选 亚太云服务器 香港 日本 韩国
云虚拟主机 个人和企业网站的理想选择 俄罗斯电商外贸虚拟主机 赠送SSL证书
美国云虚拟主机 助力出海企业低成本上云 WAF网站防火墙 为您的业务网站保驾护航
在当今数字化浪潮席卷全球的背景下,服务器作为承载网站、应用程序与核心数据的“数字基石”,其战略地位愈发重要,无论是个人开发者搭建博客或项目展示平台,还是企业部署高并发业务系统,选择一个可靠的操作系统是成功的第一步。
Linux凭借其开源、稳定、安全、高效以及强大的社区支持,已成为服务器领域的主流操作系统,本文将带领读者从零开始,在 Linux 系统上完成一台基础服务器的搭建全过程,涵盖系统选型、环境配置、Web服务部署、应用运行、安全加固及运维监控等关键步骤,帮助新手快速上手,也为有经验的开发者提供优化思路。
选择合适的Linux发行版
搭建服务器的第一步,是选择一款适合自己需求的 Linux 发行版,不同的发行版在稳定性、更新策略、软件生态和支持周期方面各有侧重。
常见的服务器级 Linux 系统包括:
- Ubuntu Server:基于 Debian,包管理便捷(APT),文档丰富,社区活跃,非常适合初学者。
- Debian:以极致稳定著称,适合对系统长期运行要求高的场景。
- Rocky Linux / AlmaLinux:CentOS 停止传统版本维护后兴起的主流替代品,继承 RHEL 的企业级特性,适用于生产环境。
- Fedora Server:更新频繁,集成最新技术,适合测试前沿功能。
✅ 推荐建议:
- 初学者首选 Ubuntu Server LTS 版本(如 22.04 或 24.04),长期支持、兼容性强;
- 企业级生产环境优先考虑 Rocky Linux 或 AlmaLinux,保障系统稳定性与安全性。
部署方式建议使用云服务器(如阿里云、腾讯云、AWS、华为云)或本地虚拟机(VMware、VirtualBox、KVM),便于资源隔离、快照备份和远程管理。
安装完成后,通过 SSH 远程连接登录服务器,即可进入后续配置流程。
基础系统配置:打造安全可靠的运行环境
首次登录服务器后,首要任务是完成基础环境初始化,提升系统的可用性与安全性。
更新系统软件包
确保系统处于最新状态,修复已知漏洞:
# Ubuntu/Debian 系列 sudo apt update && sudo apt upgrade -y # CentOS/Rocky/AlmaLinux(使用 dnf) sudo dnf update -y
⚠️ 提示:升级前建议先执行
sudo apt full-upgrade
(Debian系)以防依赖冲突。
设置主机名与时区
统一命名规范有助于后期集群管理:
sudo hostnamectl set-hostname web-server-01
设置为中国标准时间(上海时区):
sudo timedatectl set-timezone Asia/Shanghai
启用并启动时间同步服务(chrony):
sudo systemctl enable chronyd --now # 或使用 systemd-timesyncd(部分系统默认启用)
可通过 timedatectl status
查看时间同步状态。
创建普通用户并授权
避免直接使用 root 账户操作,降低误操作风险:
sudo adduser deploy # 创建新用户 sudo usermod -aG sudo deploy # 添加到 sudo 组
之后可通过 ssh deploy@your_server_ip
登录,执行管理员命令时加 sudo
即可。
配置 SSH 密钥登录,禁用密码认证
这是提升服务器安全性的关键一步,有效防范暴力破解攻击。
(1)在本地生成密钥对:
ssh-keygen -t rsa -b 4096 -C "deploy@myserver"
按提示保存至 ~/.ssh/id_rsa
,不设置密码亦可(生产环境建议设密保)。
(2)上传公钥到服务器:
ssh-copy-id deploy@your_server_ip
若该命令不可用,可手动复制公钥内容追加到服务器上的 ~/.ssh/authorized_keys
文件中。
(3)修改 SSH 配置文件:
编辑 /etc/ssh/sshd_config
:
PermitRootLogin no # 禁止 root 登录 PasswordAuthentication no # 关闭密码登录 PubkeyAuthentication yes # 启用密钥认证 ChallengeResponseAuthentication no UsePAM no
保存后重启 SSH 服务:
sudo systemctl restart sshd
🔐 注意:请务必确认密钥登录已生效后再关闭密码登录,防止被“锁”在服务器外!
安装并启动 Web 服务器
Web 服务器是对外提供网页服务的核心组件,目前最主流的是 Nginx 和 Apache,Nginx 因其轻量、高性能、低资源占用,尤其擅长处理高并发请求,已成为现代 Web 架构的首选。
安装 Nginx
# Ubuntu/Debian sudo apt install nginx -y # Rocky/AlmaLinux sudo dnf install nginx -y
启动并设置开机自启:
sudo hostnamectl set-hostname web-server-010
检查服务状态:
sudo hostnamectl set-hostname web-server-011
输出显示 “active (running)” 表示服务正常。
开放防火墙端口
如果启用了防火墙(如 ufw 或 firewalld),需开放 HTTP(80)和 HTTPS(443)端口。
Ubuntu 使用 UFW:
sudo hostnamectl set-hostname web-server-012
CentOS/Rocky 使用 firewalld:
sudo hostnamectl set-hostname web-server-013
在浏览器访问服务器公网 IP 地址,应能看到 Nginx 欢迎页面,说明 Web 服务已成功上线。
部署静态网站或动态应用
托管静态网站
将 HTML、CSS、JS 等静态文件放入默认站点目录:
sudo hostnamectl set-hostname web-server-014
替换 index.html
内容或上传完整前端项目即可实现静态托管。
sudo cp -r ~/mywebsite/* sudo hostnamectl set-hostname web-server-014
刷新页面即可查看效果。
部署 Node.js 动态应用(示例)
假设我们要部署一个运行在 3000 端口的 Express 应用。
(1)安装 Node.js 运行环境
推荐使用 Nodesource 提供的官方源:
sudo hostnamectl set-hostname web-server-016
验证安装:
sudo hostnamectl set-hostname web-server-017
(2)上传应用代码并安装依赖
sudo hostnamectl set-hostname web-server-018
(3)使用 PM2 管理进程
PM2 是 Node.js 的生产级进程管理工具,支持自动重启、日志记录和开机自启。
安装并启动应用:
sudo hostnamectl set-hostname web-server-019
设置开机自启:
sudo timedatectl set-timezone Asia/Shanghai0
查看应用状态:
sudo timedatectl set-timezone Asia/Shanghai1
配置 Nginx 反向代理
为了让外部用户通过 80 端口访问你的 Node.js 应用,需配置 Nginx 作为反向代理。
创建配置文件:
sudo timedatectl set-timezone Asia/Shanghai2
sudo timedatectl set-timezone Asia/Shanghai3