You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多
文档控制台
免费开始使用

如何在远程Linux Web服务器创建60个具备软件安装权限的用户?

班级远程PC多用户部署的权限与管理方案

嘿,针对你们班级这个远程PC多用户部署的需求,我整理了一套实用的方案,既能满足每个学生独立操作的需求,又能帮管理员减轻软件安装的负担,一起来看看:

一、高效批量创建60个学生用户

手动一个个创建用户太浪费时间,用命令行批量处理就很省心:

  • 先准备一个文本文件student_users.txt,每行写一个学生的用户名(比如s001s002...或者学生真实姓名缩写)
  • 用循环脚本批量创建用户(以Linux系统为例,Windows可以用PowerShell脚本实现类似逻辑):
    # 先创建一个统一的学生用户组
    groupadd students
    
    # 循环读取用户名并创建用户,同时加入students组
    while read username; do
        useradd -m -s /bin/bash -g students $username
        passwd $username  # 设置初始统一密码,之后提醒学生自行修改
        chage -d 0 $username  # 强制用户首次登录时修改密码,提升安全性
    done < student_users.txt
    
  • 这里的-m参数会自动为每个用户生成独立的家目录/home/username,默认权限是仅该用户可读写,刚好满足每位学生访问、修改、删除自身数据的需求。

二、软件安装权限的两种优化方案

方案1:赋予学生有限的自助安装权限(彻底减轻管理员负担)

如果不想让管理员处理所有软件安装请求,可以给学生开放有限的软件安装权限,同时避免给root权限带来风险:

  • visudo命令编辑sudoers配置文件(一定要用这个命令,防止语法错误导致sudo失效):
    visudo
    
  • 在文件末尾添加以下配置(以Debian/Ubuntu系统为例):
    %students ALL=(ALL) NOPASSWD: /usr/bin/apt install, /usr/bin/apt remove, /usr/bin/apt update
    
    这样整个students组的用户都能无需密码执行apt的安装、卸载和更新命令,但无法修改系统核心配置,既满足学生安装软件的需求,又把权限控制在安全范围内。

方案2:可控的批量申请+管理员集中处理(兼顾稳定性与效率)

如果担心学生乱装软件影响系统稳定性,可以搭建一个轻量的申请流程:

  • 用简单的工具(比如Python Flask、PHP)做一个网页表单,让学生提交需要安装的软件名称、版本
  • 管理员每天固定时间查看请求,整理成批量安装命令一次性处理:
    apt install python3-pip nodejs mysql-client -y
    
  • 可以提前维护一个允许安装的软件清单,学生只能申请清单内的软件,大幅减少审核成本。

三、额外的安全与维护建议

  • 开启防火墙:只开放必要的端口(比如SSH远程连接端口、你们部署Web项目的端口),避免公网IP暴露过多风险
  • 定期备份用户数据:每周用tar批量备份所有学生的家目录,防止数据丢失:
    tar -czf /backup/student_home_$(date +%Y%m%d).tar.gz /home/*
    
  • 监控系统资源:用htop或者top命令定期查看CPU、内存使用情况,避免个别学生的操作导致系统卡顿

内容的提问来源于stack exchange,提问作者user8874182

火山引擎 最新活动