Ubuntu服务器作为全球最受欢迎的开源服务器操作系统之一,凭借其稳定性、安全性、强大的社区支持以及丰富的软件资源,被广泛应用于Web托管、云服务、大数据处理、DevOps等多种场景,本文将详细介绍Ubuntu服务器的核心配置、管理实践、安全加固及常见应用部署,帮助用户高效搭建和维护服务器环境。

Ubuntu服务器安装与初始化配置
Ubuntu服务器通常提供LTS(长期支持)版本,如22.04 LTS,支持5年免费安全维护,适合生产环境,安装时需注意以下关键步骤:
- 镜像下载与启动盘制作:从Ubuntu官网下载服务器版ISO镜像,使用Rufus或balenaEtcher制作启动盘。
- 安装选项选择:启动后选择“Install Ubuntu Server”,语言、键盘布局按需设置;特别注意磁盘分区建议使用LVM(逻辑卷管理),便于后续动态调整存储空间;安装过程中可勾选“OpenSSH server”,实现远程管理。
- 初始化配置:安装完成后,通过SSH登录(默认端口22),首先更新系统:
sudo apt update && sudo apt upgrade -y
配置静态IP地址(避免重启后IP变化),编辑
/etc/netplan/01-netcfg.yaml(文件名可能因版本略有不同):network: version: 2 ethernets: ens33: # 网卡名称,需通过ip a确认 dhcp4: no addresses: [192.168.1.100/24] # 静态IP gateway4: 192.168.1.1 nameservers: addresses: [8.8.8.8, 114.114.114.114]执行
sudo netplan apply使配置生效,并设置主机名(sudo hostnamectl set-hostname server-name)及时区(sudo timedatectl set-timezone Asia/Shanghai)。
系统管理与日常运维
Ubuntu服务器的管理核心在于命令行工具,以下是常用操作及命令总结:

用户与权限管理
- 创建用户:
sudo adduser username,设置密码并分配sudo权限(默认将用户加入sudo组)。 - 禁用root登录:编辑
/etc/ssh/sshd_config,将PermitRootLogin yes改为no,重启SSH服务(sudo systemctl restart ssh)。 - 文件权限:使用
chmod(修改权限)、chown(修改所有者),如sudo chmod 755 /var/www(所有者读写执行,组和其他用户读执行)。
进程与服务管理
- 进程监控:
ps aux查看所有进程,top/htop实时监控资源占用(htop需安装:sudo apt install htop)。 - 服务控制:通过
systemctl管理服务,如sudo systemctl start nginx(启动)、sudo systemctl enable nginx(开机自启)、sudo systemctl status nginx(查看状态)。
软件包管理
Ubuntu基于Debian,使用apt包管理工具,常用命令如下:
| 功能 | 命令示例 | 说明 |
|---|---|---|
| 更新软件包列表 | sudo apt update |
从源获取最新包信息 |
| 升级已安装包 | sudo apt upgrade |
升级所有可升级包 |
| 安装软件包 | sudo apt install nginx |
安装Nginx |
| 卸载软件包 | sudo apt remove nginx |
卸载Nginx(保留配置文件) |
| 清理缓存 | sudo apt autoremove && sudo apt clean |
删除无用依赖和缓存 |
安全加固实践
服务器安全是运维的重中之重,Ubuntu服务器需从以下方面加固:
- 防火墙配置:使用
ufw(Uncomplicated Firewall),默认允许SSH:sudo ufw enable sudo ufw allow 22/tcp # 允许SSH sudo ufw allow 80/tcp # 允许HTTP(如部署Web服务) sudo ufw deny 443/tcp # 禁用HTTPS(如未使用)
- SSH安全增强:
- 禁用密码登录,改用密钥认证:编辑
/etc/ssh/sshd_config,设置PasswordAuthentication no,将公钥(~/.ssh/id_rsa.pub)添加到~/.ssh/authorized_keys。 - 修改默认SSH端口(如2222),减少暴力破解风险。
- 禁用密码登录,改用密钥认证:编辑
- 定期更新与漏洞扫描:
- 设置自动更新:安装
unattended-upgrades(sudo apt install unattended-upgrades),配置/etc/apt/apt.conf.d/50unattended-upgrades启用安全更新。 - 漏洞扫描:使用
lynis(sudo apt install lynis),执行sudo lynis audit system生成安全报告。
- 设置自动更新:安装
- 日志监控:通过
journalctl -u ssh查看SSH登录日志,结合fail2ban防暴力破解(安装sudo apt install fail2ban,配置/etc/fail2ban/jail.local)。
常见服务部署示例
Web服务器(Nginx + PHP)
# 安装Nginx和PHP sudo apt install nginx php-fpm php-mysql -y # 启动Nginx并设置开机自启 sudo systemctl start nginx && sudo systemctl enable nginx # 测试PHP:创建测试文件 echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php # 访问http://服务器IP/info.php验证
数据库服务器(MySQL)
# 安装MySQL服务器 sudo apt install mysql-server -y # 安全配置(设置root密码、移除匿名用户等) sudo mysql_secure_installation # 登录MySQL并创建用户 sudo mysql -u root -p CREATE DATABASE 'mydb' DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword'; GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'localhost'; FLUSH PRIVILEGES; EXIT;
容器化部署(Docker)
# 安装Docker curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh # 将用户加入docker组(避免sudo) sudo usermod -aG docker $USER # 重启后生效,验证安装 docker run hello-world
性能优化与维护
- 资源监控:使用
htop监控CPU/内存,df -h查看磁盘使用率,iotop监控磁盘I/O。 - 磁盘优化:
- 文件系统选择:XFS适合大文件,ext4通用性强,可通过
mkfs.xfs /dev/sdb1格式化新磁盘。 - Swap调整:若内存不足,可创建Swap文件(
sudo fallocate -l 2G /swapfile,sudo chmod 600 /swapfile,sudo mkswap /swapfile,sudo swapon /swapfile,并添加到/etc/fstab)。
- 文件系统选择:XFS适合大文件,ext4通用性强,可通过
- 备份策略:使用
rsync增量备份,例如每日备份/var/www到/backup:sudo rsync -avz --delete /var/www/ /backup/www/
定期备份重要数据(数据库、配置文件),并异地存储。
相关问答FAQs
Q1:Ubuntu服务器如何设置自动更新?
A1:可通过安装unattended-upgrades实现安全更新自动安装,步骤如下:

- 安装软件包:
sudo apt install unattended-upgrades。 - 配置自动更新:编辑
/etc/apt/apt.conf.d/50unattended-upgrades,取消注释Unattended-Upgrade::Origins-Pattern部分,确保包含"${distro_id}:${distro_codename}-security"(仅安全更新)或全部更新。 - 启用定时任务:编辑
/etc/apt/apt.conf.d/10periodic,设置APT::Periodic::Unattended-Upgrade "1";(每日检查)。 - 重启服务:
sudo systemctl restart unattended-upgrades。
Q2:如何监控Ubuntu服务器的磁盘使用情况?
A2:可通过多种工具监控磁盘使用情况:
- df命令:查看文件系统整体使用率,
df -h以人类可读格式显示(如G、M)。 - du命令:查看目录/文件占用空间,
du -sh /var/www显示/var/www总大小,du -sh *查看子目录大小。 - ncdu工具:交互式磁盘分析器,安装
sudo apt install ncdu,执行ncdu /var/www进入可视化界面,可按大小排序并删除无用文件。 - 监控告警:结合
logrotate或自定义脚本,当磁盘使用率超过阈值(如80%)时发送邮件告警。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/40048.html