将设为首页浏览此站
开启辅助访问 天气与日历 收藏本站联系我们切换到窄版

易陆发现论坛

 找回密码
 开始注册
查看: 1549|回复: 4
收起左侧

sudu命令讲解

[复制链接]
发表于 2018-12-27 10:19:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?开始注册

x
sudu命令
/ F$ V, {8 Y3 l6 v) S; k, Y! k) L; A0 x! q
用来以其他身份来执行命令,预设的身份为root。在/etc/sudoers中设置了可执行sudo指令的用户。若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。 8 _' W* n- i! N8 v, l! i4 R. Q

) v% ]( A( Y# ?8 h- A4 y1 q语法: sudo (选项) (参数)1 N: U; F8 W# ?1 G
选项: (该部分只做了解); e& h5 b7 S5 |7 P7 V/ V, F
-b:在后台执行指令;, Y) a( |8 N! d# r; L# h$ {
-h:显示帮助;
4 ]. c8 a) ?9 _% Z8 x-H:将HOME环境变量设为新身份的HOME环境变量;
1 l! b& T5 d% K5 m-k:结束密码的有效期限,也就是下次再执行sudo时便需要输入密码;
$ g/ O! f9 M8 C- n! H$ a-l:列出目前用户可执行与无法执行的指令;' f3 x( T) u* s  h
-p:改变询问密码的提示符号;+ x* ~/ p$ W: F5 V
-s:执行指定的shell;
1 ?5 n) M1 U3 @) }6 D6 x. w4 y-u<用户>:以指定的用户作为新的身份。若不加上此参数,则预设以root作为新的身份;
& ~9 w5 \: O( R6 U$ b-v:延长密码有效期限5分钟;1 Y7 X; `, x  K& d! S7 e3 I% }6 b
-V :显示版本信息。( [# x7 U. I1 a2 X* g) a9 t- ]

$ ]/ g" H: Z5 t7 X) }2 `% Hsudo文件配置
: J( b0 L3 ~6 I- t5 M. z
9 C4 L4 F- o0 u  x6 P7 R" l   配置sudo必须通过编辑/etc/sudoers文件,而且只有超级用户才可以修改它。使用visudo命令编辑/etc/sudoers配置文件,操作方法同vi命令。当对多个命令设置速sudo权限时,需要用逗号加空格隔开。使用visudo有两个原因,一是它能够防止两个用户同时修改它;二是它也能进行有限的语法检查。所以,即使只有你一个超级用户,你也最好用visudo来检查一下语法。  / _$ [- ]% s* s+ ~0 y

( |; I$ Y! k2 P; ^[root@3 ~]# visudo    更改sudo配置文件( f" O! o8 B, J- @
' V- X- N. a  ^1 I( q2 U  c
# This file MUST be edited with the 'visudo' command as root.   
- s# P# H0 {, b% R必须在root用户使用visudo命令!
( k/ ?$ B  ?  e; |7 ?1 |) O$ w# q( b# X; p( K  _$ D0 N
## Allow root to run any commands anywhere" }1 c7 p2 e6 [5 o7 V( w+ i
root    ALL=(ALL)       ALL) K% A) _6 \/ K: d; q/ F7 P. Y9 e
2         ALL=(ALL)       /usr/bin/ls, /usr/bin/mv, /usr/bin/cat
. @5 U7 m) x3 U6 U4 _" I对2用户进行授权(授权完毕后保存退出)2 v' @. O$ F0 y) j4 |
' G" q7 r3 S# v4 C
[root@3 ~]# su - 2  切换到普通用户
7 `8 z: d, ?3 ~4 K) O8 a9 M上一次登录:三 6月 14 10:23:01 CST 2017pts/1 上
/ F4 p4 z* L4 @) S1 v[2@3 ~]$ ls /root/
8 B; R. M: b+ M2 L9 `ls: 无法打开目录/root/: 权限不够
1 q4 e3 ?: s3 c(!!!即,普通用户没有访问root用户的权限)2 B+ Q. u; P7 G# j9 P/ P7 E8 Q  ]/ h
[2@3 ~]$ sudo /usr/bin/ls /root/ # S0 ?: g. ]/ W( d
使用sudo命下访问root用户, g4 {3 M% ^7 ^0 P
[sudo] password for adai001:
6 g3 J2 t1 _! P9 x- nanaconda-ks.cfg  访问成功!!!
* G0 O. f# @$ r7 h5 a[2@3 ~]$ sudo /usr/bin/ls /root/, C0 f) n" A0 A" J
anaconda-ks.cfg   再次使用sudo命令时无需输入密码  U" x% U2 u7 ?' \+ I
[2@3 ~]$ cat /root/   
) f+ Z& l$ D+ j7 Pcat: /root/: 权限不够
; G  _9 L, X2 ~# _- y[2@3 ~]$ sudo /usr/bin/cat /root/
7 J4 g! L) {4 N! j2 I7 O3 [; F  B/usr/bin/cat: /root/: 是一个目录: V2 d. l0 @+ T+ k3 o; g
注:- ?& C3 Y/ O$ v
1)在增添用户的同时需要对用户设置密码(此处设置的是12345678),用户和登录密码要同时成对存在!
9 f) h; o! |; N( |+ @5 }: Y, X2)在编辑sudo配置文件时可以使用"NOPASSWD"前缀设置无密码使用权限,即在使用sudo命令时不用再输入用户密码!
) d9 M8 Q, @0 y6 w, k
) W5 O; B; j/ E; ^, }2 e. r& {sudo -i 详解
: i+ m! p- {$ ^- w( J. \' i& |0 m
3 L5 K% p+ U: Hsudo : 暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码。不过有时间限制,Ubuntu默认为一次时长15分钟。
7 U) O& R" m$ o6 H' Z2 S9 t: Z" a9 i3 S5 }9 p6 G# O
su : 切换到某某用户模式,提示输入密码时该密码为切换后账户的密码,用法为“su账户名称”。如果后面不加账户时系统默认为root账户,密码也为超级账户的密码。没有时间限制。
5 x) i0 {7 \5 j4 i- A9 A! o2 z/ L% S4 r! J# |% Q" i# z; j
sudo -i: 为了频繁的执行某些只有超级用户才能执行的权限,而不用每次输入密码,可以使用该命令。提示输入密码时该密码为当前账户的密码。没有时间限制。执行该命令后提示符变为“#”而不是“$”。想退回普通账户时可以执行“exit”或“logout” 。' L6 {; q7 L. s

: u$ G: N4 i; |2 y! A其实,还有几个类似的用法:
5 x/ G5 U6 J; T* |sudo /bin/bash:
1 j( N4 e  N1 @3 A* v/ |8 @这个命令也会切换到root的bash下,但不能完全拥有root的所有环境变量,比如PATH,可以拥有root用户的权限。这个命令和 sudo -s 是等同的。0 p7 b! B* c* W# w) w) `

0 b& u: @+ h/ qsudo -s : 如上3 `- u2 h) d. }( I
/ v* ^  C: A3 ]! U1 R6 L! k+ o$ e
sudo su : 这个命令,也是登录到了root,但是并没有切换root的环境变量,比如PATH。8 x  M  z4 S  Q3 i( F4 n' O* B. A2 a

1 y. o6 R% L$ G( gsudo su - : 这个命令,纯粹的切换到root环境下,可以这样理解,先是切换到了root身份,然后又以root身份执行了 su -,此时跟使用root登录没有什么区别。此结果貌似跟sudo -i的效果是一样的,但是也有不同,sudo只是临时拥有了root的权限,而su则是使用root账号登录了linux系统。* M+ e/ y2 ~0 I. Z9 m7 m- C8 ^
所以,我们再来总结一下:
- Z4 `9 u. A+ H# i5 h# K* r( S9 M2 R+ B( Q0 B7 j9 h+ D
sudo su - 约等于 sudo -i
8 U' ?" s+ {+ ~5 o7 v7 Q8 h
8 v- J* T* q% \! ^6 w+ i; ]sudo -s 完全等于 sudo /bin/bash 约等于 sudo su+ D2 `9 \/ M- N$ F) P
sudo 终究被一个"临时权限的帽子"扣住,不能等价于纯粹的登录到系统里。
/ q2 u# O& ]  H( ?& U, w! S$ t) D2 V; C
sudo配置文件样例+ V# B5 h7 E$ b+ M/ i: b: D

4 N; D; Y" S1 ~: n  w#9 a3 G9 ]0 N% D: ?
# Sample /etc/sudoers file.) i  r* I% u, \5 A) y3 ~
#8 ^: e4 e0 k* E( H' j+ e: {2 O% o) I% i
# This file MUST be edited with the 'visudo' command as root.7 K* f8 J$ @% s5 E. v
#
* K* q: w4 o% J: I" q; Q: S# See the sudoers man page for the details on how to write a sudoers file.
9 ~6 K4 o% X: M7 x& V#
) \; u8 C1 Y1 C0 B4 H: T4 d7 N1 o- U8 E* i( `4 O* V' C
##' q7 }" I7 u$ M1 ~- |
# User alias specification  a) u. B" Z4 z' F2 `9 ?
##
1 b' R& \1 P! f1 W+ LUser_Alias        FULLTIMERS = millert, mikef, dowdy
8 P1 U0 m" `$ \! W: f9 }9 T6 E' d/ uUser_Alias        PARTTIMERS = bostley, jwfox, crawl: A4 u/ w7 f+ _4 A( |8 ~' g
User_Alias        WEBMASTERS = will, wendy, wim* t6 O' \& D1 A' b2 `

$ B$ c7 |# E+ l% Z1 t4 }! R##8 i, p. h8 e+ w) n
# Runas alias specification
0 F% A( S4 y  a  M! Z5 _##
+ Q; S! L4 K; |2 Z- LRunas_Alias        OP = root, operator
5 K4 H' r, h  L! D  E0 yRunas_Alias        DB = oracle, sybase
0 `' z8 w2 U- z4 v* [( D
1 I5 I. |# u$ i0 R/ J: g##
* o* D3 }) s$ K: d# Host alias specification# H3 N* S: W1 o
##" c* A! g0 g4 z: V# i: J7 R$ [9 T, r& ^
Host_Alias        SPARC = bigtime, eclipse, moet, anchor:\! m+ C7 i$ e5 H0 f1 _
                SGI = grolsch, dandelion, black:\
, m) d7 B# p$ ~$ J7 \" T                ALPHA = widget, thalamus, foobar:\! d# B- c+ l9 P/ W# o0 G# ^
                HPPA = boa, nag, python: g) ]" C4 J( G+ }7 B$ O
Host_Alias        CUNETS = 128.138.0.0/255.255.0.0/ ]' ^9 E4 `% a5 z' C; G
Host_Alias        CSNETS = 128.138.243.0, 128.138.204.0/24, 128.138.242.01 a( i& K* W+ @0 F, {( X% j
Host_Alias        SERVERS = master, mail, www, ns
6 g% U; w& V  f" qHost_Alias        CDROM = orion, perseus, hercules
6 U' Y) [+ |! A, x( c
& S( b$ N' j4 f7 T0 N##
* X& z# h7 Q4 F5 A# o# Cmnd alias specification
% t# y: k$ u# \7 f##
( g% v8 ~6 J/ K( K0 ^5 W) BCmnd_Alias        DUMPS = /usr/sbin/dump, /usr/sbin/rdump, /usr/sbin/restore, \0 s: j' M7 ?' C2 H4 Z0 r+ d0 F
                        /usr/sbin/rrestore, /usr/bin/mt5 o; M- i0 m. o' K2 c
Cmnd_Alias        KILL = /usr/bin/kill
0 {0 y. F; D* K$ Z* o1 d/ y: BCmnd_Alias        PRINTING = /usr/sbin/lpc, /usr/bin/lprm/ N5 H1 J4 L$ O8 k/ A- ?
Cmnd_Alias        SHUTDOWN = /usr/sbin/shutdown
" H6 w! K! u/ A+ j/ `9 C* \$ R. UCmnd_Alias        HALT = /usr/sbin/halt' q3 Q0 G9 j3 V" a
Cmnd_Alias        REBOOT = /usr/sbin/reboot  B6 Y$ m" U+ J- r' o* h. g: n8 E
Cmnd_Alias        SHELLS = /sbin/sh, /usr/bin/sh, /usr/bin/csh, /usr/bin/ksh, \
9 |* g- m4 i( g2 h. p0 _/ G9 o                         /usr/local/bin/tcsh, /usr/bin/rsh, \
# A1 x+ t8 S( I/ i7 `+ j                         /usr/local/bin/zsh& v1 q, L4 K0 x+ L& m
Cmnd_Alias        SU = /usr/bin/su
3 n9 J# ?5 P9 @# p& w  eCmnd_Alias        VIPW = /usr/sbin/vipw, /usr/bin/passwd, /usr/bin/chsh, \
% l; Y9 V5 e  [# b                       /usr/bin/chfn
9 I% E5 I# K& O- @* J) }8 ?1 Q  m3 t: f0 E& C( ~- _! M& b( Y
##
' K: K" `; ?( {# Override built-in defaults( {0 C- G+ Z) s8 _
##
. X/ R2 d' K. l+ o( p# p# dDefaults               syslog=auth" d2 w5 u. }* `# [) L8 i
Defaults>root          !set_logname: b3 r( \& B6 Y9 o. t
Defaults:FULLTIMERS    !lecture, P- T8 |: h2 y( P6 p
Defaults:millert       !authenticate( t' d. R) ?6 B1 V
Defaults@SERVERS       log_year, logfile=/var/log/sudo.log
: z! H! S; U" @7 i- L7 H; w. r+ X1 D# i
##
7 I8 G3 [, A( }/ u6 {1 g& l# User specification
% O* I; G7 l* m3 R" A##
1 ~3 p. o1 p6 ]: r( w" T3 j$ Y$ v0 P8 U2 M7 T, H3 r3 Q
# root and users in group wheel can run anything on any machine as any user
, ]8 _6 s& T0 G7 ~: o* c( Xroot                ALL = (ALL) ALL6 K: J- t$ s% x& b/ {
%wheel                ALL = (ALL) ALL7 Z4 ?$ o) v* p9 q
7 x; ]; |+ n2 c6 U
# full time sysadmins can run anything on any machine without a password
% X" s+ _3 X& B; xFULLTIMERS        ALL = NOPASSWD: ALL& M( {& O& C4 w. j$ G" ^6 U7 t

2 `& \0 c% G0 ~6 |# part time sysadmins may run anything but need a password
$ D( B0 B  m& A1 V* q2 X8 ]PARTTIMERS        ALL = ALL
" ^' r+ ~5 b% ^5 I6 }3 X, X& I3 O' B: E' _1 s
# jack may run anything on machines in CSNETS) h2 V, M' J( l9 ~
jack                CSNETS = ALL
* j5 [) V3 E& E! }  J: g0 `2 r
; c; t  k2 d' k+ O# lisa may run any command on any host in CUNETS (a class B network)% o4 e3 v: F+ `
lisa                CUNETS = ALL7 L0 g" G; z6 y" ^

& {. r2 a. \4 z) j. J7 P# operator may run maintenance commands and anything in /usr/oper/bin/* D. F* i$ O3 X3 A) v
operator        ALL = DUMPS, KILL, SHUTDOWN, HALT, REBOOT, PRINTING,\3 m! Q* r; o% n; D/ E+ u* c: a  j/ j
                sudoedit /etc/printcap, /usr/oper/bin/
0 Q2 v& N# N/ j6 a6 G( z# o
- H5 Y$ L- Z. x% }+ G- g# joe may su only to operator
- l0 T& X  `+ P4 Y& @) Njoe                ALL = /usr/bin/su operator# {" q. h8 z, u- s

9 ?8 _5 N; q/ [0 v3 K# pete may change passwords for anyone but root on the hp snakes( R( q2 X+ {; q9 D
pete                HPPA = /usr/bin/passwd [A-z]*, !/usr/bin/passwd root) U; N- ~9 B7 S# Y$ K7 z
% B: J6 e+ O( r' `$ T+ a$ t& R
# bob may run anything on the sparc and sgi machines as any user3 B. ]% T& x/ k$ j
# listed in the Runas_Alias "OP" (ie: root and operator)) w% L8 `1 o) }/ `; K
bob                SPARC = (OP) ALL : SGI = (OP) ALL
' C: ^$ F5 b( W! H& ?
; y- V! }  K9 v- K" D. C% _  U$ J# jim may run anything on machines in the biglab netgroup$ v, ?5 w" p# @, z- ^4 T' l
jim                +biglab = ALL
/ M$ _& P0 V+ |/ H- i' Y, ]- ~# x% L* K, o
# users in the secretaries netgroup need to help manage the printers
, H2 m4 a+ \: _5 @$ ?# as well as add and remove users! S+ y  u8 e5 X% A  }+ k
+secretaries        ALL = PRINTING, /usr/bin/adduser, /usr/bin/rmuser
$ O. p( {5 x% }$ n* r5 W0 c. d) D% g( v$ y% A0 {) L
# fred can run commands as oracle or sybase without a password
$ z. r& r. Z1 z) @$ k( F5 X0 U: Gfred                ALL = (DB) NOPASSWD: ALL9 |) I& k( X( M9 W
8 ^+ N! Z5 _$ u1 n: j8 P7 D
# on the alphas, john may su to anyone but root and flags are not allowed
- y* {8 H* T- |8 ^7 o/ v* ojohn                ALPHA = /usr/bin/su [!-]*, !/usr/bin/su *root*
" F/ {% u5 w. _# i8 K, Y6 f* g5 H, U* R  w' R% K
# jen can run anything on all machines except the ones
/ ?8 S& r( N" G0 d$ _4 J$ o# in the "SERVERS" Host_Alias5 s, f* Q+ V! y( s9 y
jen                ALL, !SERVERS = ALL
! I& h! p+ H  u; C9 y+ n& i( ]
. R& l1 Z2 D6 E; Y# jill can run any commands in the directory /usr/bin/, except for
" S# s7 j% c- j6 K$ ?# those in the SU and SHELLS aliases.
1 G& r% |+ G* w" F; M  ^, Ujill                SERVERS = /usr/bin/, !SU, !SHELLS
$ O- r# v; x3 q! L4 c
4 B% q! l- H& t3 [- Q: U3 N' ^# steve can run any command in the directory /usr/local/op_commands/
" v( C8 `( D3 M' {3 t; j8 n# as user operator.
5 e" A2 J) T  i8 w% Isteve                CSNETS = (operator) /usr/local/op_commands/. s' d6 j5 c0 O$ E( W' ~
$ T9 D% }2 ?! q- f$ J; G
# matt needs to be able to kill things on his workstation when+ u; `+ m9 [) k1 y
# they get hung.) R5 j. g( J- ~4 W
matt                valkyrie = KILL
7 u( Y( v$ w  f3 Z3 S$ u7 O- a$ F7 X, ~( C4 M" Z
# users in the WEBMASTERS User_Alias (will, wendy, and wim)
$ {/ d, P" \% Y! m7 }# may run any command as user www (which owns the web pages)/ n, ~4 G. v% D( }, ^
# or simply su to www.
6 \# p" D! H' s, k* a# oWEBMASTERS        www = (www) ALL, (root) /usr/bin/su www0 o  T5 P) }+ `8 i! r( m
5 r4 M7 J" ~. Y& {5 M* x- U! l6 U
# anyone can mount/unmount a cd-rom on the machines in the CDROM alias
, B- x$ t7 a9 {ALL                CDROM = NOPASSWD: /sbin/umount /CDROM,\
6 M/ }# ?7 K# a                /sbin/mount -o nosuid\,nodev /dev/cd0a /CDROM
- j& Y' @: A2 t7 x* |文件编辑状态下可以用“/”进行关键词查找,输入“:set nu(=number)”显示行号。
 楼主| 发表于 2018-12-27 10:50:08 | 显示全部楼层
vi sudo    更改sudo配置文件* p. @2 O, i& Z0 w$ B/ M

" J6 Q8 i0 y  z% v9 m3 ^% _' O" n# This file MUST be edited with the 'visudo' command as root.   
: E6 e0 z" z' t* t# x必须在root用户使用visudo命令!
- D' t* R: s$ Z7 e8 W
" Q& l' ^) R4 q7 z/ J3 |3 T: {## Allow root to run any commands anywhere
* b  m5 A" u# J7 d6 p3 U; Y root    ALL=(ALL)       ALL, X: a( O1 x0 n& m/ q0 F; P
2         ALL=(ALL)       /usr/bin/ls, /usr/bin/mv, /usr/bin/cat
. B) B0 X7 w& S$ g+ [: I对2用户进行授权(授权完毕后保存退出)
* o( f$ J5 }( i1 [+ N( Q
  G9 h0 X% w" }: X1 _0 g" e[root@3 ~]# su - 2  切换到普通用户; q. b9 t) q5 ?; y( ?
上一次登录:三 6月 14 10:23:01 CST 2017pts/1 上. \- n& l6 L  w, d" w: K2 z1 a
[2@3 ~]$ ls /root/) a$ W' h: d# O4 i) I! r2 \
ls: 无法打开目录/root/: 权限不够 5 B$ n4 v  r  m- G
(!!!即,普通用户没有访问root用户的权限). r9 \/ g4 {% D4 \
[2@3 ~]$ sudo /usr/bin/ls /root/
7 \: `: P1 v  \% ]8 ^0 A1 N5 k使用sudo命下访问root用户) P! k  t: s3 \7 F: P
[sudo] password for adai001: * [3 Y3 f6 x" m7 Y, O% o
anaconda-ks.cfg  访问成功!!!; Q: D9 v- h# k( O& h- S/ T
[2@3 ~]$ sudo /usr/bin/ls /root/
& T! ?1 M& `$ S anaconda-ks.cfg   再次使用sudo命令时无需输入密码( b: m8 T( ~9 `) P
[2@3 ~]$ cat /root/   ! u/ z  ~" [3 X' Y* }2 a' @9 m* u
cat: /root/: 权限不够
, Z7 I; F  B3 z5 K/ A. k- n$ {4 p[2@3 ~]$ sudo /usr/bin/cat /root/6 m! s  B4 s$ G$ {% P3 v* f2 W
/usr/bin/cat: /root/: 是一个目录' F9 W+ s& S3 w- Z
注:! u8 S$ p# b- [5 w- `5 M. k/ W( b3 T
1)在增添用户的同时需要对用户设置密码(此处设置的是12345678),用户和登录密码要同时成对存在!( {& @4 D' @1 G: {# n
2)在编辑sudo配置文件时可以使用"NOPASSWD"前缀设置无密码使用权限,即在使用sudo命令时不用再输入用户密码!
发表于 2018-12-27 10:51:09 | 显示全部楼层
默认安装完成之后并不知道root用户的密码,那么如何应用root权限呢?
1 q: ]% ~; Q" O4 u8 F8 T; @(1)sudo 命令  : X$ V" V+ @* W0 L1 @
这样输入当前管理员用户密码就可以得到超级用户的权限。但默认的情况下5分钟root权限就失效了。( j, r( i/ P( c" O" S
(2)sudo -i6 t) S) i0 J1 L- B5 k5 d, H
通过这种方法输入当前管理员用户的密码就可以进到root用户。4 z: V9 ?5 h2 Z0 U) [% I
(3)如果想一直使用root权限,要通过su切换到root用户。
. A# P; ]* |- n! O( e2 T# j 那我们首先要重设置root用户的密码:0 w' J9 l3 p0 S" L4 N
sudo passwd root
8 d  f2 W( Z5 q这样就可以设置root用户的密码了。
- x. U+ K: U, U7 w  w" r8 H5 z; x4 R( T; w4 P6 D0 X
之后就可以自由的切换到root用户了1 l- D8 E+ L- q+ S8 W" O7 E
su
9 o! x, O6 H" P0 H7 c输入root用户的密码即可。* i6 e. x. g0 ?# M4 n  I

  u* L0 Q* I- N! s9 ~  w! Q" ~ 当然,如果想从root用户切换回一般用户,则可使用  su -val(一般用户名)
1 v/ b" Z2 f7 }, \: o. h
/ C! J' n8 ^2 _而当你再次切回到root用户,则只需要键入exit,再次输入exit则回到最初的用户下
发表于 2018-12-27 10:55:13 | 显示全部楼层
sudo vim
! Q' _2 a. q; L, w8 T5 |3 R3 lsudo systemctl status network.service" {/ G* g1 o; w$ n1 o
sudo 免密切换,免密输入。
 楼主| 发表于 2019-11-11 10:16:46 | 显示全部楼层
最常用的配置:
% ~) x. b7 ]' |' w用户 登录的主机=(可以变换的身份) 可以执行的命令
+ @7 F4 Q- i  B例如:
0 P: w% a! S: x. V" x% N. rroot ALL=(ALL) ALL
* I3 [# s+ a- G5 g  q9 Nroot用户可以在任意主机上切换到任意用户,执行任何命令。  d1 I, m; e$ h. L" F

! v2 V* O+ w2 ?! x9 ]3 v, B, _osadm ALL=(duser) NOPASSWORD:ALL. x  b2 Z1 Y5 a- }6 G) M1 ^* k( o
osadm用户可以在任意主机上,切换到duser用户,执行任意命令,并且不用输入密码。
, z4 l, t. @, }2 E默认是需要输入当前已登陆的用户的密码的。也就是说,这条命令,如果没有NOPASSWORD这个关键字,osadm切换到duser是需要输入osadm用户本身的密码的。" @' ^( h6 h& L$ i# U% s: {' _
9 R) S) ]) B1 N1 q6 a& R
osuser ALL=(root) NOPASSWORD:/opt/sudobin2/pkgscript.sh: O& X3 n9 d$ N" F) t, }
osuser可以在任意主机上,切换为root用户,执行/opt/sudobin2/pkgscript.sh命令,并且不用输入密码。2 P8 u5 y. B% b+ D% c
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

如有购买积分卡请联系497906712

QQ|返回首页|Archiver|手机版|小黑屋|易陆发现 点击这里给我发消息

GMT+8, 2020-7-8 02:20 , Processed in 0.061226 second(s), 24 queries .

Powered by 龙睿 bbs168x X3.2

© 2001-2020 Comsenz Inc.

快速回复 返回顶部 返回列表