当前位置: 首页 > news >正文

su 命令:一键切换用户身份、提高su命令安全性的建议

一、命令简介

su ​命令是 Linux 和 Unix 系统中的一个实用工具,用于切换用户身份。它允许当前登录用户在不退出登录会话的情况下,切换到另一个用户的身份。通常,su ​用于从普通用户切换到 root 用户,或从 root 用户切换到其他用户。

二、命令参数

su ​命令支持多个参数,以下是一些常用的参数:

  • -​:使用登录 shell,加载目标用户的环境变量和启动文件。
  • -c command​:执行指定的命令后返回到原来的用户。
  • -l​ 或 --login​:与 - ​相似,强制 su ​使用登录 shell。
  • -m​ 或 --preserve-environment​:保留当前用户的环境变量。
  • -s shell​:指定要使用的 shell。
  • -p​:不更改环境变量。

三、命令示例

  • 切换到 root 用户:

    su -
    
  • 以用户 john ​的身份执行 ls ​命令:

    su -c 'ls /home/john' john
    
  • 切换到用户 alice ​并使用 bash ​作为 shell:

    su -s /bin/bash alice
    

提高 su 命令的安全性

提供以下参考,自己用就别瞎折腾。

  • 使用 sudo:尽量使用 sudo ​命令执行需要超级用户权限的命令,而不是直接切换到 root 用户。

  • 限制 su 的使用:在 /etc/pam.d/su ​中配置 PAM 模块,只允许特定用户或用户组使用 su​。

    auth required pam_wheel.so use_uid
    
  • 设置强密码:确保所有用户,尤其是 root 用户,使用强密码。

  • 审计 su 命令:启用审计功能,记录所有 su ​命令的使用情况。

    auditctl -w /usr/bin/su -p x -k su_commands
    
  • 密钥认证:对于远程登录,使用基于密钥的认证,减少密码认证的使用。

http://www.lryc.cn/news/447316.html

相关文章:

  • 观察者模式(发布-订阅模式)
  • 耦合微带线单元的网络参量和等效电路公式推导
  • elasticsearch的Ingest Attachment插件的使用总结
  • SemiDrive E3 MCAL 开发系列(4) – Gpt 模块的使用
  • 前端导出页面PDF
  • Jenkins的安装
  • 初学51单片机之I2C总线与E2PROM
  • C语言数组探秘:数据操控的艺术【下】
  • Jmeter关联,断言,参数化
  • 嵌入式单片机底层原理详解
  • 重修设计模式-行为型-责任链模式
  • Vercel部署/前端部署
  • 常见的css预处理器
  • mysql—半同步模式
  • You are not allowed to push code to this project
  • Java刷题:最小k个数
  • Redis实战--Redis应用过程中出现的热门问题及其解决方案
  • 实时数字人DH_live使用案例
  • 线上环境排故思路与方法GC优化策略
  • 硬件设计很简单?合宙低功耗4G模组Air780E—开机启动及外围电路设计
  • 初试AngularJS前端框架
  • 【学习笔记】手写 Tomcat 六
  • 打靶记录18——narak
  • LabVIEW编程能力如何能突飞猛进
  • 代码随想录算法训练营第四四天| 1143.最长公共子序列 1035.不相交的线 53. 最大子序和 392.判断子序列
  • 2024.9.26 作业 +思维导图
  • WSL进阶体验:gnome-terminal启动指南与中文显示问题一网打尽
  • recoil和redux之间的选择
  • 无人机的作战指挥中心-地面站!
  • Vue 23进阶面试题:(第八天)