首页 > 系统相关 >linux基础day12:用户的身份提权

linux基础day12:用户的身份提权

时间:2023-03-22 18:32:51浏览次数:32  
标签:sudo ljy 提权 day12 linux print NR txt root

用户的身份提权

sudo命令提权

什么是sudo

sudo就是普通用户可以提权,执行root用户可以执行的命令

为什么要用到sudo

如果在公司中,入职后,领导给运维的用户是普通用户,但是有些命令只有root才能执行

sudo如何使用

# 1.系统的超级管理员(root)需要做sudo的配置(发一个兵符给指定的普通用户)
# 2.普通用户只需要,在执行的命令之前,加上sudo即可

sudo的配置(root发兵符的过程)

#查看sudo的配置文件:
vim /etc/sudoers
visudo(推荐)

#检测sudo配置是否正确
visudo -c

#用户名  所有主机=(所有角色)  所有命令的执行权限           
root    ALL=(ALL)             ALL
例:   
ljy     ALL=(ALL)             /bin/cp
#                    普通用户不需要输入密码使用sudo
ljy     ALL=(ALL)          NOPASSWD:ALL

## 免密切换到root用户,就算不免密,也是输入普通用户的密码,切换到root用户
[ljy@localhost ~]$ sudo su -

## 普通用户以root身份执行命令
[ljy@localhost ~]$ ls -l /root
ls: cannot open directory /root: Permission denied

[ljy@localhost ~]$ sudo ls -l /root
total 20
lrwxrwxrwx. 1 root root    2 Mar 16 23:14 15 -> 17
-rw-r--r--. 1 root root   23 Mar 16 23:11 17
-rw-r--r--. 1 root root  266 Mar 15 10:52 1.rar
-rw-------. 1 root root 1448 Mar  8 19:21 anaconda-ks.cfg
-rw-r--r--. 1 root root  862 Mar 17 23:06 test.txt
-rw-r--r--. 1 root root 3680 Mar 17 20:27 wenben

## 其他主机的别名配置
Host_Alias     FILESERVERS = localhost,ljy
Cmnd_Alias LJYCMD = /bin/cp,/bin/mv,/bin/rm,!/bin/su

!/bin/su(无法执行 su 这个命令)

Cmnd_Alias:命令别名
Host_Alias:主机别名
User_Alias:角色别名

## 给组发兵符

%lzu ALL=(ALL) NOPASSWD:ALL
%组名 ALL=(ALL) NOPASSWD:ALL

usermod ljy -G lzu
usermod 用户名 -G 组名

### sudo不认识别名,只能走系统命令

awk初识

# 取列
awk

# 选项
-F 指定分隔符,默认是以空白字符为分隔符
NR 表示行号

# 格式运用
{print $number} 取列
{print $1} 取第一列
#例1:
awk '{print $1}' 1.txt  取出1.txt中第一列内容

NR==1 第一行 取行
NR==2 第二行
#例2:
awk 'NR==1{print $1}' 1.txt 取出1.txt中第一行且第一列的内容

-F
#例3:
awk -F ',' 'NR==2{print $3}' 1.txt 取出1.txt中以逗号为分隔符的第3列且第2行的内容

#例4:
awk -F '[,.!?]+' 'NR==1{print $1};NR==2{print $2};NR==3{print $3}' 1.txt
# 把文件1.txt 把,.!?视为一种分隔符 然后截取第一行第一列,第二行第二列,第三行第三列

sed初识

# 替换
sed

# 选项
-i 真正的替换
      # 内部命令:
      s  替换
      g  全局
      

# 使用方法
sed s#匹配内容#替换内容#g 文件

真正的替换
sed -i s#aaa3#ccc999#g 2.txt

标签:sudo,ljy,提权,day12,linux,print,NR,txt,root
From: https://blog.51cto.com/u_16000550/6143091

相关文章

  • Linux相关命令
    要想查看某个分区挂载在哪一个目录下,可以执行命令:df-hFHS标准: 命令提示符=当前登录的用户名+主机名+当前所在目录(~表示home目录)+用户提示符(#表示root,$表示普通用户)......
  • Ubuntu 20.04 制作Linux系统的qcow2镜像
    本篇以制作kali2023操作系统为例,在一台Ubuntu20.04的服务器上制作2GB内存,30GB硬盘的qcow2镜像,如果是VM虚拟机需要开启CPU硬件虚拟化。1.安装依赖软件aptinstallqemu-......
  • Linux 查看CPU信息、机器型号等硬件信息
    测试机器的硬件信息:查看CPU信息(型号)#cat/proc/cpuinfo|grepname|cut-f2-d:|uniq-c     8 Intel(R)Xeon(R)CPU           E5410 ......
  • linux上安装Docker(非常简单的安装方法)
    最近比较有空,大四出来实习几个月了,作为实习狗的我,被叫去研究Docker了,汗汗! Docker的三大核心概念:镜像、容器、仓库镜像:类似虚拟机的镜像、用俗话说就是安装文件。容......
  • linux mount文件挂载
    目录linuxmount文件挂载常用参数使用案例查看版本:启动所有挂载:挂载/dev/cdrom到/mnt:挂载nfs格式文件系统:linuxmount文件挂载mount命令用于加载文件系统到指定的加载......
  • linux 设备增加跨网段功能
    一般linux设备在使用过程中需要跟不在同一网段的服务器进行通信,需要设置网口的跨网点功能,使用route命令增加路由转发增加网络设备eth0对网段的192.168.的处理rout......
  • 来了解下GNOME 2 的 Linux 文件管理器 Caja
    如果你是GNOME2的粉丝,那么你肯定会发现Caja很熟悉,如果你从来没有使用过GNOME2,那么你可能会在Mate中找到你的新宠桌面。在GNOME3之前是GNOME2(废话),在其......
  • .netcore 在Linux(Centos)使用Docker方式部署
    运行环境假设你已经安装好了.netcore运行环境,未配置可以看这篇​​[linux(centos)搭建.netcore运行环境]​​centos:7.2cpu:1核2G内存1M带宽docker:18.06.1-ce安装docke......
  • Linux系统之温度监控工具——lm_sensors的安装和基本使用
    (Linux系统之温度监控工具——lm_sensors的安装和基本使用)一、lm_sensors介绍lm_sensors,是一款基于linux系统的硬件监控的软件。可以监控主板,CPU的工作电压,温度等数据。......
  • linux 后台运行 Java 程序
    一、进入程序所在目录cd/cdhome/joincallcc/注:cd/中间有一个空格二、关闭已经运行的程序(如这个程序已经在运行应先关闭它)查看所有进程psux杀死进程kil......