如何搭建Linux服务器?新手入门详细步骤

在搭建Linux服务器时,需从硬件选型、系统安装、基础配置、安全加固到服务部署逐步推进,确保服务器稳定、安全且满足业务需求,以下是详细步骤

如何做一个linux服务器

硬件选型与准备

硬件配置需根据服务器用途(如Web服务、数据库、文件存储等)合理规划,核心参数包括CPU、内存、存储、网络及冗余设计。

用途 CPU核心数 内存容量 存储类型 网络带宽 冗余设计
入门级Web服务 2-4核 8-16GB 256GB SSD + 1TB HDD 1Gbps 单电源,无RAID
中小型数据库 4-8核 16-32GB 512GB SSD RAID 1 10Gbps 双电源,RAID 1/10
企业级文件存储 8-16核 32-64GB 4TB HDD RAID 5/6 25Gbps 双电源,冗余网卡,UPS

注意事项:优先选择服务器级硬件(如戴尔R系列、惠普ProLiant),支持IPMI远程管理;存储根据性能需求选择SSD(系统盘)或HDD(数据盘),RAID可提升数据可靠性。

操作系统安装

选择发行版

  • 入门/开发:Ubuntu Server(社区活跃,文档丰富)
  • 企业级:CentOS Stream/RHEL(稳定,长期支持)
  • 轻量级:Debian(资源占用低)

安装步骤

  • 制作启动盘:使用Rufus(Windows)或dd(Linux)将ISO写入U盘,设置BIOS从U盘启动。
  • 分区规划
    • /boot:500MB(EXT4,引导分区)
    • 20-50GB(EXT4/XFS,系统分区)
    • /data:剩余空间(XFS/EXT4,数据分区,建议独立磁盘)
    • swap:内存的1-2倍(若内存≥32GB,可设置为16GB或关闭)
  • 网络配置:选择静态IP(避免DHCP动态分配冲突),设置DNS(如8.8.8.8、114.114.114.114)。
  • 用户设置:创建管理员用户(禁用root远程登录),设置强密码。

基础系统配置

更新系统

# Ubuntu/Debian  
sudo apt update && sudo apt upgrade -y  
# CentOS/RHEL  
sudo dnf update -y  

配置网络

编辑网卡配置文件(如/etc/netplan/01-netcfg.yaml):

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使配置生效。

配置SSH优化

编辑/etc/ssh/sshd_config

如何做一个linux服务器

  • 禁用root登录:PermitRootLogin no
  • 修改默认端口:Port 2222(避免默认22端口扫描)
  • 启用密钥登录:PubkeyAuthentication yesPasswordAuthentication no
    重启SSH服务:systemctl restart sshd

时区与时间同步

sudo timedatectl set-timezone Asia/Shanghai  
sudo apt install ntp -y  # Ubuntu/Debian  
sudo dnf install ntpdate -y  # CentOS/RHEL  
sudo ntpdate pool.ntp.org  

安全加固

防火墙配置

  • Ubuntu/Debian(ufw)
    sudo ufw default deny incoming  
    sudo ufw allow 2222/tcp  # SSH端口  
    sudo ufw allow 80/tcp    # HTTP  
    sudo ufw allow 443/tcp   # HTTPS  
    sudo ufw enable  
  • CentOS/RHEL(firewalld)
    sudo firewall-cmd --permanent --add-port=2222/tcp  
    sudo firewall-cmd --permanent --add-service=http  
    sudo firewall-cmd --permanent --add-service=https  
    sudo firewall-cmd --reload  

禁用不必要的服务

# 查看开机自启服务  
systemctl list-unit-files --state=enabled  
# 禁用不必要服务(如avahi-daemon、cups)  
sudo systemctl disable avahi-daemon  

入侵检测与日志审计

安装fail2ban防暴力破解:

sudo apt install fail2ban -y  
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local  
编辑jail.local,配置SSH封禁规则:  
[sshd]  
enabled = true  
port = 2222  
maxretry = 3  
bantime = 3600  
sudo systemctl restart fail2ban  

日志审计:通过/var/log/auth.log(Ubuntu)或/var/log/secure(CentOS)监控登录异常。

部署常用服务

以部署Nginx+MySQL为例:

安装Nginx

# Ubuntu  
sudo apt install nginx -y  
# CentOS  
sudo dnf install nginx -y  
sudo systemctl enable nginx --now  

安装MySQL

# Ubuntu  
sudo apt install mysql-server -y  
sudo mysql_secure_installation  # 安全初始化(设置root密码、匿名用户、测试数据库)  
# CentOS  
sudo dnf install mysql-server -y  
sudo systemctl enable mysqld --now  
sudo mysql_secure_installation  

配置虚拟主机

编辑Nginx配置文件/etc/nginx/sites-available/default

server {  
    listen 80;  
    server_name example.com;  
    root /var/www/html;  
    index index.html;  
    location / {  
        try_files $uri $uri/ =404;  
    }  
}  

创建测试页面:echo "Hello, Linux Server!" | sudo tee /var/www/html/index.html,重启Nginx:systemctl restart nginx

如何做一个linux服务器

维护与优化

监控工具

  • 系统监控htop(进程)、nethogs(流量)、df -h(磁盘)
  • 专业监控:Prometheus+Grafana(可视化监控)、Zabbix(企业级)

备份策略

  • 全量备份:每周完整备份(使用rsynctar
  • 增量备份:每日增量备份(rsync --link-dest
  • 异地备份:定期将备份文件同步至云存储(如阿里云OSS、AWS S3)

示例脚本(每日备份/data目录):

#!/bin/bash  
DATE=$(date +%Y%m%d)  
rsync -avz --delete /data /backup/data_$DATE  

性能优化

  • 内核参数:调整/etc/sysctl.conf(如net.ipv4.tcp_tw_reuse=1减少TIME_WAIT连接)
  • 磁盘IO:使用noatime挂载选项(/dev/sda1 /data xfs defaults,noatime 0 0
  • 内存管理:定期清理缓存(sync && echo 3 > /proc/sys/vm/drop_caches

相关问答FAQs

Q1:如何定期检查服务器安全?
A:可通过以下步骤定期检查:

  1. 系统更新:执行sudo apt update && sudo apt upgrade -y(Ubuntu)或sudo dnf update -y(CentOS),修复已知漏洞。
  2. 日志分析:使用grep "Failed password" /var/log/auth.log(Ubuntu)或grep "Failed password" /var/log/secure(CentOS)排查暴力破解尝试,结合fail2ban自动封禁IP。
  3. 端口扫描:使用nmap -sT -p- localhost检查开放端口,关闭非必要服务端口(如 Telnet(23)、FTP(21))。
  4. 权限检查:执行ls -la /etc/passwd查看系统用户,删除异常账户;使用chmod 640 /etc/shadow限制敏感文件权限。

Q2:Linux服务器性能突然下降怎么办?
A:按以下步骤排查:

  1. CPU占用:运行tophtop,找到高CPU占用进程(如%CPU列),若为异常进程(如挖矿程序),终止进程(kill -9 PID)。
  2. 内存占用:执行free -h查看内存使用,若buff/cache占用过高,可清理缓存(echo 3 > /proc/sys/vm/drop_caches);若Swap使用率高,需增加物理内存或优化应用内存泄漏。
  3. 磁盘IO:运行iostat -x 1,检查%util(磁盘使用率)和await(平均等待时间),若过高,可能存在磁盘瓶颈,可优化磁盘分区(如使用SSD)或检查大文件读写进程。
  4. 网络流量:使用nethogsiftop查看实时流量,定位异常流量(如DDoS攻击),通过防火墙封禁恶意IP(iptables -I INPUT -s 恶意IP -j DROP)。

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

(0)
酷番叔酷番叔
上一篇 1小时前
下一篇 1小时前

相关推荐

  • 如何通过U盘安装Linux系统?视频教程步骤详解?

    从U盘安装Linux系统是许多新手用户的首选方式,相比光盘安装,U盘携带方便、写入速度快,且可重复使用,本文将以Ubuntu 22.04 LTS为例,结合视频教程的关键步骤,详细讲解如何通过U盘完成Linux系统的安装,涵盖前期准备、启动盘制作、BIOS设置、系统安装及后续配置全流程,帮助用户顺利完成系统部署……

    4天前
    1200
  • 如何完美复制文件并保留所有属性?

    基础命令:cp(最常用)适用场景:本地快速复制单个文件或中小型目录,优势:系统内置,无需安装;操作简单,常用参数:-r:递归复制目录(必需)-v:显示复制进度(verbose)-p:保留文件属性(权限、时间戳)-u:仅复制源文件中更新的部分(增量复制)示例:# 递归复制目录(仅更新修改过的文件)cp -rupv……

    2025年7月8日
    3500
  • Linux下如何卸载软件并重启系统?

    在Linux系统管理中,卸载不需要的软件、服务或驱动,以及重启系统以使配置生效或解决临时问题,是日常运维的核心操作,不同场景下的卸载方法和重启命令需结合系统环境(发行版、服务管理器等)灵活选择,本文将详细拆解操作流程及注意事项,Linux下的卸载操作Linux系统的卸载操作需根据目标类型(软件包、服务、驱动/模……

    4天前
    800
  • 如何查询Linux系统中各项服务的运行状态?

    在Linux系统中,服务是后台运行的关键程序,负责提供特定功能(如Web服务、数据库服务、网络服务等),准确查询服务状态对于系统运维、故障排查至关重要,本文将详细介绍多种查询Linux服务状态的方法,涵盖主流初始化系统(systemd、SysV init、OpenRC等)及常用命令,帮助用户全面掌握服务状态监控……

    4天前
    700
  • Linux中实现并发编程的关键技术、方法及注意事项有哪些?

    Linux作为多任务、多用户的操作系统,其并发能力是实现高性能服务器的核心基础,并发是指系统在宏观上同时处理多个任务,微观上通过任务切换交替执行,充分利用CPU、I/O等资源,提升系统吞吐量,Linux中实现并发的机制涵盖进程、线程、内核同步机制、I/O模型等多个层面,以下从不同维度详细解析其实现原理与技术实践……

    2025年9月8日
    1300

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信