千家信息网

su和sudo命令的使用及日志追踪

发表于:2024-11-24 作者:千家信息网编辑
千家信息网最后更新 2024年11月24日,su是英文"s'witch user"的缩写,即切换用户之意。su和su 指令加上"-"参数的区别:su指令不加任何参数,默认切换到root,但没有转到root用户家目录,这时虽然切换为root用户了
千家信息网最后更新 2024年11月24日su和sudo命令的使用及日志追踪

su是英文"s'witch user"的缩写,即切换用户之意。
su和su 指令加上"-"参数的区别:
su指令不加任何参数,默认切换到root,但没有转到root用户家目录,这时虽然切换为root用户了,但并没有切换到root的登陆环境(shell,环境变量),不能获取环境变量。su加上参数"-"是切换到用户root的登陆环境,获取root的环境变量及执行权限(切换到用户的变量)

su是转换到终极权限root后对权限没有限制行(su默认切换到root用户),sudo能把某些终极权限有针对性的下放,并且用户不用知道root密码,执行历程是当前用户切换到root,然后以root身份执行命令,执行完后直接退回当前用户。通过sudo配置文件"/etc/sudoers"进行授权。
sudo能够限制用户只在某台主机上运行某些命令。
sudo提供了丰富的日志,详细记录了每个用户做了什么,能够转到中心主机或日志服务器
sudo使用时间戳来文件来执行类似的""检票"系统。当用户调用sudo并输入它的密码时,用户获得一张存活期为5分钟的票(此值可在编译时指定)
sudo的配置文件是sudoers文件,它允许系统管理员集中的管理用户的使用权限和使用主机。位置/etc/sudoers,它的属性必须为0411。
sudo命令用来以其他身份来执行的命令,预设的身份为root
sudo与su的不同之处在于sudo仅在需要时授予用户权限,减少了用户因为错误执行损坏系统的可能性,sudo也可以用来以其他用户身份执行命令。此外sudo可以记录用户执行的命令,以及失败的特权获取

sudo的配置文件:
sudo的配置文件是"/etc/sudoers",不强烈建议直接编辑这个文件,而是通过visudo来编辑,因为使用visudo编辑后保存会进行语法检测,有问题会提示,避免出错。

别名记录在配置文件当中有四种:
Host_Alias
Cmnd_Alias
User_Alias
Runas_Alias
2:sudo的使用方法

首先我们分析一些字段

这句话的意思是说:
用户lifeng在mail这台服务器上可以以用户root的身份运行/usr/sbin/useradd这个命令
添加这一行 lifeng ALL=/usr/sbin/useradd

4.语法:

sudo [ -Vhl LvkKsHPSb ] │ [ -p prompt ] [ -c class│- ] [ -a auth_type ] [-u username│#uid ] command
5.参数:

-V
显示版本编号
-h
会显示版本编号及指令的使用方式说明
-l
显示出自己(执行 sudo 的使用者)的权限
-v
因为 sudo 在第一次执行时或是在 N 分钟内没有执行(N 预设为五)会问密码,这个参数是重新做一次确认,如果超过 N 分钟,也会问密码
-k
将会强迫使用者在下一次执行 sudo 时问密码(不论有没有超过 N 分钟)
-b
将要执行的指令放在背景执行
-p
prompt 可以更改问密码的提示语,其中 %u 会代换为使用者的帐号名称, %h 会显示主机名称
-u
username/#uid 不加此参数,代表要以 root 的身份执行指令,而加了此参数,可以以 username 的身份执行指令(#uid 为该 username 的使用者号码)
-s
执行环境变数中的 SHELL 所指定的 shell ,或是 /etc/passwd 里所指定的 shell
-H
将环境变数中的 HOME (家目录)指定为要变更身份的使用者家目录(如不加 -u 参数就是系统管理者 root )
command
要以系统管理者身份(或以 -u 更改为其他人)执行的指令

  1. sudo -i 切换用户身份到root

日志追踪:

2.1.创建sudo.log文件
touch /var/log/sudo.log
2./etc/rsyslog.conf配置文件最后面添加一行
local2.debug /var/log/sudo.log #空白处不能用空格键,必需用tab键
3./etc/ sudoers配置文件最后添加如下
Defaults logfile=/var/log/sudo.log
Defaults loglinelen=0
Defaults !syslog
4.重启syslog服务
[root@localhost .ssh]# service rsyslog restart
或者 /etc/init.d/rsyslog restart
5.确定进程
[root@localhost .ssh]# ps -aux |grep rsyslog
6.测试
测试账户使用sudo命令,在root用户查看是否有记录
[root@localhost .ssh]# tail -f /var/log/sudo.log

用户 文件 身份 切换 命令 参数 指令 权限 环境 配置 密码 使用者 系统 主机 变量 管理 日志 目录 服务 一行 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 不需分库分表数据库 无盘服务器网卡配置 阿里云服务器怎么一键还原 绛县腾亿互联网科技有限公司 计算机网络技术基础体温下降 三星 打开定位服务器地址 第四届网络安全中国论坛 在sql数据库中查看表 东北林业大学外文数据库 开网店用什么样云服务器 简述mongodb数据库备份 信息管理系统数据库面试基础问题 服务器安全狗防护放行 服务器主板不显示型号怎么办 筑牢网络安全第一道防线 网络安全工程师具体干啥 人民日报西安网络安全站 重邮计算机网络安全研究生去向 视频 服务器 开源 hana数据库重置用户密码 数据库切换用户的命令 网络安全治理是什么 魔兽世界服务器分联通电信 软件开发如何算提成 网络安全英语演讲文章 安徽惠普服务器虚拟化定制服务器 静安区现代化网络技术批发价格 华路卓网络技术有限公司 列族数据库有列族数据 金蝶云账号修改数据库
0