linux创建普通只读用户

复制代码
useradd -m -s /bin/bash lukai && \
echo 'Lukai@123!!' | passwd --stdin lukai && \
chmod 555 /home/lukai && \
mkdir -p /home/lukai/bin && \
for cmd in ls cat top ps df free tail journalctl; do \
    ln -s /bin/$cmd /home/lukai/bin/ 2>/dev/null || ln -s /usr/bin/$cmd /home/lukai/bin/ 2>/dev/null; \
done && \
echo 'export PATH=$HOME/bin' >> /home/lukai/.bash_profile

说明

  1. useradd -m -s /bin/bash lukai

    • 创建用户 lukai,创建 home 目录 /home/lukai,shell 为 /bin/bash
  2. echo 'Lukai@123!!' | passwd --stdin lukai

    • 批量设置密码
  3. chmod 555 /home/lukai

    • Home 目录只读,防止用户修改自己的文件或创建任意文件
  4. mkdir -p /home/lukai/bin

    • 创建白名单命令目录
  5. for cmd in ...; do ln -s ...; done

    • 只允许执行列出的命令,其他命令不存在 PATH 中

    • 例如 rmmvkilldockersystemctl 不在 PATH,无法执行

  6. echo 'export PATH=$HOME/bin' >> ~/.bash_profile

    • 登录时只加载白名单 PATH

✅ 用户登录后:

su - lukai

cd /

ls

cat /etc/passwd

top

ps aux

df -h

free -m

tail -f /var/log/messages

journalctl -xe

  • 所有命令可以用

  • 系统文件无法写入

  • rm /etc/passwddocker pssystemctl restart nginx 都会报 command not foundPermission denied

ubuntu版本

复制代码
sudo bash -c 'useradd -m -s /bin/bash lukai && \
echo "lukai:Lukai@123!!" | chpasswd && \
chmod 555 /home/lukai && \
mkdir -p /home/lukai/bin && \
for cmd in ls cat top ps df free tail journalctl; do \
    ln -s /bin/$cmd /home/lukai/bin/ 2>/dev/null || ln -s /usr/bin/$cmd /home/lukai/bin/ 2>/dev/null; \
done && \
echo "export PATH=$HOME/bin:\$PATH" >> /home/lukai/.bash_profile'
相关推荐
其实防守也摸鱼42 分钟前
GDB安装与配置(保姆级教程)【Linux、Windows系统】
linux·运维·windows·命令模式·工具·虚拟机·调试
Elastic 中国社区官方博客7 小时前
为 Elastic Cloud Serverless 和 Elasticsearch 引入统一的 API 密钥
大数据·运维·elasticsearch·搜索引擎·云原生·serverless
Agent手记7 小时前
制造业数字化升级:生产全流程企业级智能体落地解决方案 —— 基于LLM+超自动化全栈架构的智改数转深度实战
运维·ai·架构·自动化
云安全助手7 小时前
弹性云服务器+高防IP:让DDoS攻击不再是业务“生死劫”
运维·网络·安全
AC赳赳老秦7 小时前
OpenClaw二次开发实战:编写专属办公自动化技能,适配个性化需求
linux·javascript·人工智能·python·django·测试用例·openclaw
深色風信子8 小时前
Docker newapi
运维·docker·容器·newapi
mounter6258 小时前
【内核新动向】告别物理槽位束缚:深度解析 Linux Virtual Swap Space 机制
linux·内存管理·kernel·swap·virtual swap
handler018 小时前
从零实现自动化构建:Linux Makefile 完全指南
linux·c++·笔记·学习·自动化
2023自学中9 小时前
i.MX6ULL 板子的完整启动流程图(从上电 → 用户空间)
linux·嵌入式
闫利朋9 小时前
Ubuntu 24.04 桌面安装向日葵完整指南
linux·运维·ubuntu