精华内容
下载资源
问答
  • visudo我们可以修改/etc/sudoers文件来设置用户sudo权限,修改/etc/sudoers一定要使用visudo命令,它可以让我们比较安全的修改此文件。visudo有以下特性:锁定文件避免多个同时编辑检查语法的完整性检查解析错误,...

    visudo

    我们可以修改/etc/sudoers文件来设置用户的sudo权限,修改/etc/sudoers一定要使用visudo命令,它可以让我们比较安全的修改此文件。

    visudo有以下特性:锁定文件避免多个同时编辑

    检查语法的完整性

    检查解析错误,以避免用户错误输入

    使用root的权限直接执行visudo,打开suders文件$visudo

    注意:这里不需要输入shduers文件的路径,默认为/etc/sudoers。可以使用-f指定sudoers文件。

    设置sudo权限

    语法格式

    用户  主机=(用户身份) 命令列表

    用户:用户可以是直接用户名(如:root),也可以是以%开头表示的用户组(如:%wheel)。

    主机:使用Host_Alias定义主机的别名

    命令列表:使用Cmnd_Alias定义命令别名,多个命令使用逗号隔开

    用法

    找到下面这一行root  ALL=(ALL)   ALL

    1、允许用户在所有主机上执行所有命令的权限test   ALL=(ALL) ALL

    2、运行用户在指定主机上执行特定命令的权限Host_Alias HOST1 = 192.168.1.1

    Cmnd_Alias MY_CMD = /bin/mycmd

    test HOST1=(ALL) MY_CMD

    意思是:允许test在HOST1表示的主机上执行MY_CMD表示的命令

    3、设置组执行所有命令的权限%mygroup  ALL= (ALL)  ALL

    4、设置组无需密码执行所有命令的权限%mygroup ALL=(ALL)   NOPASSWD: ALL

    wheel

    在Linux有一个特殊的组wheel,它允许此组的用户执行所有命令的权限。

    使用visudo打开sudoers文件,找到%wheel ALL=(ALL)   ALL

    如果此行被注释掉,把#去掉,然后把用户添加到此组即可。usermod -aG wheel myuser

    展开全文
  • 创建用户☁ ~ sudo useradd testUser# 用户id为1003☁ ~ cat /etc/passwd | grep airmb2019testUser:x:1003:1003::/home/testUser:/bin/bash# 设置密码☁ ~ sudo passwd testUserChanging password for user ...

    创建用户

    ☁ ~ sudo useradd testUser

    # 用户id为1003

    ☁ ~ cat /etc/passwd | grep airmb2019

    testUser:x:1003:1003::/home/testUser:/bin/bash

    # 设置密码

    ☁ ~ sudo passwd testUser

    Changing password for user testUser.

    New password:

    Retype new password:

    passwd: all authentication tokens updated successfully.

    # 切换用户

    ☁ ~ su testUser

    Password:

    [testUser@localhost vagrant]$ ls

    添加sodu权限

    默认情况下,新建的普通用户是没有权限的,在没有sudo权限的情况下执行sudo命令,会触发系统的警告,系统会将此行为上报,避免坏分子搞破坏

    [testUser@localhost vagrant]$ sudo ls

    [sudo] password for testUser:

    testUser is not in the sudoers file. This incident will be reported.

    给普通用户加上sudo权限:

    # 切换到root用户

    ☁ ~ su - root

    Password:

    [root@localhost ~]# visudo

    # 在以下命令 root ALL=(ALL) ALL 加上:

    # testUser ALL=(ALL) ALL

    # 保存退出,再切换为testUser普通用户,testUser就拥有了sudo权限

    拥有了sudo权限的testUser就相当于了皇帝颁发的令箭,可以为所欲为了,只需要在执行命令时输入自己的密码即可

    [testUser@localhost vagrant]$ sudo ls

    We trust you have received the usual lecture from the local System

    Administrator. It usually boils down to these three things:

    #1) Respect the privacy of others.

    #2) Think before you type.

    #3) With great power comes great responsibility.

    首次使用sudo指令时,系统会给予忠告:小伙子,你拥有了系统的生杀予夺权,做啥事都要想清楚了,敲命令时长点心,权力越大,责任越大。要是把系统弄残了,就准备收拾细软跑路吧...

    禁止root用户远程登录

    严格禁止在生产环境用root远程登录,不要以为你艺高人胆大,就可以海阔任你浪。借用三体的一句话:“弱小与无知不是生存的障碍,傲慢才是!”

    一旦用root用户,你执行的所有命令、脚本都拥有了root权限,一旦你用的外部命令包含危险的指令,或者你犯了愚蠢的错误,都可能造成无法挽回的损失。因此,珍爱生命,远离root登录

    事实上,大多数操作都不需要用到root权限,当需要时用sudo即可,当敲sudo时,会有一种严谨的仪式感。而如果一直都用root,很容易写嗨了,一个失误,就挖了个大坑

    因此,必须禁止root用户远程登录!

    ☁ ~ sudo vim /etc/ssh/sshd_config

    # 将PermitRootLogin yes更改为no

    # 重启sshd

    ☁ ~ sudo systemctl restart sshd

    展开全文
  • linux设置sudo免密

    2021-04-27 09:43:11
    root最大 因为 /etc/sudoers 中配置了 root 可以 在任何地方 运行 任何命令 如果其他用户想和root具有一样...如果一个用户非sudoer,运行了sudo , 则 事件 将会被 上报。 /etc/sudoers 连root也不能写,究其原..

    root最大

    因为 /etc/sudoers 中配置了 root  可以 在任何地方 运行 任何命令 

    如果其他用户想和root具有一样的权限,仅仅是配给root用户组是不行的,因为这样只能够修改组内的文件,而属于其他组的文件是修改不了的。

    所以需配置 为 sudoer

    sudoer: 具有和root一样的生杀大权,不过是 用的时候 需要 输入一下自己的密码进行确认

    如果一个用户非sudoer,运行了sudo , 则 事件 将会被 上报。


    /etc/sudoers 连root也不能写,究其原因,是因为 这个文件是

    可以用内嵌的 visudo 命令 来  对 /etc/sudoers 进行修改,也可以 通过 chmod 更改 文件的权限来进行修改

    修改后hadoop就具有和root一样的生杀大权

    difference: id 可以看出 还是具有区别的,这个区别就是 运行生杀命令的时候, 其他用户 得用 sudo  而且还得输入密码,而 root 不用

    运行生杀命令的时候, 免密设置

     因为其他用户设置后,是属于wheel组的


    /etc/sudoers文件部分解释

    [root@test ~]# cat /etc/sudoers
    ## Sudoers allows particular users to run various commands as
    ## the root user, without needing the root password.
    ##该文件允许特定用户像root用户一样使用各种各样的命令,而不需要root用户的密码 
    ##
    ## Examples are provided at the bottom of the file for collections
    ## of related commands, which can then be delegated out to particular
    ## users or groups.
    ## 在文件的底部提供了很多相关命令的示例以供选择,这些示例都可以被特定用户或  
    ## ## 用户组所使用  
    ## This file must be edited with the 'visudo' command.
    ## 该文件必须使用"visudo"命令编辑
    ## Host Aliases
    #主机别名
    ## Groups of machines. You may prefer to use hostnames (perhap using 
    ## wildcards for entire domains) or IP addresses instead.
    ## 对于一组服务器,你可能会更喜欢使用主机名(可能是全域名的通配符)
    ## 或IP地址代替,这时可以配置主机别名
    
    # Host_Alias     FILESERVERS = fs1, fs2
    # Host_Alias     MAILSERVERS = smtp, smtp2
    ## User Aliases
    #用户别名
    ## These aren't often necessary, as you can use regular groups
    ## (ie, from files, LDAP, NIS, etc) in this file - just use %groupname 
    ## rather than USERALIAS
    ## 这并不很常用,因为你可以通过使用组来代替一组用户的别名  
    # User_Alias ADMINS = jsmith, mikem
    
    ## Command Aliases
    ## These are groups of related commands...
    ## 指定一系列相互关联的命令(当然可以是一个)的别名,通过赋予该别名sudo权限,  
    ## 可以通过sudo调用所有别名包含的命令,下面是一些示例
    
    ## Networking
    #网络操作相关命令别名  
    Cmnd_Alias NETWORKING = /sbin/route, /sbin/ifconfig, /bin/ping, /sbin/dhclient,
     /usr/bin/net, /sbin/iptables, /usr/bin/rfcomm, /usr/bin/wvdial, /sbin/iwconfig, 
     /sbin/mii-tool
    ## Installation and management of software
    #软件安装管理相关命令别名  
    Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/up2date, /usr/bin/yum
    ## Services
    #服务相关命令别名 
    Cmnd_Alias SERVICES = /sbin/service, /sbin/chkconfig
    ## Updating the locate database
    #本地数据库升级命令别名  
    Cmnd_Alias LOCATE = /usr/sbin/updatedb
    ## Storage
    #磁盘操作相关命令别名
    Cmnd_Alias STORAGE = /sbin/fdisk, /sbin/sfdisk, /sbin/parted, /sbin/partprobe, /bin/mount, /bin/umount
    ## Delegating permissions
    #代理权限相关命令别名 
    Cmnd_Alias DELEGATING = /usr/sbin/visudo, /bin/chown, /bin/chmod, /bin/chgrp
    ## Processes
    #进程相关命令别名
    Cmnd_Alias PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall
    ## Drivers
    #驱动命令别名
    Cmnd_Alias DRIVERS = /sbin/modprobe
    #环境变量的相关配置
    # Defaults specification
    #
    # Disable "ssh hostname sudo <cmd>", because it will show the password in clear. 
    #         You have to run "ssh -t hostname sudo <cmd>".
    #
    Defaults    requiretty
    Defaults    env_reset
    Defaults    env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR \
                            LS_COLORS MAIL PS1 PS2 QTDIR USERNAME \
                            LANG LC_ADDRESS LC_CTYPE LC_COLLATE LC_IDENTIFICATION \
                            LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC \
                            LC_PAPER LC_TELEPHONE LC_TIME LC_ALL LANGUAGE LINGUAS \
                            _XKB_CHARSET XAUTHORITY"
    ## Next comes the main part: which users can run what software on
    ## which machines (the sudoers file can be shared between multiple
    ## systems).
    ## 下面是规则配置:什么用户在哪台服务器上可以执行哪些命令(sudoers文件可以在多个系统上共享)
    ## Syntax:
    ##语法
    ##      user    MACHINE=COMMANDS
    ##  用户 登录的主机=(可以变换的身份) 可以执行的命令  
    ##
    ## The COMMANDS section may have other options added to it.
    ## 命令部分可以附带一些其它的选项  
    ##
    ## Allow root to run any commands anywhere 
    ## 允许root用户执行任意路径下的任意命令 
    root    ALL=(ALL)       ALL
    ## Allows members of the 'sys' group to run networking, software,
    ## service management apps and more.
    # %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS
    ## 允许sys中户组中的用户使用NETWORKING等所有别名中配置的命令
    
    ## Allows people in group wheel to run all commands
    # %wheel        ALL=(ALL)       ALL
    ## 允许wheel用户组中的用户执行所有命令  
    ## Same thing without a password
    ## 允许wheel用户组中的用户在不输入该用户的密码的情况下使用所有命令
    # %wheel        ALL=(ALL)       NOPASSWD: ALL
    ## Allows members of the users group to mount and unmount the
    ## cdrom as root
    ## 允许users用户组中的用户像root用户一样使用mount、unmount、chrom命令 
    # %users  ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom
    ## Allows members of the users group to shutdown this system
    # %users  localhost=/sbin/shutdown -h now
    ## 允许users用户组中的用户像root用户一样使用shutdown命令

     


    示例1:

    hadoop用户创建了一个 只属于自己的文件, 但是 root却可以进入 它的 家目录 对其 进行修改 

    如果是用户xh 就无法修改,因为她不属于 hadoop的用户组,如果xh想要更改,就得加入hadoop用户组;

    或者 xh 设置为 sudoer, 这样就可以 sudo 执行和 root 用户 相同的 权限

    示例2:

    用root在hadoop的家里面创建一个文件,

    hadoop是不能对其进行修改的

    如果hadoop是sudoer,则 sudo  + command  就相当于 root  , 可以 对任意 的 文件 进行 修改 

     

     

    展开全文
  • 设置sudo权限主要是修改/etc/sudoers这个文件 修改这个文件先有添加写权限:chmod u+w/etc/sudoers 改完后再删除写权限:chmod u-w/etc/sudoers 这里为什么是设置部分权限呢?这是一个权限安全的问题。普通用户...

    用户管理相关命令: 

    • useradd
    • usermod
    • userdel
    • groupadd
    • newgrp
    • groupdel
    • chown
    • chmod

    设置sudo权限主要是修改/etc/sudoers这个文件

    修改这个文件先有添加写权限:chmod u+w /etc/sudoers

    改完后再删除写权限:chmod u-w /etc/sudoers

    这里为什么是设置部分权限呢?这是一个权限安全的问题。普通用户使用某些命令的时候不能有sudo权限,不然太危险了。假设一个开发团队里组长有root权限,其他开发者只需要普通权限就行了。

    普通开发者可能需要sudo的命令:

    • yum/apt(经常要安装软件)
    • service
    •  make install(经常要编译安装)

    不同开发者不能有sudo权限的命令:

    • passwd(不能修改其他用户密码)
    • visudo/chown/chmod/chgrp(不能修改sudo,不能修改其他用户文件的访问权限)
    • ls/vim (不能查看和编辑其他用户目录和文件)

    所以一个普通开发者不能操作其他用户的文件,更不能操作系统文件

    suduers文件中:

    root    ALL=(ALL)       ALL

    root表示用户,

    第一个ALL表示机器(IP)

    第二个(ALL)表示使用任意身份使用权限

    第三个ALL表示具有所有权限

    设置dev用户的部分权限:

    先取消预定义的别名的注释:

    dev ALL= (ALL)  NOPASSWD: NETWORKING, SOFTWARE, SERVICES

    上行设置dev用户具有三种权限,NOPASSWD表示不需要输入用户密码

    为防止权限覆盖,将单独用户的权限设置放在最后面 

    展开全文
  • 一、linux用户添加sudo权限:有时候,linux下面运行sudo命令,会提示类似:xxxis not in the sudoers file. This incident will be reported.这里,xxx是用户名称,然后导致无法执行sudo命令,这时候,如下解决:...
  • Linux系统管理员或高级用户而言,它是必不可少的最重要的命令之一。你可曾有过这样的经历:在终端中试着运行某个命令,结果却遇到“拒绝访问”?怎么办?对了,这个就是你所需要的命令!一、OK!那么下面我将举一...
  • 本文介绍在Linux系统下查找所有sudo用户的方法,普通用户如何转变为sudo用户请参考Debian系统如何赋予普通用户sudo权限一文。背景有一天Linux用户问我如何找到我的Linux服务器中的超级用户数(拥有sudo访问权限的用户...
  • 开启普通用户sudo权限 chmod u+w /etc/sudoers vi /etc/sudoers 如上图,为ccg和ansible两个普通用户开启sudo权限 chmod u-w /etc/sudoers 使用不一样帐户,执行执行脚本时候sudo常常会碰到 sudo: sorry, you must ...
  • 1、添加用户设置密码 首先用adduser命令添加一个普通用户。...2、赋予sudo权限 修改 /etc/sudoers 文件,找到下面一行,在root下面添加一行,如下所示: # Allow root to run any commands anywhere root ALL=(ALL)
  • 内容一:sudo 简介sudo 命令可以让非 root 用户,在不知道 root 的密码的情况之下以 root 的身份执行某一些命令但是要实现这一目标需要提前修改 sodu 的配置文件内容二:修改 sudo 配置文件的方法2.1 第一种修改 ...
  • 1.切换到root用户下,怎么切换就不用说了吧,不会的自己百度去.2.添加sudo文件的写权限,命令是:chmod u+w /etc/sudoers3.编辑sudoers文件vi /etc/sudoers找到这行 root ALL=(ALL) ALL,在他下面添加xxx ALL=(ALL) ALL ...
  • 修改时,要在root下修改 [root@centos ~]# vim /etc/sudoers 97 ## Allow root to run any commands anywhere 98 root ALL=(ALL) ALL 99 zzzz ALL=(ALL) ...PermitRootLogin no #禁止root用户登录 [root@cento.
  • service sshe restart 给普通用户添加sudo权限 创建普通用户 [root@localhost ~]# useradd test1 添加权限 修改配置文件: [root@localhost ~]# vim /etc/sudoers 找到root用户的配置在他下边增加 注:用户更改密码...
  • 上面的命令是给test用户设置密码。 3、 usermod -s /bin/bash test 上面这段代码的含义是,把命令行的模式换为bash,默认是sh。你肯定会问为什么要这样,因为如果使用默认的sh,你打开终端的提示符显示的是,不是...
  • sudo的配置文件sudo默认配置文件是**/etc/sudoers** ,一般使用Linux指定编辑工具visudo ,此工具的好处是可以进行错误检查。在添加规则不符合语法规则时,保存退出时会提示给我们错误信息;配置好后,可以用切换到...
  • Linux sudo命令

    2021-01-13 14:36:49
    Linux sudo命令Linux sudo命令以系统管理者的身份执行指令,也就是说,经由 sudo 所执行的指令就好像是 root 亲自执行。使用权限:在 /etc/sudoers 中有出现的使用者。语法sudo -Vsudo -hsudo -lsudo -vsudo -ksudo ...
  • sudo是允许用户Linux和Unix操作系统中运行管理任务的简单方法。你只需将任何普通用户添加到 "sudo "组中,就可以促进任何普通用户执行需要root权限的命令。这样我们就不用把根用户的密码分享给所有用户。每当你用...
  • linux中创建用户并赋予用户sudo权限 一、创建用户 方法一: adduser 用户名 passwd 用户名 优点:自动为用户创建指定的主目录以及系统的shell版本。 例子:添加sysadm用户并为该用户设置密码 [root@192-168-5-133 ~]...
  • linux切换用户sudo命令

    千次阅读 2021-01-05 17:29:23
    (1)sudo 命令 xzm@ubuntu:~$ sudo 这样输入当前管理员用户密码就可以得到超级用户的权限。但默认的情况下5分钟root权限就失效了。 (2)sudo -i xzm@ubuntu:~$ sudo -i 通过这种方法输入当前管理员用户的密码就可以进...
  • 2、添加sudo文件的写权限,命令是:chmod u+w /etc/sudoers3、编辑sudoers文件:vi /etc/sudoers找到这行 root ALL=(ALL) ALL,在他下面添加xxx ALL=(ALL) ALL (注:这里的xxx是你的用户名)你可以根据实际需要在...
  • 前言Linux 的普通用户(uid >= 500)不具有某些命令的执行权限,为了执行较高权限的命令,一般有两种方法:第一种是使用 su - 命令切换到 root 用户去执行;另外一种方法是在命令前添加 sudo 去执行。编辑文件在...
  • Post Views:276在linux组中移除用户操作命令命令: gpasswd -d userName groupNamegpasswd -d 用户 sudologin as: rootroot@120.78.178.239's password:Welcome to Ubuntu 18.04.2 LTS (GNU/Linux 4.15.0-48-generic...
  • ====================================================赋予用户sudo权限:首先,看一下如何为用户组分配sudo权限:打开配置文件:sudo vim /etc/sudoers可以看到:这个是最原始的配置文件。假设系统里面有用户组...
  • 简单解决linuxsudo每次都要输入用户密码问题 方法 修改 /etc/sudoers文件 vim /etc/sudoers 注释掉 # sudo all=(all:all) all 添加内容 sudoALL=NOPASSWD:ALL
  • Linuxsudo命令

    2021-03-03 16:12:08
    平常使用Linux的时候,都是用普通用户登录执行命令,但是有些命令需要root权限才能执行,...本文将要要介绍的 sudo 命令就是专门解决这种问题的简介sudo 命令可以提升普通用户的权限,去执行其他用户才有权限执行...
  • sudo可以用来以其他用户身份执行命令,sudo命令可以针对单个命令授予临时权限。sudo仅在需要时授予用户权限,减少了用户因为错误执行命令损坏系统的可能性。1:sudo的帮助信息如下:qian@ubuntu:~/桌面$ sudo --help...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 233,586
精华内容 93,434
关键字:

linux设置sudo用户

linux 订阅