Linux服务器基础配置与管理实践

实验目标: 通过实际操作,使学生掌握:
- Linux服务器的基本安装与初始化配置。
- 常用系统管理命令与工具的使用。
- 网络服务的安装、配置与管理(以Web服务为例)。
- 用户与权限管理的基本操作。
- 系统监控与日志查看基础。
- 安全意识与实践(防火墙配置、SSH安全加固)。
- (可选)自动化基础(简单脚本或Ansible入门)。
实验环境:
- 硬件:
- 物理服务器(推荐)或
- 性能较好的个人电脑/笔记本电脑(用于运行虚拟机)
- 软件:
- 虚拟化平台 (必需): VMware Workstation/Player, VirtualBox, KVM/QEMU 等。推荐使用VirtualBox或VMware Player,因其免费且易用。
- Linux发行版镜像 (必需): CentOS 7/8 Stream, Rocky Linux 8/9, AlmaLinux 8/9, Ubuntu Server 20.04/22.04 LTS。推荐使用Rocky Linux/AlmaLinux或Ubuntu Server LTS版本,因其长期支持和社区活跃。
- 终端工具 (必需): 本地使用系统终端(Linux/macOS)或 PuTTY/SecureCRT/MobaXterm(Windows)用于SSH连接。
- 可选工具: WinSCP/FileZilla(文件传输), Ansible(自动化配置管理)。
与步骤 (详细示例 – 以Rocky Linux 9为例):**
实验环境准备与系统安装
- 创建虚拟机:
- 在虚拟化平台中创建一个新的虚拟机。
- 分配资源:CPU(2核+)、内存(2GB+,推荐4GB)、硬盘(20GB+,推荐40GB,动态分配)。
- 网络连接:选择“桥接模式”或“NAT模式”。桥接模式可使虚拟机获得独立局域网IP,更接近真实环境;NAT模式共享宿主机IP,适合初期实验。
- 安装操作系统:
- 挂载下载好的Rocky Linux 9 ISO镜像到虚拟机光驱。
- 启动虚拟机,开始安装过程。
- 选择语言、时区(Asia/Shanghai)。
- 安装源: 配置可用镜像源(可选,安装程序通常自动配置)。
- 软件选择: 必选
Server with GUI或Minimal Install。强烈建议选择Server with GUI(带图形界面)给初学者,方便文件管理和部分配置;熟练后或生产环境使用Minimal Install(最小化安装)。 - 安装目的地: 选择之前创建的虚拟硬盘,采用自动分区方案(或学习手动分区)。
- 网络和主机名: 开启网络连接(通常是
eth0或ens33),设置主机名(如server-lab.local)。 - Root密码: 设置强壮的root用户密码。
- 创建用户: 强烈建议 创建一个普通管理员用户(如
sysadmin),勾选“将此用户设为管理员”(加入wheel组),并设置密码。 - 开始安装,完成后重启。
- 初始登录与更新:
- 使用创建的普通管理员用户(
sysadmin)登录(图形界面或命令行)。 - 打开终端(Terminal)。
- 更新系统:
sudo dnf update -y # Rocky/Alma/CentOS # 或 sudo apt update && sudo apt upgrade -y # Ubuntu/Debian
- 重启(如果需要):
sudo reboot
- 使用创建的普通管理员用户(
基本系统配置与管理

- 网络配置:
- 查看IP地址:
ip addr或ifconfig(如果已安装net-tools) - (如果使用NAT且需要固定IP或桥接模式)配置静态IP:
- 编辑网络配置文件:
- Rocky/Alma/CentOS:
/etc/sysconfig/network-scripts/ifcfg-ens33(网卡名可能不同) - Ubuntu:
/etc/netplan/00-installer-config.yaml或/etc/netplan/*.yaml
- Rocky/Alma/CentOS:
- 修改配置(示例Rocky静态IP):
BOOTPROTO="static" IPADDR=192.168.1.100 # 替换为你的局域网可用IP NETMASK=255.255.255.0 # 或 PREFIX=24 GATEWAY=192.168.1.1 # 替换为你的网关 DNS1=8.8.8.8 # 替换为你的DNS服务器 DNS2=8.8.4.4 - 重启网络服务:
sudo systemctl restart NetworkManager(Rocky/Alma/CentOS) 或sudo netplan apply(Ubuntu)
- 编辑网络配置文件:
- 测试网络连通性:
ping www.baidu.com
- 查看IP地址:
- SSH服务配置与远程连接:
- 确认SSH服务已安装并运行:
sudo systemctl status sshd - 如果未运行:
sudo systemctl start sshd和sudo systemctl enable sshd - 从宿主机使用PuTTY或终端SSH连接到虚拟机的IP地址和用户
sysadmin。 - 安全加固 (重要!):
- 禁用root用户直接SSH登录:编辑
/etc/ssh/sshd_config,找到PermitRootLogin,将其值改为no,保存后重启SSH:sudo systemctl restart sshd。以后必须先用普通用户登录,再su -或sudo -i切root。 - (可选但推荐)使用密钥认证:在宿主机生成密钥对(
ssh-keygen),将公钥(id_rsa.pub添加到虚拟机用户~/.ssh/authorized_keys文件中,然后在sshd_config中设置PasswordAuthentication no(禁用密码登录,仅允许密钥),重启SSH。务必测试密钥登录成功后再禁用密码!
- 禁用root用户直接SSH登录:编辑
- 确认SSH服务已安装并运行:
- 用户与权限管理:
- 创建新用户:
sudo adduser testuser - 为新用户设置密码:
sudo passwd testuser - 将用户加入sudoers(授权管理员权限):
sudo usermod -aG wheel testuser(Rocky/Alma/CentOS)sudo usermod -aG sudo testuser(Ubuntu)
- 测试新用户权限:
su - testuser然后尝试sudo ls /root(需要输入testuser的密码)。 - 修改文件/目录权限:
- 创建一个测试文件:
sudo touch /opt/testfile.txt - 查看权限:
ls -l /opt/testfile.txt - 更改所有者:
sudo chown testuser:testuser /opt/testfile.txt - 更改权限:
sudo chmod 760 /opt/testfile.txt(rwx for owner, rw for group, no for others) - 验证:分别用root, testuser, 其他用户尝试读写。
- 创建一个测试文件:
- 创建新用户:
服务部署与管理 (以Apache HTTPD为例)
- 安装Web服务器 (Apache HTTPD):
- Rocky/Alma/CentOS:
sudo dnf install httpd -y - Ubuntu:
sudo apt install apache2 -y
- Rocky/Alma/CentOS:
- 配置与启动服务:
- 启动服务:
sudo systemctl start httpd(或apache2on Ubuntu) - 设置开机自启:
sudo systemctl enable httpd - 检查状态:
sudo systemctl status httpd
- 启动服务:
- 防火墙配置 (放行HTTP/HTTPS):
- 查看防火墙状态:
sudo firewall-cmd --state(Rocky/Alma/CentOS 使用firewalld) 或sudo ufw status(Ubuntu 使用ufw) - 放行服务:
- firewalld:
sudo firewall-cmd --permanent --add-service=http - firewalld:
sudo firewall-cmd --permanent --add-service=https(如果配置了SSL) - firewalld:
sudo firewall-cmd --reload - ufw:
sudo ufw allow 80/tcp - ufw:
sudo ufw allow 443/tcp(如果配置了SSL) - ufw:
sudo ufw reload
- firewalld:
- 查看防火墙状态:
- 测试Web服务:
- 在虚拟机本地:
curl http://localhost或打开浏览器访问http://localhost。 - 在宿主机浏览器中访问:
http://<虚拟机IP地址>(如http://192.168.1.100),应该能看到Apache的默认测试页面。
- 在虚拟机本地:
- 部署简单网站:
- 默认网站根目录:
- Rocky/Alma/CentOS:
/var/www/html/ - Ubuntu:
/var/www/html/
- Rocky/Alma/CentOS:
- 创建一个简单的
index.html文件覆盖默认页面:sudo bash -c 'echo "<h1>Hello from My Lab Server!</h1>" > /var/www/html/index.html'
- 刷新浏览器,查看效果。
- 默认网站根目录:
系统监控与日志
- 基本资源监控:
top/htop(安装:sudo dnf install htop/sudo apt install htop): 实时查看CPU、内存、进程。free -h: 查看内存使用概览。df -h: 查看磁盘空间使用情况。uptime: 查看系统运行时间和平均负载。
- 查看系统日志:
- 使用
journalctl(Systemd日志):- 查看所有日志:
sudo journalctl - 查看特定服务日志(如SSH):
sudo journalctl -u sshd - 查看最新日志(实时跟踪):
sudo journalctl -f
- 查看所有日志:
- 查看特定日志文件(传统syslog):
/var/log/messages(Rocky/Alma/CentOS 通用日志)/var/log/syslog(Ubuntu 通用日志)/var/log/secure(Rocky/Alma/CentOS 安全/认证相关)/var/log/auth.log(Ubuntu 认证相关)/var/log/httpd/access_log或/var/log/apache2/access.log(Apache 访问日志)/var/log/httpd/error_log或/var/log/apache2/error.log(Apache 错误日志)
- 使用
tail -f /path/to/logfile实时跟踪日志文件末尾。
- 使用
实验小编总结与清理 (可选但推荐)
- 实验报告:
- 记录实验步骤、关键命令及输出截图。
- 记录遇到的问题及解决方法。
- 阐述实验中学到的关键知识和技能。
- 环境清理:
- 重要: 如果是在个人电脑上实验,且虚拟机不再需要,可以删除虚拟机以释放磁盘空间。
- 在虚拟化软件中删除虚拟机及其关联磁盘文件。
可选进阶实验内容:

- 数据库服务: 安装配置MySQL或PostgreSQL,并与PHP集成。
- 域名与虚拟主机: 配置Apache虚拟主机,绑定本地测试域名(修改本地hosts文件)。
- SSL/TLS加密: 使用Let’s Encrypt或自签名证书为Apache配置HTTPS。
- 文件共享: 配置NFS或Samba服务实现文件共享。
- 自动化配置管理: 使用Ansible编写Playbook来自动化完成本实验的大部分步骤(安装软件、配置服务、管理用户等)。这是现代运维的核心技能。
- 容器化: 使用Docker部署一个简单的应用(如WordPress)来代替直接在宿主机安装Apache/PHP/MySQL。
- 备份与恢复: 使用
tar,rsync或borg进行简单的文件/目录备份与恢复演练。 - 性能测试: 使用
ab(Apache Bench) 或siege对Web服务器进行简单的压力测试。
安全注意事项:
- 谨慎使用root权限: 尽量使用
sudo执行管理命令,避免长时间在root会话下操作。 - 强密码策略: 为所有用户(尤其是root和具有sudo权限的用户)设置复杂且唯一的密码。
- SSH安全: 务必禁用root远程SSH登录和考虑禁用密码认证(使用密钥),更改默认SSH端口(22)可增加一点安全性(需同步修改防火墙)。
- 防火墙: 始终开启防火墙,并仅开放必要的端口(如SSH, HTTP, HTTPS),默认拒绝所有入站连接。
- 及时更新:
sudo dnf update/sudo apt update && sudo apt upgrade定期更新系统补丁和软件包。 - 最小化安装: 生产环境尽量安装最少的必要软件包,减少攻击面。
- 备份!备份!备份! 重要数据定期备份是运维的生命线。
实验提示:
- 善用手册:
man <command>是学习命令用法的最佳途径。man ls,man systemctl。 - 善用搜索: 遇到问题时,仔细阅读错误信息,并使用搜索引擎(加上你的发行版名称和版本号)查找解决方案,Stack Overflow和官方文档是宝贵资源。
- 记录命令: 将成功执行的命令记录下来,方便后续复习和编写报告。
- 勇于尝试(在可恢复的环境下): 虚拟机环境是安全的沙箱,大胆尝试不同的命令和配置,理解其作用,遇到问题可以回滚快照或重建。
- 理解原理: 不仅要会操作,更要理解每个步骤背后的原理(如为什么改那个配置文件?防火墙规则是如何工作的?)。
这份实验方案提供了一个从零开始配置和管理Linux服务器的完整流程,你可以根据时间和学习目标,选择完成核心部分或挑战进阶内容,祝你实验顺利!
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/287337.html

