zoukankan      html  css  js  c++  java
  • sudo指令和/etc/sudoers文件说明

    sudo 命令

    -l 显示当前用户的sudo权限
    -l username 显示username的sudo权限
    -u username 以username的权限执行
    -k 强迫用户下一次执行sudo时问密码(不论有无超过n分钟)
    -b 后台执行
    -p 修改提示符,%u,%h
    -H 将HOME环境变量设为新身份的HOME环境变量
    -s 执行指定的shell
    -v 延长密码有效期限5分钟


    ## Sudoers 允许特定用户在不需要root密码的情况下,运行各种需要root权限的指令
    ## 相关命令的集合的文件底部提供了示例,然后可以将它们委托给特定的用户或组。
    ## 该文件必须使用visudo指令编辑


    格式:

    root ALL=(ALL) ALL
    User Aliases Host Aliases = (Runas Aliases) Command Aliases
    谁 通过 哪些主机 可以通过 哪个身份 运行 哪些命令


    User Aliases和Runas Aliases可取值:
    username
    #uid
    %gropname
    %#gid
    User_Alias/Runas_Alias

    Host Aliases可取值:
    hostname
    ip
    172.16.8.6/16
    netgroup
    Host_Alias

    Command Aliases可取值:
    commandname
    directory
    sudoedit
    Cmnd_Alias

    ## Runas Aliases
    # 以什么样的身份运行后面的指令
    Runas_Alias USER1 = root


    ## Host Aliases
    ## 主机组,您可能更愿意使用主机名(也可使用通配符匹配整个域)或IP地址。
    # Host_Alias FILESERVERS = fs1, fs2
    # Host_Alias MAILSERVERS = smtp, smtp2

    ## User Aliases
    ## 用户,这些通常不是必需的,因为您可以在此文件中使用常规组(即来自文件,LDAP,NIS等) - 只需使用%groupname,而不是USERALIAS
    # User_Alias ADMINS = jsmith, mikem


    ## Command Aliases
    ## 相关命令的集合

    ## 网络相关的指令
    # 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

    ## 软件安装和管理使用的指令
    # Cmnd_Alias SOFTWARE = /bin/rpm, /usr/bin/up2date, /usr/bin/yum

    ## 服务相关的指令
    # Cmnd_Alias SERVICES = /sbin/service, /sbin/chkconfig

    ## 升级locate数据库的指令
    # Cmnd_Alias LOCATE = /usr/bin/updatedb

    ## 存储相关的指令
    # Cmnd_Alias STORAGE = /sbin/fdisk, /sbin/sfdisk, /sbin/parted, /sbin/partprobe, /bin/mount, /bin/umount

    ## 委派权限相关的指令
    # Cmnd_Alias DELEGATING = /usr/sbin/visudo, /bin/chown, /bin/chmod, /bin/chgrp

    ## 进程相关的指令
    # Cmnd_Alias PROCESSES = /bin/nice, /bin/kill, /usr/bin/kill, /usr/bin/killall

    ## 驱动模块的相关的指令
    # Cmnd_Alias DRIVERS = /sbin/modprobe


    ##开发常用指令
    Cmnd_Alias DEVELOP = /usr/bin/cd, /usr/bin/pwd, /usr/bin/mkdir, /usr/bin/rmdir, /usr/bin/basename, /usr/bin/dirname, /usr/bin/vi, /usr/bin/diff, /usr/bin/find, /usr/bin/cat, /usr/bin/ta
    c, /usr/bin/rev, /usr/bin/head, /usr/bin/tail, /usr/bin/tailf, /usr/bin/echo, /usr/bin/wc, /usr/bin/chown, /usr/bin/chmod, /usr/bin/chgrp, /usr/bin/gzip, /usr/bin/zcat, /usr/bin/gunzip,/
    usr/bin/tar, /usr/sbin/ifconfig, /usr/bin/ping, /usr/bin/telnet, /usr/bin/netstat, /usr/bin/wget, /usr/bin/top, /usr/bin/cal, /usr/bin/date, /usr/bin/who, /usr/bin/ps, /usr/bin/clear, /u
    sr/bin/df, /usr/bin/du, /usr/bin/free, /usr/bin/crontab, /usr/bin/yum,/usr/bin/make,/usr/bin/rm,/usr/sbin/ldconfig

    # 默认规范
    #
    # 如果无法禁用tty上的回显(echo),拒绝运行,即输入密码时禁止显示
    Defaults !visiblepw

    #
    #由于许多程序在搜索配置文件时使用它,因此保留HOME会带来安全隐患。请注意,当启用env_reset选项时,就已经设置了HOME,因此此选项仅适用于env_keep列表中,禁用了env_reset或HOME存在的配置。
    Defaults always_set_home

    #
    Defaults env_reset,passwd_timeout=2.5,timestampe_timeout=4
    Defaults env_keep = "COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS"
    Defaults env_keep += "MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"
    Defaults env_keep += "LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"
    Defaults env_keep += "LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"
    Defaults env_keep += "LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY"

    #
    # 将HOME添加到env_keep可以使用户通过sudo运行不受限制的命令。
    # Defaults env_keep += "HOME"

    Defaults secure_path = /sbin:/bin:/usr/sbin:/usr/bin


    ## 接下来是重要部分:哪些用户可以在哪些机器上运行哪些软件(sudoers文件可以在多个系统之间共享)。
    ## 语法:
    ## user MACHINE=COMMANDS
    ##
    ## COMMANDS部分可能会添加其他选项
    ##
    ## 允许root在任何地方运行任何命令
    root ALL=(ALL) ALL

    ## 允许'sys'用户组的所有用户运行"NETWORKING","SOFTWARE","SERVICES","STORAGE","DELEGATING","PROCESSES","LOCATE","DRIVERS"命令组的指令
    # %sys ALL = NETWORKING, SOFTWARE, SERVICES, STORAGE, DELEGATING, PROCESSES, LOCATE, DRIVERS

    ## 允许wheel组中的所有成员运行系统上的所有指令
    # %wheel ALL=(ALL) ALL

    ## 允许wheel组中的所有成员运行系统上的所有指令,不需要密码
    # %wheel ALL=(ALL) NOPASSWD: ALL


    ## 允许users用户组中的所有成员以root用户身份mount和umount cdrom
    # %users ALL=/sbin/mount /mnt/cdrom, /sbin/umount /mnt/cdrom

    ## 允许users用户组中的所有成员关闭系统
    # %users localhost=/sbin/shutdown -h now

    ## 读取/etc/sudoers.d目录下的所有配置文件 (这里的 # 号并不是表示注释,是固定写法)
    #includedir /etc/sudoers.d

    ## 为sudo添加日志审计功能,这样的话,只要使用使用sudo执行指令的用户,执行指令的详细信息都会记录在指定的日志文件中
    Defaults logfile=/var/log/sudo.log

  • 相关阅读:
    Flask——session
    UISB ScrollView
    UISB 登陆
    UISB TextField
    UISB 进步器 分栏控制器
    UISB UISlider ProgressView
    UISB Switch
    UISB 定时器
    Django-Celery文档
    UISB UIViewController
  • 原文地址:https://www.cnblogs.com/wyzhou/p/10527535.html
Copyright © 2011-2022 走看看