首页 > 系统相关 >Linux禁止某个sudo用户修改root密码

Linux禁止某个sudo用户修改root密码

时间:2023-01-06 00:33:53浏览次数:84  
标签:sudo 用户 etc chattr usr Linux root user

(1) 假设被禁止的sudo用户名为 user

(2) 禁止user用户使用passwd命令更改密码(非最终配置)

vim /etc/sudoers

加入

user ALL=(root)!/usr/bin/passwd

说明:

第一栏 规定它的适用对象:用户或组,就本例来说,它是用户user (因为系统中的组和用户可以重名,要想指定该规则的适用对象是组而非用户的话,组对象的名称一定要用百分号%开头)

第二栏 指定该规则的适用主机。当我们在多个系统之间部署sudo环境时,这一栏格外有用,这里的ALL代表所有主机 (对于桌面系统或不想将sudo部署到多个系统的情况,这一栏就换成相应的主机名)

第三栏 的值放在括号内,指出第一栏规定的用户能够以何种身份来执行命令。本例中该值设为root,这意味着用户user能够以root用户的身份来运行后面列出的命令。该值也可以设成通配符ALL,user便能作为系统中的任何用户来执行列出的命令了。

最后一栏(即!/usr/bin/passwd)是使用逗号分开的命令表,这些命令能被第一栏规定的用户以第三栏指出的身份来运行它们。本例中,该配置不允许user作为超级用户运行/usr/bin/passwd命令 (”!”表示该用户不能执行后面的命令)。

注意:这里列出的命令一定要使用绝对路径。

(3) 禁止user用户使用passwd命令更改密码(最终配置实例)

(a)登陆 root 用户在 sudoers 文件中添加 (vim /etc/sudoers)

user ALL=(root) /sbin/*,/usr/bin/*,!/usr/bin/chattr,!/usr/bin/passwd,!/usr/sbin/visudo,!/usr/sbin/useradd,!/usr/sbin/adduser,!/usr/sbin/userdel,!/usr/sbin/deluser

(b)所有sudo开个头的文件或文件夹添加 i 属性(不得任意更动文件或目录):

chattr +i /etc/sudo.conf
chattr +i /etc/sudoers
chattr +i /etc/sudoers.d/
chattr +i /etc/sudo-ldap.conf

(4) 其他设置

(a) 解锁文件

chattr -i /etc/sudo.conf
chattr -i /etc/sudoers
chattr -i /etc/sudoers.d/
chattr -i /etc/sudo-ldap.conf

(b) 给普通用户添加sudo权限,并且使用时不用输入密码(非必要,保留记录)

vim /etc/sudoers

加入

用户名 ALL=(ALL) NOPASSWD: ALL

原文链接:https://mp.weixin.qq.com/s/55ipw5jaaSa3SjN2ldGi1Q

标签:sudo,用户,etc,chattr,usr,Linux,root,user
From: https://www.cnblogs.com/peakgrin/p/17029250.html

相关文章

  • Linux下安装Jdk
    Linux下安装Jdk安装包下载JDK各版本下载地址:JDK下载地址java-8u202安装包:点击下载开始安装在Linux中安装jdk非常简单,只需将对应的安装包解压到需要安装的目录即可。#......
  • 自学Linux,你需要get哪些点?
    近些年来,Linux操作系统越来越受欢迎,它的开源、免费是亮点也是优点,并且稳定性和安全性也得到认可,还有Linux有很多版本供大家选择,可以定制化。据我所知,现在很多公司的开发项......
  • linux查看登录用户及踢掉用户
    想查看有多少人在连接当前linux服务器,可以使用w命令显示已经登陆系统的用户列表上图可以看到,当前有两个用户在连接,tty1是终端连接此时如果想踢掉终端用户必须要拥有root......
  • linux文件保护命令chattr
    chattr命令用来设置文件属性的一个工具,与chmod和chown不同,chattr命令主要是用来提高系统文件的安全性,对相应的文件进行锁定,可以很有效的防止误删除误操作,与chattr对应的命......
  • linux 下 mongodb 安装
    linux下mongodb安装地址https://www.mongodb.com/try/download/community选择版本和环境需要下载2个包,mongod和shellpackage选择service复制链接,再选择sh......
  • Linux时间戳转换成易读格式的方法
    背景最近一直在学习Redis相关的知识.其中遇到了一个redismonitor的命令但是这里有一个问题是:原生命令查询出来的时间是Unix时间戳格式的.不太好发现查看与进行对照......
  • Linux运维
    Linux1.查看内存、CPU1.内存消耗最多的前10个进程:psauxw|head-1;psauxw|sort-rn-k4|head-102.CPU占用最多的前10个进程:psauxw|head-1;psauxw|sort-r......
  • Linux学习笔记(五)
    (1)关闭Ubuntu大版本更新提示aptpurge update-notifier(2)ssh代理及反向代理ssh-Lssh-R(3)mysql密码登录mysql-uroot-pmysqldump-uroot-p-all-databases>1.sq......
  • linux清理磁盘
    可以看到我的boot已经占8%了下面开始清理使用du-h命令查看是哪些文件占用的空间[root@server1/]#cd/boot/看到这个文件./initramfs-3.10.0-1160.el7.x86_64.......
  • 封装HttpUtils类,根据实际业务返回值 封装JsonRootBean 对象
    packagecom.tf.jcfx.util;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.List;importjava.util.Map;importorg.apache.commons.logging.Log;......