博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用sudo进入root权限,以及防止root密码被恶意篡改
阅读量:6987 次
发布时间:2019-06-27

本文共 1816 字,大约阅读时间需要 6 分钟。

一、前言

        sudo是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,减少了root用户的登陆和管理时间,提高了安全性。Sudo不是对shell的一个代替,它是面向每个命令的。

        而防止root用户密码被恶意更改,主要是用户基本上都是su - 切换到root,假如有很多人知道root账号和密码,那么就会出现很多问题,也就不知道是谁干的坏事,log里面查看的都是root用户,防止root被恶意更改,为了更好的管理用户权限。

二、特点

       Sudo能够限制用户只在某台主机上运行某些命令。 
       Sudo提供了丰富的日志,详细地记录了每个用户干了什么。它能够将日志传到中心主机或者日志服务器。
       Sudo确保root密码不会被遗忘,配置一个具有sudo权限的用户,切换到root就可以修改。
       Sudo使用时间戳文件来执行类似的“检票”系统。当用户调用sudo并且输入它的密码时,用户获得了一张存活期为5分钟的票(这个值可以在编译的时候改变)。 
       Sudo的配置文件是sudoers文件,它允许系统管理员集中的管理用户的使用权限和使用的主机。它所存放的位置默认是在/etc/sudoers,属性必须为0411。

三、配置sudo

1、查看系统是否安装Sudo

[kuangl@jw-web02 root]$ rpm -qa |grep sudo
sudo-1.7.2p1-10.el5

 2、新建一个系统管理用户kuangl,以root用户操作;

[root@jw-web02 ~]# useradd kuangl
[root@jw-web02 ~]# passwd kuangl
Changing password for user kuangl.
New UNIX password: 
BAD PASSWORD: it is based on a (reversed) dictionary word
Retype new UNIX password: 
passwd: all authentication tokens updated successfully. 

3、将kuangl用户赋予root权限;

[root@jw-web02 ~]# visudo 

在文件内容后面添加

kuangl      ALL=(ALL)     

如果不想在sudo的时候输入密码,干脆就把上面那行换成下面这行即可:

kuangl     ALL=(ALL)          NOPASSWD: ALL

 4、测试 Sudo

[root@jw-web02 ~]# sudo whoami
root                                                     //如果配置正确,命令会返回root字样

5、切换到root

[kuangl@jw-web02 root]$ sudo su -          //切换到root  
[root@jw-web02 ~]# su kuangl                 //切换到赋予的用户

四、防止Root密码被恶意篡改

1、添加admin组;

[root@jw-web02 ~]# groupadd admin

2、添加用户;

[root@jw-web02 ~]# useradd  linda

[root@jw-web02 ~]# useradd  rongw

3、将用户添加到admin组;

[root@jw-web02 ~]# usermod -a -G admin linda

[root@jw-web02 ~]# usermod -a -G admin rongw

4、在sudoers文件添加admin组,让这个组的用户权限和root一样。

vim /etc/sudoers

密码由自己设置和保管,相互之间不知道其他组的密码,这样子每个人员都有了sudo权限,而每个用户所做的事情基本可以通过日志查询得到。

五、备注:

[root@jw-index conf]# useradd kuangl
bash: useradd: command not found

为什么会出现bash: useradd: command not found 这个问题呢?原因如下:

sudo su 只是获得root用户的权限;
sudo su -  不仅获得root用户的权限,而且还执行root的profile来执行root的环境变量。

 

 

本文转自 kuangling 51CTO博客,原文链接:http://blog.51cto.com/kling/1167541

转载地址:http://ucnpl.baihongyu.com/

你可能感兴趣的文章
Python 发送邮件
查看>>
程序员的职业发展:技术路线 v.s. 管理路线?
查看>>
我的友情链接
查看>>
Sybase 12.5数据库安装,删除以及连接字符串问题
查看>>
Get HBA Driver lpfc
查看>>
ESXi hosts and compatible VM hardware versions
查看>>
Django入门(四) 简单操作数据库
查看>>
如何创建和删除隐藏用户
查看>>
python中的内存管理
查看>>
编程题:用二维字符串数组实现。从键盘输入三个学生姓名,并输出。
查看>>
我的友情链接
查看>>
yum安装inxi,出现No package inxi available.Error: Nothing to do的解决方法
查看>>
redis配置文件详解
查看>>
PowerShell删除故障群集节点
查看>>
限制用户多点并发登录之二“脚本”篇
查看>>
一个数组实现两个栈
查看>>
Fedora 27 命令行提示符修改
查看>>
Erlang 简易安装和卸载
查看>>
Windows Server 2012 R2 DirectAccess功能测试(3)—App2服务器安装及配置
查看>>
Shell 十三问学习笔记2
查看>>