服务器配置与管理实用笔记,从入门到日常运维

2026-07-27 05:30:28 107阅读

基础环境搭建:先把“地基”打牢

操作系统选择

根据业务场景选系统,别盲目跟风:

  • Linux系统(推荐):
    • CentOS/RHEL:稳定、企业级常用,适合生产环境;
    • Ubuntu Server:更新快、社区活跃,适合开发或中小型项目。
  • Windows Server:适合.NET应用、Active Directory域管理,对Windows生态友好。

踩坑提醒:新手别直接用最新版,选LTS(长期支持)版本更稳,比如CentOS 7/8、Ubuntu 22.04 LTS。

服务器配置与管理实用笔记,从入门到日常运维

系统初始化(必做!)

新服务器到手,先做这几步:

  • 更新系统补丁
    # CentOS/RHEL
    yum update -y
    # Ubuntu
    apt update && apt upgrade -y
  • 创建普通用户并授权:别一直用root!
    useradd admin  # 创建用户
    passwd admin   # 设置密码
    visudo         # 给admin加sudo权限,在root ALL=(ALL) ALL下加一行:admin ALL=(ALL) ALL
  • 关闭不必要的服务:减少攻击面,比如CentOS里的postfix(不用邮件的话):
    systemctl stop postfix
    systemctl disable postfix
  • 设置时区
    timedatectl set-timezone Asia/Shanghai

常用服务配置:高频场景速查

Web服务器(Nginx为例)

Nginx轻量、高效,是Web服务首选。

  • 安装

    # CentOS
    yum install nginx -y
    # Ubuntu
    apt install nginx -y
  • 配置虚拟主机: 在/etc/nginx/conf.d/下建example.conf

    server {
        listen 80;
        server_name example.com www.example.com;
        root /var/www/example;
        index index.html;
        location / {
            try_files $uri $uri/ =404;
        }
    }
  • 启动并设置开机自启

    systemctl start nginx
    systemctl enable nginx

实用技巧:配置改完后用nginx -t检查语法,没问题再重载systemctl reload nginx

数据库(MariaDB为例)

MariaDB是MySQL的开源分支,兼容且更安全。

  • 安装
    yum install mariadb-server mariadb -y  # CentOS
    apt install mariadb-server -y          # Ubuntu
  • 初始化安全配置
    mysql_secure_installation  # 跟着提示设置root密码、删除匿名用户、禁止远程root登录
  • 创建数据库和用户
    CREATE DATABASE mydb;
    CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';
    GRANT ALL ON mydb.* TO 'myuser'@'localhost';
    FLUSH PRIVILEGES;

文件服务器(Samba为例,适合内网共享)

  • 安装
    yum install samba samba-client -y
  • 配置共享目录: 编辑/etc/samba/smb.conf,添加:
    [share]
        path = /data/share
        browseable = yes
        writable = yes
        valid users = admin
  • 设置Samba密码并启动
    smbpasswd -a admin
    systemctl start smb nmb
    systemctl enable smb nmb

日常管理要点:让服务器“稳如狗”

资源监控

别等服务器崩了才发现问题,常用工具:

  • 命令行工具
    • top/htop:看CPU、内存占用(htop更直观,需安装);
    • df -h:看磁盘使用情况;
    • free -h:看内存;
    • netstat -tuln:看端口监听。
  • 轻量监控工具:Zabbix、Prometheus+Grafana(适合长期监控)。

日志管理

日志是排查问题的关键,重点看这几个目录:

  • Linux系统日志:/var/log/messages(CentOS)、/var/log/syslog(Ubuntu);
  • Nginx日志:/var/log/nginx/access.log(访问日志)、error.log(错误日志);
  • MariaDB日志:/var/log/mariadb/mariadb.log

技巧:用tail -f 日志文件实时查看日志,grep关键词快速定位问题。

备份策略

数据丢了哭都没用,备份要做这几点:

  • 数据库备份:写个定时脚本,比如每天凌晨3点备份:
    #!/bin/bash
    DATE=$(date +%Y%m%d)
    mysqldump -u myuser -p'mypassword' mydb > /backup/mydb_$DATE.sql
    # 保留7天内的备份
    find /backup -name "mydb_*.sql" -mtime +7 -delete

    然后用crontab -e添加定时任务:

    0 3 * * * /path/to/backup.sh
  • 文件备份:用rsync同步到另一台服务器:
    rsync -avz /data/share/ user@backup-server:/backup/share/

安全防护:别让服务器成“肉鸡”

防火墙配置

  • CentOS用firewalld
    systemctl start firewalld
    systemctl enable firewalld
    firewall-cmd --permanent --add-service=http  # 开放80端口
    firewall-cmd --permanent --add-service=ssh   # 开放22端口(别忘开!)
    firewall-cmd --reload
  • Ubuntu用ufw
    ufw enable
    ufw allow http
    ufw allow ssh

SSH安全加固

  • 禁用root远程登录:编辑/etc/ssh/sshd_config,改PermitRootLogin no
  • 改SSH端口(比如改成2222):改Port 2222,然后防火墙同步开放;
  • 用密钥认证代替密码:
    # 本地生成密钥对
    ssh-keygen
    # 把公钥传到服务器
    ssh-copy-id -i ~/.ssh/id_rsa.pub admin@server-ip

    然后改sshd_config里的PasswordAuthentication no,重启sshd

定期更新补丁

别嫌麻烦,定时跑系统更新:

# CentOS
yum update -y
# Ubuntu
apt update && apt upgrade -y

常见问题排查:快速解决“燃眉之急”

  1. 服务启动失败:先看日志!比如Nginx启动失败,看/var/log/nginx/error.log
  2. 网络不通
    • ping 服务器IP看是否连通;
    • traceroute 目标地址看路由是否正常;
    • 检查防火墙是否开放对应端口。
  3. 磁盘满了
    • df -h看哪个分区满了;
    • du -sh /*看哪个目录占空间大,清理日志或临时文件。

笔记整理小技巧

  1. 用Markdown格式:方便排版、插入代码,用Typora或VS Code编辑;
  2. 分类归档:按“基础配置”“服务”“安全”“问题排查”分类,加标签;
  3. 定期更新:遇到新坑、新技巧及时补充;
  4. 结合案例:把实际遇到的问题和解决方法写进去,比纯理论有用。

服务器配置与管理没有“一招鲜”,都是靠日常积累,把每一次操作、每一个问题都记在笔记里,时间久了就是自己的“运维宝典”,希望这篇笔记能帮你少走弯路,也欢迎大家在评论区补充自己的经验~


笔记更新日期:2024年5月
适用系统:CentOS 7/8、Ubuntu 22.04 LTS

文章版权声明:除非注明,否则均为亚朵原创文章,转载或复制请以超链接形式并注明出处。