温馨提示×

Ubuntu Minimal多用户配置教程

小樊
35
2025-12-20 10:19:16
栏目: 智能运维

Ubuntu Minimal 多用户配置教程

一 环境准备与原则

  • 目标系统为Ubuntu Minimal(服务器/云镜像/最小化安装),默认禁用 root 登录,首次安装会创建一个具有 sudo 提权的普通用户。后续所有管理操作均在该普通用户下通过 sudo 完成。若需远程访问,建议安装并配置 OpenSSH Server

二 基础配置流程

  • 更新索引与基础软件
    • 执行:sudo apt update && sudo apt full-upgrade -y && sudo apt install -y openssh-server ufw
  • 创建用户与家目录
    • 交互式创建:sudo adduser alice(会自动创建 /home/alice 并设置密码)
    • 批量或脚本创建:echo "bob:Passw0rd" | sudo chpasswd
  • 赋予管理员权限
    • 加入 sudo 组:sudo usermod -aG sudo alice
    • 或编辑 sudoers:sudo visudo,添加行 alice ALL=(ALL:ALL) ALL
  • 配置 SSH 远程登录
    • 启用服务:sudo systemctl enable --now ssh
    • 安全基线(/etc/ssh/sshd_config):PermitRootLogin no,按需设置 PasswordAuthentication yes|no
    • 重启服务:sudo systemctl restart ssh
  • 防火墙放行
    • 放行 SSH:sudo ufw allow 22/tcp && sudo ufw enable
  • 验证
    • 本机:id alicegroups alice
    • 远程:ssh alice@<服务器IP> 测试登录与 sudo 提权

三 用户与权限管理要点

  • 用户与组
    • 创建组:sudo groupadd devs
    • 加入组:sudo usermod -aG devs alice
    • 查看:cat /etc/group | grep devs
  • 目录与权限
    • 家目录默认权限通常为 755,如需仅属主访问:sudo chmod 700 /home/alice
    • 共享目录示例:sudo mkdir -p /data/share && sudo chown alice:devs /data/share && sudo chmod 2775 /data/share(设置 setgid 使新建文件继承组)
  • 账号启停与删除
    • 禁用/启用:sudo passwd -l alicesudo passwd -u alice
    • 删除用户:sudo userdel -r alice(连同家目录与邮件假脱机一并删除)
  • 最小权限原则
    • 仅对需要维护的账户授予 sudo,日常使用普通账户;共享资源通过用户组目录权限控制。

四 远程访问与安全加固

  • SSH 安全基线
    • 禁用 root 登录:PermitRootLogin no
    • 认证方式:仅密钥登录建议 PasswordAuthentication no;如用口令,确保复杂度与定期更换
    • 可选:更改端口 Port 2222 并放行防火墙;限制登录用户 AllowUsers alice bob
  • 防火墙与端口
    • 仅开放必要端口:sudo ufw allow 22/tcp(或自定义端口),sudo ufw default deny incoming
  • 系统更新与日志
    • 定期更新:sudo apt update && sudo apt full-upgrade -y
    • 关键日志:/var/log/auth.log(SSH 登录审计)、/var/log/syslog
  • 最小化服务
    • 未使用的服务与端口保持关闭,减少攻击面。

五 常见问题与排错

  • 新建用户无家目录或登录 Shell
    • 指定创建:sudo adduser --shell /bin/bash --create-home carol
  • 误删用户但需保留数据
    • 先停用:sudo passwd -l olduser;确认无业务后再 sudo userdel olduser
  • 组成员不生效
    • 重新登录或刷新组:newgrp devs;检查:groups <用户名>
  • SSH 连不上
    • 检查服务:sudo systemctl status ssh,云安全组/本机防火墙是否放行 22/TCP,以及 sshd_config 配置是否生效
  • 权限冲突
    • 家目录过严导致管理员无法维护:sudo chmod 755 /home/alice;共享目录使用组权限与 setgid 管理。

0