凌峰创科服务平台

如何在PC上搭建Linux服务器?

在个人电脑(PC)上搭建Linux服务器是一个既实用又具有学习价值的过程,尤其适合开发者、爱好者或小型企业进行环境测试、文件共享或轻量级服务部署,本文将详细介绍从准备工作到系统配置、服务部署及维护的全流程,帮助读者顺利完成Linux服务器的搭建。

准备工作

在开始搭建之前,需确保硬件和软件条件满足需求,硬件方面,建议PC配置至少4GB内存(推荐8GB以上)、64位处理器、足够的存储空间(系统盘至少50GB,可根据需求扩展数据盘)以及稳定的网络连接,软件方面,需准备Linux发行版镜像(如Ubuntu Server、CentOS等)和虚拟机软件(如VirtualBox、VMware)或直接使用物理机安装,若选择虚拟化方式,需确保CPU支持虚拟化技术并在BIOS中启用。

安装Linux系统

  1. 选择发行版:Ubuntu Server适合新手,社区支持完善;CentOS/RHEL稳定性强,适合企业环境,本文以Ubuntu Server 22.04为例。
  2. 创建启动盘:使用Rufus或balenaEtcher将ISO镜像写入U盘。
  3. 启动安装程序:将U盘插入PC,重启并进入BIOS/UEFI设置,从U盘启动,选择“Install Ubuntu Server”进入安装界面。
  4. 分区配置:建议采用LVM逻辑卷管理,便于动态调整分区大小,典型分区方案如下: | 分区类型 | 文件系统 | 大小 | 用途 | |------------|----------|--------|--------------------| | /boot | ext4 | 1GB | 系统引导 | | / (根分区) | ext4 | 50GB | 系统及软件 | | swap | swap | 内存大小 | 虚拟内存 | | /home | ext4 | 剩余空间 | 用户数据 |
  5. 用户设置:创建普通用户(避免直接使用root),设置强密码并配置SSH密钥登录(提升安全性)。
  6. 安装完成:重启系统,使用sudo -i切换至root用户进行后续配置。

基础系统配置

  1. 更新系统:执行apt update && apt upgrade -y安装最新安全补丁和软件包。
  2. 配置静态IP:编辑/etc/netplan/01-netcfg.yaml,设置固定IP(示例):
    network:
      version: 2
      ethernets:
        ens33:
          dhcp4: no
          addresses: [192.168.1.100/24]
          gateway4: 192.168.1.1
          nameservers:
            addresses: [8.8.8.8, 114.114.114.114]

    应用配置:netplan apply

  3. 防火墙设置:使用ufw管理防火墙规则,例如允许SSH和HTTP端口:
    ufw allow 22/tcp
    ufw allow 80/tcp
    ufw enable

部署常用服务

Web服务器(Nginx + PHP)

# 安装Nginx和PHP
apt install nginx php-fpm php-mysql -y
# 启动并设置开机自启
systemctl enable --now nginx php8.1-fpm
# 测试配置:访问http://服务器IP,显示Nginx欢迎页即成功

数据库服务(MySQL)

# 安装MySQL
apt install mysql-server -y
# 安全配置:执行mysql_secure_installation设置root密码、移除匿名用户等
systemctl enable --now mysql

文件共享(Samba)

# 安装Samba
apt install samba -y
# 创建共享目录并设置权限
mkdir -p /home/share
chmod 777 /home/share
# 配置Samba:编辑/etc/samba/smb.conf
[global]
   workgroup = WORKGROUP
   security = user
[share]
   path = /home/share
   browsable = yes
   writable = yes
   valid users = your_username
# 重启服务:systemctl restart smbd

远程管理与监控

  1. SSH远程登录:使用ssh your_username@服务器IP连接,建议禁用密码登录(仅用密钥)。
  2. 监控工具:安装htop(进程监控)、nethogs(流量监控)或prometheus+grafana(可视化监控)。
  3. 日志管理:通过journalctl -u nginx查看服务日志,或配置rsyslog集中管理日志。

安全加固

  1. 禁用root SSH登录:编辑/etc/ssh/sshd_config,设置PermitRootLogin no后重启SSH服务。
  2. 定期更新:配置自动更新:apt install unattended-upgrades -y,编辑/etc/apt/apt.conf.d/50unattended-upgrades启用自动更新。
  3. fail2ban防护:安装fail2ban防止暴力破解,配置/etc/fail2ban/jail.local锁定恶意IP。

常见问题与维护

  • 磁盘空间不足:使用df -h检查分区,扩展LVM卷或清理无用文件(如apt autoremove)。
  • 服务无法启动:检查日志(journalctl -u 服务名)和配置文件语法(如nginx -t)。
  • 数据备份:使用rsynctar定期备份重要数据,
    rsync -av /home/share/ user@backup_server:/backup/

相关问答FAQs

Q1: 如何在Linux服务器上实现域名解析?
A1: 可通过两种方式实现:1)修改本地hosts文件(/etc/hosts),仅对当前服务器生效;2)配置DNS服务器(如BIND),将域名指向服务器IP,对于公网域名,需在域名注册商处修改NS记录或A记录。

Q2: 如何设置开机自启动自定义脚本?
A2: 可通过创建systemd服务实现,为脚本/home/user/myscript.sh创建服务文件/etc/systemd/system/myscript.service如下:

[Unit]
Description=My Custom Script
After=network.target
[Service]
Type=simple
User=user
ExecStart=/home/user/myscript.sh
Restart=on-failure
[Install]
WantedBy=multi-user.target

执行systemctl enable --now myscript即可开机自启。

分享:
扫描分享到社交APP
上一篇
下一篇