Ubuntu服务器配置新手如何高效完成基础搭建?

Ubuntu服务器配置是企业级应用和个人项目部署的基础,涉及系统初始化、安全加固、服务部署等多个环节,本文将详细讲解从基础环境到核心服务的完整配置流程,帮助用户快速搭建稳定、安全的Ubuntu服务器环境。

ubuntu服务器配置

系统初始化与基础更新

服务器首次启动后,需先完成系统初始化配置,首先更新软件包列表和已安装的软件包,确保系统组件为最新版本,避免因版本过旧导致的安全漏洞或兼容性问题,执行以下命令:

sudo apt update && sudo apt upgrade -y

更新完成后,清理本地缓存释放磁盘空间:

sudo apt autoremove -y && sudo apt autoclean

接下来设置服务器主机名,便于网络识别和管理:

sudo hostnamectl set-hostname your-server-name

最后检查系统内核版本和硬件信息,确保系统正常运行:

uname -r  # 查看内核版本
lscpu     # 查看CPU信息
free -h   # 查看内存使用情况
df -h     # 查看磁盘分区及使用情况

网络配置

服务器网络配置是稳定运行的核心,通常需要设置静态IP地址,避免DHCP动态分配导致的IP变动,以Ubuntu 22.04为例,网络配置文件位于/etc/netplan/目录下,假设配置文件为01-netcfg.yaml如下:

network:
  version: 2
  ethernets:
    eth0:  # 根据实际网卡名称修改,如ens33
      dhcp4: no
      addresses: [192.168.1.100/24]  # 静态IP及子网掩码
      gateway4: 192.168.1.1          # 网关地址
      nameservers:
          addresses: [8.8.8.8, 114.114.114.114]  # DNS服务器

配置完成后执行sudo netplan apply使配置生效,并通过ip a查看IP地址是否生效,不同Ubuntu版本的netplan配置语法略有差异,以下是常见版本对比:

Ubuntu版本 网络配置文件路径 配置语法特点
04 /etc/netplan/50-cloud-init.yaml 使用ethernets定义网卡,addresses为CIDR格式
04/22.04 /etc/netplan/01-netcfg.yaml 支持dhcp4: no/off,明确指定gateway4和nameservers
04 LTS /etc/netplan/00-installer-config.yaml 新增renderer参数,可选systemd或networkd

用户与权限管理

为避免直接使用root用户,建议创建新用户并赋予sudo权限,执行以下命令创建用户(例如deploy):

ubuntu服务器配置

sudo adduser deploy

将用户添加至sudo组(默认已存在sudo组):

sudo usermod -aG sudo deploy

验证sudo权限:切换至新用户su - deploy,执行sudo ls -la /root,输入密码后若能查看root目录内容,则权限配置成功。
若需禁用root SSH登录(提升安全性),修改SSH配置文件/etc/ssh/sshd_config,将PermitRootLogin yes改为PermitRootLogin no,保存后执行sudo systemctl restart sshd重启SSH服务。

SSH安全加固

SSH是远程管理服务器的核心入口,需通过以下配置提升安全性:

  1. 修改默认端口:避免默认22端口被暴力破解,编辑/etc/ssh/sshd_config,找到#Port 22,取消注释并修改为Port 2222(自定义端口,建议使用1024-49151之间的高位端口)。
  2. 禁用密码登录,启用密钥认证:生成SSH密钥对(本地机器执行):
    ssh-keygen -t rsa -b 4096 -f ~/.ssh/server_key

    将公钥上传至服务器:

    ssh-copy-id -i ~/.ssh/server_key.pub deploy@your-server-ip

    服务器端修改/etc/ssh/sshd_config,设置PasswordAuthentication noPubkeyAuthentication yes,重启SSH服务。

  3. 限制登录用户:在/etc/ssh/sshd_config中添加AllowUsers deploy admin(仅允许deploy和admin用户登录),拒绝其他用户访问。

防火墙配置

Ubuntu默认使用UFW(Uncomplicated Firewall)管理防火墙,启用后需开放必要端口(如SSH、HTTP、HTTPS),执行以下命令:

sudo ufw enable  # 启用防火墙(默认拒绝所有入站连接)
sudo ufw allow 2222/tcp  # 允许自定义SSH端口
sudo ufw allow 80/tcp    # 允许HTTP
sudo ufw allow 443/tcp   # 允许HTTPS
sudo ufw default deny incoming  # 默认拒绝入站
sudo ufw default allow outgoing  # 默认允许出站

查看防火墙状态:sudo ufw status,以下是常用端口及服务对应表:

ubuntu服务器配置

端口号 服务 用途
22/2222 SSH 远程服务器管理
80 HTTP 网站访问(HTTP协议)
443 HTTPS 加密网站访问(SSL/TLS)
3306 MySQL 数据库连接
6379 Redis 缓存服务连接
8080 Tomcat/Nginx Web应用服务端口

核心服务部署

安装Web服务器(以Nginx为例)

sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx  # 设置开机自启

访问服务器IP地址,若看到Nginx欢迎页面,则安装成功,配置文件位于/etc/nginx/sites-available/,可创建新配置文件(如project.conf)部署网站。

安装数据库(以MySQL为例)

sudo apt install mysql-server -y
sudo mysql_secure_installation  # 安全配置(设置root密码、移除匿名用户等)

登录MySQL:sudo mysql -u root -p,创建数据库和用户:

CREATE DATABASE mydb 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;

安装PHP(以PHP 8.1为例)

sudo apt install php8.1-fpm php8.1-mysql php8.1-xml php8.1-gd -y
sudo systemctl restart nginx  # 重启Nginx以加载PHP模块

系统监控与日志管理

安装监控工具

  • htop:增强版进程监控工具
    sudo apt install htop -y
  • nmon:系统资源监控(CPU、内存、磁盘、网络)
    sudo apt install nmon -y
    nmon  # 运行后按c查看CPU,m查看内存,d查看磁盘,t查看网络

日志管理

系统日志默认存储在/var/log/目录,关键日志包括:

  • /var/log/syslog:系统日志
  • /var/log/auth.log:认证日志(SSH登录、sudo操作)
  • /var/log/nginx/error.log:Nginx错误日志
    配置日志轮转(自动清理旧日志),编辑/etc/logrotate.conf,添加自定义规则:

    /var/log/myapp/*.log {
      daily
      missingok
      rotate 7
      compress
      delaycompress
      notifempty
      create 644 deploy deploy
    }

相关问答FAQs

Q1:忘记root密码如何重置?
A:重置root密码需重启服务器进入恢复模式:

  1. 重启时按住Shift键(或根据GRUB菜单提示选择高级选项);
  2. 选择“root shell”进入命令行;
  3. 执行mount -o rw,remount /重新挂载根分区为可读写;
  4. 使用passwd root修改root密码,输入两次新密码;
  5. 执行exec /sbin/init或重启服务器,即可用新密码登录root账户。

Q2:配置静态IP后无法联网,如何排查?
A:按以下步骤排查:

  1. 检查IP配置是否正确:cat /etc/netplan/*.yaml确认IP、网关、DNS无误;
  2. 检查网卡状态:ip a查看网卡是否UP,ip link show eth0(替换为实际网卡名);
  3. 检查网关连通性:ping 192.168.1.1(替换为实际网关地址),若不通检查网线或网络设备;
  4. 检查DNS解析:ping 8.8.8.8若通但ping google.com不通,修改DNS为8.8.8.8或1.1.1.1;
  5. 应用配置:sudo netplan try测试配置,若有错误会提示,修复后执行sudo netplan apply

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

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

相关推荐

  • 魔兽世界该选什么服务器?国服/外服区别、推荐及新手必看指南?

    魔兽世界作为全球最成功的多人在线角色扮演游戏之一,其庞大的世界观和复杂的社交系统离不开服务器的支撑,服务器不仅承载着玩家的游戏数据,更直接影响着玩家的游戏体验、互动方式和玩法偏好,选择合适的服务器,是每个新玩家踏入艾泽拉斯大陆前的重要一步,而了解魔兽世界服务器的分类、特点及选择逻辑,则能帮助玩家更好地融入游戏世……

    6天前
    800
  • 网速慢?测带宽!

    服务器带宽直接影响网站访问速度、文件传输效率和用户体验,实际带宽常因线路质量、路由节点、服务商限制等因素低于理论值,精准测试可帮助您:✅ 验证服务商承诺的带宽真实性✅ 定位网络瓶颈(如丢包、延迟)✅ 为业务扩容提供数据支撑✅ 优化CDN及服务器部署策略专业测试方法(附操作指南)本地到服务器测试(常用工具)ipe……

    2025年7月25日
    1600
  • 如何通过命令重启Linux服务器?步骤与注意事项详解

    在Linux服务器管理中,重启操作是一项基础但关键的任务,通常用于应用系统更新、内核升级、服务配置生效或解决系统故障等问题,正确的重启流程不仅能确保操作安全,还能避免数据丢失或服务中断,本文将详细讲解Linux服务器重启的常用命令、适用场景、操作步骤及注意事项,帮助管理员高效完成重启任务,重启Linux服务器的……

    6天前
    900
  • 服务器的系统版本

    器的系统版本多样,常见的有 Linux 发行版如 Ubuntu、Cent

    2025年8月18日
    800
  • fc服务器

    服务器即光纤通道存储服务器,用于连接存储设备与服务器,实现高速

    2025年8月17日
    700

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信