配置Ubuntu服务器,核心是先选对版本,然后完成系统更新、SSH密钥认证和防火墙配置,再根据需求安装服务组件。 下面我把整个流程拆成几个关键模块,从准备到上线每一步都讲清楚,确保你跟着操作就能搞定。参考2
Ubuntu服务器配置步骤详解
无论你用的是物理机还是云服务器,配置Ubuntu服务器的基础流程都差不多,按顺序来,避免遗漏。
选择Ubuntu版本
- 首选LTS版本,比如22.04或24.04,Ubuntu官方提供5年安全更新,适合生产环境。
- 服务器版不含图形界面,节省内存和CPU资源,安装包只有几百MB。
- 获取镜像:官网直接下载,或者从简米云、清华镜像站拉取,国内用户速度更快。
- 安装时注意磁盘分区,建议单独划分
/var和/home,方便后期维护。
初始系统设置
- 安装完成后用初始用户登录,立刻修改密码或创建新用户。
- 更新软件源:
sudo apt update && sudo apt upgrade -y,确保系统包是最新的。 - 设置时区:
sudo timedatectl set-timezone Asia/Shanghai,避免日志时间错乱。 - 配置主机名:
sudo hostnamectl set-hostname your-server,便于识别。 - 检查网络:
ping -c 4 baidu.com,确认连接正常。
用户与权限管理
- 创建普通用户并赋予sudo权限:
sudo adduser username,然后sudo usermod -aG sudo username。 - 日常操作用这个用户,避免直接用root。
- 设置sudo免密码(可选):
sudo visudo,添加username ALL=(ALL) NOPASSWD:ALL,方便自动化脚本。
网络配置
- 云服务器通常默认DHCP,静态IP需编辑
/etc/netplan/下的配置文件。 /etc/netplan/00-installer-config.yaml,设置
dhcp4: no并填入addresses、gateway和nameservers。- 应用配置:
sudo netplan apply。 - 确认DNS解析正常,修改
/etc/resolv.conf或通过netplan指定。
Ubuntu服务器配置安全加固指南
很多人在找Ubuntu服务器配置教程时,会忽略安全部分,导致后期被入侵,以下操作必须做。
SSH安全配置
- 修改默认端口:编辑
/etc/ssh/sshd_config,将#Port 22改为Port 自定义端口号(如2222)。 - 禁止root登录:设置
PermitRootLogin no。 - 使用密钥对:
ssh-keygen -t ed25519生成,然后ssh-copy-id user@ip,最后关闭密码登录:PasswordAuthentication no。 - 重启SSH服务:
sudo systemctl restart sshd。 - 注意:修改端口后,防火墙要放行新端口,否则自己会连不上。
防火墙规则设置
- 启用ufw:
sudo ufw enable,默认拒绝入站、允许出站。 - 放行必要端口:
sudo ufw allow 80/tcp、sudo ufw allow 443/tcp,以及自定义SSH端口。 - 查看规则:
sudo ufw status verbose。 - 如果使用iptables,规则更灵活,但ufw对新手更友好。
自动安全更新
- 安装unattended-upgrades:
sudo apt install unattended-upgrades。 - 配置自动更新:
sudo dpkg-reconfigure --priority=low unattended-upgrades,选择“是”。 - 只更新安全补丁,不自动更新内核和第三方软件,避免意外中断。
入侵检测轻量方案
- 安装fail2ban:
sudo apt install fail2ban。 - 默认配置保护SSH,可自定义规则,比如禁止连续失败5次的IP。
- 启动服务:
sudo systemctl enable fail2ban && sudo systemctl start fail2ban。
- 检测日志:
sudo fail2ban-client status sshd,查看封禁情况。
Ubuntu服务器配置性能优化建议
根据业务类型调整内核参数,能提升响应速度和吞吐量。
内核参数优化
- 编辑
/etc/sysctl.conf,添加以下内容:net.core.somaxconn = 65535,提高TCP连接队列长度。net.ipv4.tcp_fin_timeout = 30,缩短TIME_WAIT时间。vm.swappiness = 10,减少swap使用,优先用物理内存。
- 生效:
sudo sysctl -p。 - 注意:不要盲目复制参数,结合具体应用微调。
磁盘I/O优化
- 文件系统选择:ext4兼容性好,xfs适合大文件和大容量。
- 挂载选项增加
noatime,减少磁盘写操作:sudo mount -o remount,noatime /。 - 如果使用SSD,启用TRIM:
sudo systemctl enable fstrim.timer。 - 使用
iotop或iostat监控磁盘负载,定位瓶颈。
内存管理
- 调整
vm.dirty_ratio和vm.dirty_background_ratio,控制脏页写入频率。 - 对于数据库或高并发应用,考虑调大
vm.max_map_count。 - 使用
free -h和top观察内存使用,避免OOM Killer误杀进程。
企业场景下的Ubuntu服务器配置方案
企业级应用对稳定性和可维护性要求更高,配置时需要关注标准化和监控。
Web服务器部署
- 安装Nginx:
sudo apt install nginx,配置虚拟主机,区分多个网站。 - 启用HTTPS:使用Let‘s Encrypt免费证书,Certbot自动续签。
- 调整worker进程数:
worker_processes auto,根据CPU核心数自动匹配。 - 设置缓存和压缩,提升静态资源加载速度。
数据库服务器配置
- 安装MySQL或PostgreSQL,建议使用官方源而非Ubuntu默认源,版本更新。
- 优化缓冲区:
innodb_buffer_pool_size设为物理内存的70%左右。 - 限制连接数,避免资源耗尽:
max_connections = 500。 - 开启慢查询日志,定期分析索引使用情况。
容器化环境
- 企业常用Docker,安装:
sudo apt install docker.io。 - 配置镜像加速:在
/etc/docker/daemon.json中写入国内镜像地址,如"registry-mirrors": ["https://docker.mirrors.ustc.edu.cn"]。 - 使用
docker-compose编排多个服务,简化部署。 - 注意容器网络隔离,不要直接暴露宿主机端口。
服务器Ubuntu配置常见问题解答
问题1: 配置Ubuntu服务器时选择哪个版本最好?
推荐最新的LTS版本,比如22.04或24.04,LTS版本有5年官方支持,稳定性经过验证,非LTS版本仅支持9个月,不适合生产环境,如果追求新软件,可以在LTS基础上添加PPA源。
问题2: 云服务器Ubuntu配置与本地服务器有何区别?
云服务器通常自带虚拟化层,网卡和防火墙需参考云平台文档,简米云的安全组规则独立于系统防火墙,两者都要配置,本地服务器可以自由选择硬件,但需自行管理网络和电源,系统配置层面,更新、用户管理、安全设置完全一致。
问题3: Ubuntu服务器配置价格主要受哪些因素影响?
硬件配置是核心,CPU核心数、内存容量、磁盘类型(SSD vs HDD)直接决定成本,云服务器按小时或月计费,流量和带宽单独计算;本地服务器一次性投入较高,但长期使用成本更低,国内主流云平台2核4G配置月费大约在100-300元之间,具体取决于促销和地域。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/520283.html


