天天看点

使用sudo进入root权限,以及防止root密码被恶意篡改

一、前言

        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