零基础如何快速搭建Linux服务器?

设置Linux服务器是构建稳定、高效网络服务的基础,本指南以Ubuntu Server 22.04 LTS为例(适用于大多数主流场景),结合安全性与实用性,逐步讲解操作流程,所有步骤均通过终端命令实现,需SSH或物理访问权限。


准备工作

  1. 选择Linux发行版
    • 推荐:Ubuntu Server(易用性强,社区支持完善)或CentOS Stream(企业级稳定性)。
    • 下载ISO镜像:从Ubuntu官网获取。
  2. 硬件要求

    最低配置:1核CPU、1GB内存、10GB存储(生产环境建议2核+、4GB内存、SSD存储)。

  3. 安装介质
    • 制作启动U盘:使用Rufus(Windows)或dd命令(Linux):
      dd if=ubuntu-22.04-server.iso of=/dev/sdX bs=4M status=progress  
    • 服务器上插入U盘,从BIOS/UEFI设置U盘启动。

安装Linux操作系统

  1. 启动安装程序
    • 选择语言 → 网络配置(设置静态IP更稳定)→ 磁盘分区:
      • 新手:使用Guided - use entire disk(自动分区)。
      • 高级用户:手动分区(建议分配/boot、、swap/home)。
  2. 关键配置
    • 设置主机名(如server01)→ 创建管理员用户(避免使用root直接登录)。
    • 安装OpenSSH Server(勾选选项,便于远程管理)。
  3. 完成安装

    重启后登录新创建的用户账户。


初始系统设置

  1. 更新系统与内核
    sudo apt update && sudo apt upgrade -y  
    sudo apt install --install-recommends linux-generic-hwe-22.04  
  2. 创建新用户并授权
    sudo adduser deploy  # 创建用户  
    sudo usermod -aG sudo deploy  # 加入sudo组  
  3. 配置防火墙(UFW)
    sudo ufw allow OpenSSH  # 允许SSH  
    sudo ufw allow 80/tcp   # 开放HTTP端口  
    sudo ufw allow 443/tcp  # 开放HTTPS端口  
    sudo ufw enable         # 启用防火墙  

安全加固(关键步骤)

  1. 禁用Root登录
    编辑SSH配置文件:

    sudo nano /etc/ssh/sshd_config  

    修改以下参数:

    PermitRootLogin no  
    PasswordAuthentication no  # 强制使用密钥登录  

    重启服务:sudo systemctl restart sshd

  2. 设置SSH密钥登录
    • 本地生成密钥:ssh-keygen -t ed25519
    • 上传公钥到服务器:
      ssh-copy-id deploy@your_server_ip  
  3. 安装Fail2ban(防暴力破解)
    sudo apt install fail2ban  
    sudo systemctl enable fail2ban  

安装基础服务

  1. Web服务器(Nginx为例)
    sudo apt install nginx  
    sudo systemctl start nginx  

    验证:浏览器访问http://服务器IP,显示Nginx欢迎页。

  2. 数据库(MySQL)
    sudo apt install mysql-server  
    sudo mysql_secure_installation  # 运行安全脚本  
  3. 部署应用环境
    • PHP支持:sudo apt install php-fpm php-mysql
    • Python环境:sudo apt install python3-venv

备份与监控

  1. 自动备份(使用cron)
    创建备份脚本/backup.sh

    tar -czf /backups/web-$(date +%F).tar.gz /var/www/html  

    添加定时任务:

    crontab -e  
    # 每天凌晨2点执行  
    0 2 * * * /bin/bash /backup.sh  
  2. 系统监控(NetData)
    bash <(curl -Ss https://my-netdata.io/kickstart.sh)  

    访问http://服务器IP:19999查看实时监控面板。


维护最佳实践

  1. 定期更新
    sudo apt update && sudo apt upgrade -y  
    sudo apt autoremove  # 清理旧内核  
  2. 日志审查
    • 检查登录记录:grep 'Failed password' /var/log/auth.log
    • 使用logwatch生成日报:sudo apt install logwatch
  3. 资源优化
    • 监控负载:htop
    • 调整服务:禁用未使用的服务(如sudo systemctl disable apache2)。

设置Linux服务器需平衡安全、性能与易用性,完成上述步骤后,您将获得一个生产级可用的基础环境。重要提示:

  • 所有敏感操作前备份数据(rsyncscp)。
  • 修改配置后务必测试(如sudo nginx -t验证Nginx配置)。
  • 复杂场景建议使用配置管理工具(Ansible/Puppet)。

引用说明

  • Ubuntu官方文档:Ubuntu Server Guide
  • Linux安全基线:CIS Benchmarks
  • 网络服务配置:Nginx官方文档
  • 监控工具参考:NetData文档

通过遵循本指南,您将建立符合E-A-T原则(专业性、权威性、可信度)的服务器环境,为后续应用部署奠定坚实基础,遇到问题可查阅man手册(如man sshd_config)或社区论坛(如Server Fault)。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6413.html

(0)
酷番叔酷番叔
上一篇 2025年7月6日 08:34
下一篇 2025年7月6日 08:58

相关推荐

  • Linux如何用wget/curl高效下载文件?

    基础下载工具wget – 全能下载器安装(若未预装):# Debian/Ubuntusudo apt install wget# CentOS/RHELsudo yum install wget基础用法:wget https://example.com/file.zip # 下载文件到当前目录wget -O c……

    2025年7月12日
    900
  • 为什么必须用固定网络地址?

    在Linux系统中固定IP地址是服务器管理、网络配置的常见需求,尤其适用于避免DHCP动态分配导致的IP变化,确保服务稳定访问,以下是详细操作指南,涵盖主流发行版(Ubuntu/Debian/CentOS)的两种主流方法:稳定性:服务器、NAS等设备需永久地址供外部访问,端口转发:路由器需固定IP映射端口(如S……

    2025年6月23日
    1100
  • Linux命令执行后如何撤销?

    未执行命令的撤销取消当前输入行Ctrl + C:强制终止正在输入或运行的命令(最常用),Ctrl + U:删除光标前整行内容(Bash/Zsh默认支持),Ctrl + W:删除光标前的一个单词,Esc + D:删除光标后的一个单词,清屏重置Ctrl + L 或输入 clear:清除终端显示,但已输入未执行的命令……

    10小时前
    200
  • Ubuntu运行慢?如何解决提升性能

    为什么IIS无法在Linux上安装?平台依赖性IIS深度集成Windows内核服务(如NT内核、Windows身份验证、ASP.NET),与Linux架构不兼容,微软官方限制微软未提供Linux版IIS,强行移植会导致功能缺失和安全隐患,专业建议:生产环境应选择原生支持Linux的Web服务器(如Nginx或A……

    2025年6月14日
    1300
  • 1.ls 命令,基础列表查看

    在Linux系统中,查看文件夹内容是最基础且频繁的操作之一,作为多用户、多任务的操作系统,Linux提供了多种高效命令来管理文件系统,以下详细介绍几种核心方法,涵盖基本查看、高级筛选及实用技巧,所有命令均通过实际终端测试(基于Ubuntu 22.04和CentOS 9环境),功能:列出目录内容(默认显示当前目录……

    4天前
    600

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信