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

易陆发现论坛

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

sudu命令讲解

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

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

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

x
sudu命令' X3 m+ |' N5 V- M* E
* E+ `+ ]# K0 h( ]1 d+ i. R+ ]
用来以其他身份来执行命令,预设的身份为root。在/etc/sudoers中设置了可执行sudo指令的用户。若其未经授权的用户企图使用sudo,则会发出警告的邮件给管理员。用户使用sudo时,必须先输入密码,之后有5分钟的有效期限,超过期限则必须重新输入密码。 
: U# K. x+ T0 v0 I: i0 y) E" Q# W/ ?0 |4 ?
语法: sudo (选项) (参数)' `0 C& ]2 W- s6 B4 T- e# s
选项: (该部分只做了解)0 q0 e% X  h3 r8 E2 C
-b:在后台执行指令;
" D/ x* G) Z8 G  m; d$ Z# V* g# q-h:显示帮助;0 P( a$ m  S+ O3 Q: n$ p+ J
-H:将HOME环境变量设为新身份的HOME环境变量;  `( O8 h9 }+ _
-k:结束密码的有效期限,也就是下次再执行sudo时便需要输入密码;) Q) @5 N: j& C* P2 u2 X' a
-l:列出目前用户可执行与无法执行的指令;4 t9 l/ f2 V* F/ e: x
-p:改变询问密码的提示符号;
7 j( a+ T! F  Y2 D8 r-s:执行指定的shell;
' H3 J) e4 P% Y  B( q' M4 e- R( Q-u<用户>:以指定的用户作为新的身份。若不加上此参数,则预设以root作为新的身份;
8 l3 p5 {! D) ~1 s+ q! e( C-v:延长密码有效期限5分钟;1 b9 ?( y, }" R6 a1 r
-V :显示版本信息。+ f6 Z4 |; P4 ^# B7 b% X; ~. H

0 `; ]2 \2 V$ W: isudo文件配置
7 `8 [& E  S2 |' q3 Y+ a1 N( z8 z8 d1 g3 u: u. c7 c6 n
   配置sudo必须通过编辑/etc/sudoers文件,而且只有超级用户才可以修改它。使用visudo命令编辑/etc/sudoers配置文件,操作方法同vi命令。当对多个命令设置速sudo权限时,需要用逗号加空格隔开。使用visudo有两个原因,一是它能够防止两个用户同时修改它;二是它也能进行有限的语法检查。所以,即使只有你一个超级用户,你也最好用visudo来检查一下语法。  9 f, m! v/ i# Y& S( }

0 R' m& ^3 W7 Y; l9 ^( b[root@3 ~]# visudo    更改sudo配置文件# S& e' h! K- H9 K
; D) }' w$ r9 X. E7 v! k% d
# This file MUST be edited with the 'visudo' command as root.   1 d0 E" T! w  _6 v0 n8 u6 r# i3 N2 Y, v" D
必须在root用户使用visudo命令!
8 n6 `( |% ?( r7 S6 }: t7 ?2 u7 Z+ Q  ?5 J6 f" ~; T
## Allow root to run any commands anywhere9 \6 ~: j8 x0 j5 t" S# ]0 G
root    ALL=(ALL)       ALL
, x/ e8 C+ _  w3 e# {- X! E$ \2         ALL=(ALL)       /usr/bin/ls, /usr/bin/mv, /usr/bin/cat
$ U* P( x4 R: R对2用户进行授权(授权完毕后保存退出)9 A4 b- ?& Z  \6 _* }* e3 T# W

5 S# U- [4 Z( V3 t[root@3 ~]# su - 2  切换到普通用户2 Y9 [, d3 h8 n
上一次登录:三 6月 14 10:23:01 CST 2017pts/1 上
# N5 L" m- ]5 H0 R[2@3 ~]$ ls /root/
3 ?& \3 b. U& W( Jls: 无法打开目录/root/: 权限不够 " w! _. P8 J9 U5 U. H' ?) p
(!!!即,普通用户没有访问root用户的权限)
" ]% T! E" c, Q/ M0 b4 X; {# z[2@3 ~]$ sudo /usr/bin/ls /root/
4 d3 P: g/ v- v/ {9 t8 ]9 C9 Q使用sudo命下访问root用户
* g$ k. ^/ j4 h* P5 ][sudo] password for adai001: : f& q% ?  I( `
anaconda-ks.cfg  访问成功!!!
$ T$ H7 s5 a) _$ p) T) l' h[2@3 ~]$ sudo /usr/bin/ls /root/
' D# V# f& e! U, H$ [3 T4 n. ~anaconda-ks.cfg   再次使用sudo命令时无需输入密码) r4 F+ Y4 N3 S( q
[2@3 ~]$ cat /root/   
* k- O2 S) ~7 q. k2 Ncat: /root/: 权限不够0 p$ h4 [) \  E
[2@3 ~]$ sudo /usr/bin/cat /root/
2 ^6 q0 a9 ]5 B2 n- u. ?; q/ F- S/usr/bin/cat: /root/: 是一个目录
" V2 }9 \5 K, G1 H注:, @6 b$ ^! U( S
1)在增添用户的同时需要对用户设置密码(此处设置的是12345678),用户和登录密码要同时成对存在!
6 r! k% S6 w3 V; O3 k2)在编辑sudo配置文件时可以使用"NOPASSWD"前缀设置无密码使用权限,即在使用sudo命令时不用再输入用户密码!
+ Y: A9 V2 G, A) c1 M; L( v$ O3 t- K) k# ?; c3 V7 `8 W
sudo -i 详解- X. e, r7 K1 r1 F
/ [# q3 B' i; b, `' Q
sudo : 暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码。不过有时间限制,Ubuntu默认为一次时长15分钟。' W& ?4 E5 m; u1 Q1 ?# y5 }
1 f3 Q# E6 b7 z, C
su : 切换到某某用户模式,提示输入密码时该密码为切换后账户的密码,用法为“su账户名称”。如果后面不加账户时系统默认为root账户,密码也为超级账户的密码。没有时间限制。
. U2 p$ z/ q3 k/ G. ?1 P6 O0 }
( V) \% q& v. d  L3 L! G$ n' Ksudo -i: 为了频繁的执行某些只有超级用户才能执行的权限,而不用每次输入密码,可以使用该命令。提示输入密码时该密码为当前账户的密码。没有时间限制。执行该命令后提示符变为“#”而不是“$”。想退回普通账户时可以执行“exit”或“logout” 。
3 n/ `7 z# L2 u9 q
& m; a& z1 E/ |" C1 M- P其实,还有几个类似的用法:6 W* Y7 Z% }) h* I9 H
sudo /bin/bash:( Z# k4 `( j" y" i+ }
这个命令也会切换到root的bash下,但不能完全拥有root的所有环境变量,比如PATH,可以拥有root用户的权限。这个命令和 sudo -s 是等同的。' f, t) D3 K# z: W& ?
) g* F3 G6 t$ g: a
sudo -s : 如上
9 Q/ x! S2 M4 g1 j/ h
$ t2 n( b* `0 i3 P/ B# ?sudo su : 这个命令,也是登录到了root,但是并没有切换root的环境变量,比如PATH。
% H) t* [& N3 f- t+ q  d" I+ M2 Y" c3 R5 t, z4 W( ^
sudo su - : 这个命令,纯粹的切换到root环境下,可以这样理解,先是切换到了root身份,然后又以root身份执行了 su -,此时跟使用root登录没有什么区别。此结果貌似跟sudo -i的效果是一样的,但是也有不同,sudo只是临时拥有了root的权限,而su则是使用root账号登录了linux系统。& \0 [* ?0 `- I4 C4 ?+ G
所以,我们再来总结一下:& S3 A2 u# o0 c
6 `$ y6 m; U! ?. X* U  J4 F1 \9 `# {: T
sudo su - 约等于 sudo -i
9 q2 i" u6 |+ X% n" O4 l4 h, u- i4 l0 N. q+ ]1 S
sudo -s 完全等于 sudo /bin/bash 约等于 sudo su' p7 J3 v5 K  ^. g0 j0 g! O7 ]4 P
sudo 终究被一个"临时权限的帽子"扣住,不能等价于纯粹的登录到系统里。% I/ n) i# k: _( a$ ^' ?5 H4 a

# O5 d2 u) A) }: psudo配置文件样例
% s! f. b* e. O3 l6 v
0 X# E% p' a4 f8 f#
. g/ ?, m( ^9 i0 L5 C# Sample /etc/sudoers file.
* H; D- ?; i0 X7 K: P. ?#$ }7 D" n1 f2 d
# This file MUST be edited with the 'visudo' command as root.
1 W$ D! U& u% h, _9 Y# H1 l#
, A2 n* Z. I# k- k3 `  u# See the sudoers man page for the details on how to write a sudoers file.$ P8 U- g9 V; e" ~6 _
#
7 i* X; M5 _( }0 l) k! Q+ B* R& N- b9 V) ?; T% H+ I( |+ l
##4 g5 p) H# l2 ^3 v& @1 A- V
# User alias specification
, U& v  Z( }% ]7 S##
1 n0 @" r% w  q: I. fUser_Alias        FULLTIMERS = millert, mikef, dowdy
5 {3 H$ m. w8 T, o% VUser_Alias        PARTTIMERS = bostley, jwfox, crawl
1 W' y& W- q( ~" X" DUser_Alias        WEBMASTERS = will, wendy, wim, x0 [& w2 a& {# K

: n, Y3 _6 s/ K" @2 F, s5 B+ g; u/ ?##0 w  ^  C7 G' m$ v2 B0 v
# Runas alias specification
7 F. f; [! x$ `/ P- |##
8 E. w) p/ l$ h; m; PRunas_Alias        OP = root, operator1 n4 x/ K  m. c  V1 I! H9 U+ \
Runas_Alias        DB = oracle, sybase/ e* j: o1 A- Z6 h2 I

2 Y0 ~8 b0 ^5 n: r% {& n5 {( q##3 Z# O1 ]9 r$ ?% k/ i+ a
# Host alias specification: K3 G4 w/ w3 Y) L3 \; n8 v7 v: w
##
: a3 a: S8 H" H+ _8 m3 D! KHost_Alias        SPARC = bigtime, eclipse, moet, anchor:\
& x, n/ s' w: u0 u6 m                SGI = grolsch, dandelion, black:\
5 E) I& M  Z" I. v* o                ALPHA = widget, thalamus, foobar:\0 Y& g: ~& p; i" o$ f
                HPPA = boa, nag, python; o* ]/ O' ]. c2 G' G) Q- Y
Host_Alias        CUNETS = 128.138.0.0/255.255.0.04 n+ i% k. z4 Y+ `- v6 b, D+ u
Host_Alias        CSNETS = 128.138.243.0, 128.138.204.0/24, 128.138.242.0
  H8 k# N& K& q/ M4 A+ _2 n5 YHost_Alias        SERVERS = master, mail, www, ns, |$ q" |/ v4 c, R9 ^0 P
Host_Alias        CDROM = orion, perseus, hercules  Y% `9 I8 V  \+ O

8 S% v* T! k7 ?/ ?) s##
1 E8 d  W/ {9 s$ A0 `4 d+ Y# Cmnd alias specification
7 e$ ]) b" J3 H( I6 ?9 P$ Q##
: K  |9 B6 V8 l4 aCmnd_Alias        DUMPS = /usr/sbin/dump, /usr/sbin/rdump, /usr/sbin/restore, \; S: @" _( l9 V
                        /usr/sbin/rrestore, /usr/bin/mt6 S8 u0 ?0 W) g/ g+ \7 `$ S: F
Cmnd_Alias        KILL = /usr/bin/kill! ?; K% O% \# F! y7 l; H' `
Cmnd_Alias        PRINTING = /usr/sbin/lpc, /usr/bin/lprm
3 V) {; c3 v9 ~6 g9 {Cmnd_Alias        SHUTDOWN = /usr/sbin/shutdown6 }. I9 j$ `- `1 `' K
Cmnd_Alias        HALT = /usr/sbin/halt' o' T6 r& o+ E% Z: c
Cmnd_Alias        REBOOT = /usr/sbin/reboot3 l1 b5 A" m0 I5 `% j
Cmnd_Alias        SHELLS = /sbin/sh, /usr/bin/sh, /usr/bin/csh, /usr/bin/ksh, \
- {2 f% f, ?' K' t4 ^                         /usr/local/bin/tcsh, /usr/bin/rsh, \
& y* p/ W- ?$ s) L: |/ g                         /usr/local/bin/zsh
/ W7 O. r2 s9 |4 V1 ]- `" \Cmnd_Alias        SU = /usr/bin/su0 d1 v$ `! p! L) C: d' B5 v
Cmnd_Alias        VIPW = /usr/sbin/vipw, /usr/bin/passwd, /usr/bin/chsh, \5 a9 a1 |+ ]* j! Y7 J' x4 Y/ z
                       /usr/bin/chfn
" M; d! O) ]% y* Q3 X3 D; F/ L7 {! N* }
### b# S) a% W$ w7 y
# Override built-in defaults
) \+ k, d3 n. R2 H" n##+ i+ X/ v. R' ~5 K' k1 P
Defaults               syslog=auth; G) ?: K5 h% `. W( j4 `
Defaults>root          !set_logname- `: V. L# |3 L( a
Defaults:FULLTIMERS    !lecture
% }) h( D; s2 U, [$ L+ H$ ^5 cDefaults:millert       !authenticate: X# v0 J( o/ [/ `
Defaults@SERVERS       log_year, logfile=/var/log/sudo.log% i1 ?! f/ F+ A6 a3 z% d

. s# l1 m6 X. [. r$ j8 z: Z##2 M1 D) E6 o6 f; O  {. }
# User specification  D7 F" \* }$ c( U+ O% X
##
6 q, U' @+ y/ m
5 r2 H& F, z, R+ m( ]3 J# root and users in group wheel can run anything on any machine as any user
. t0 B, K" L$ _& G$ s# yroot                ALL = (ALL) ALL
9 f$ z" o  z  o: r7 G. B%wheel                ALL = (ALL) ALL2 k0 S+ H. r4 X$ ?8 t8 N. i
7 w: g! _1 A6 d" b4 c/ h2 ?/ N
# full time sysadmins can run anything on any machine without a password! z) c9 x3 d+ {. D& e
FULLTIMERS        ALL = NOPASSWD: ALL9 Z* |7 c7 V' ?2 e; g% q; c
: ?2 \! R8 B  V" s2 ^8 q
# part time sysadmins may run anything but need a password
8 x# ]+ ]! C; T7 n" u, DPARTTIMERS        ALL = ALL0 z' q# Y2 R' {& O  g3 y+ P; R

( V" \7 i7 }3 u0 B7 X# jack may run anything on machines in CSNETS
3 x% w$ A5 h. u3 Cjack                CSNETS = ALL
; M; L3 k9 S) q8 R: j0 C9 M  T/ s% s+ L3 v" ]9 J
# lisa may run any command on any host in CUNETS (a class B network)
+ }( m' c. l" j5 S# X, q  l+ rlisa                CUNETS = ALL
: n7 V/ G% `* ]! U* o; I" U
) a% f6 c  D5 b: B' P- Y& B0 R# operator may run maintenance commands and anything in /usr/oper/bin/
' T( x% M, w6 }operator        ALL = DUMPS, KILL, SHUTDOWN, HALT, REBOOT, PRINTING,\8 \1 z+ P8 Q9 E0 f8 u" N' `
                sudoedit /etc/printcap, /usr/oper/bin/( j# o5 |) a5 @) ~
7 W- z4 Y+ u1 T% z1 {  m. ~& Y
# joe may su only to operator
( X; o; {  }; L, C$ Cjoe                ALL = /usr/bin/su operator1 t2 b3 p8 E" O; R9 P
/ d  |" [! N$ n. g
# pete may change passwords for anyone but root on the hp snakes
; b% s! s% D" V3 Y- a  qpete                HPPA = /usr/bin/passwd [A-z]*, !/usr/bin/passwd root! o# Z$ b2 T: Z. n
$ I' h% j. {; v5 I* S# r
# bob may run anything on the sparc and sgi machines as any user7 W, w5 d: w- o; @9 i$ k1 f
# listed in the Runas_Alias "OP" (ie: root and operator)
! M, f/ z  x% _+ H4 ?4 q, J4 b0 Gbob                SPARC = (OP) ALL : SGI = (OP) ALL* S# p. o5 F, L8 B$ D5 [, i

9 U: v2 _& A  i* h# q# jim may run anything on machines in the biglab netgroup, Y1 j6 k6 X9 D
jim                +biglab = ALL; X' l" z3 S6 l& ?1 Q' p7 ^

# `' A  b+ A  p2 O: p! |4 s6 ?# users in the secretaries netgroup need to help manage the printers* \4 U! k! d4 p2 G9 U
# as well as add and remove users( d% ^, F+ J  c0 ?* z
+secretaries        ALL = PRINTING, /usr/bin/adduser, /usr/bin/rmuser
* M+ m5 S: Y1 ^0 t
' J- C  i; f4 e) S# fred can run commands as oracle or sybase without a password
6 K- H# n3 S' Z; K0 G1 q6 ^fred                ALL = (DB) NOPASSWD: ALL1 x' ~. j2 B( i

" v/ o3 n) X# a  O/ ~) \' I/ f0 c' B) Y# on the alphas, john may su to anyone but root and flags are not allowed" U$ x5 F. [$ J8 e; i
john                ALPHA = /usr/bin/su [!-]*, !/usr/bin/su *root*
* S1 o  |. y9 r9 J# c7 Z
6 U( f+ H' Q6 \- l7 V# jen can run anything on all machines except the ones
  }; z& U% G$ N" U# T# in the "SERVERS" Host_Alias. U2 a' M  A# o* `
jen                ALL, !SERVERS = ALL7 T7 b$ H2 |- B1 ~+ ]

9 m' ~7 G7 K8 X1 O0 K) F# jill can run any commands in the directory /usr/bin/, except for3 A. I& i( V# a, s" x6 i
# those in the SU and SHELLS aliases.# |, [; ?- w3 g# U  G$ j
jill                SERVERS = /usr/bin/, !SU, !SHELLS0 `9 i9 ~9 d# a" D; v% A' @  t4 c0 M

" n, e7 x8 _8 A' g& M# steve can run any command in the directory /usr/local/op_commands/8 v3 ?" w0 v" J. u8 i
# as user operator.6 d' k& o  }$ C& v3 F
steve                CSNETS = (operator) /usr/local/op_commands/
& M$ {/ B/ n8 @5 x- Z* v; p( C8 }
# matt needs to be able to kill things on his workstation when
( f9 p' _" ^3 |# they get hung./ m5 t6 V) V' w$ }1 ]% A/ d4 G3 x
matt                valkyrie = KILL( r! p' ]0 C' W& U- B" B6 `
- k( [0 p6 f& j' m
# users in the WEBMASTERS User_Alias (will, wendy, and wim)+ T& S. f' }; V" Y1 M
# may run any command as user www (which owns the web pages)
1 r4 T' }  d" ?2 \: ^+ `* j7 t# or simply su to www.
) W4 H/ `2 O9 l# N( q& t1 L8 S* ~WEBMASTERS        www = (www) ALL, (root) /usr/bin/su www
$ F# Y6 d  `6 E# D
( x/ X, q& D, m% m+ Z+ f# anyone can mount/unmount a cd-rom on the machines in the CDROM alias
3 T  A% L- D" f5 E. CALL                CDROM = NOPASSWD: /sbin/umount /CDROM,\
' O, a# H4 q# {: b7 O0 Y6 s% ]* B7 `2 Z                /sbin/mount -o nosuid\,nodev /dev/cd0a /CDROM
2 Z3 i1 e- J+ i+ u文件编辑状态下可以用“/”进行关键词查找,输入“:set nu(=number)”显示行号。
 楼主| 发表于 2018-12-27 10:50:08 | 显示全部楼层
vi sudo    更改sudo配置文件
3 g3 L4 ]9 e! Y1 }
5 z9 U& w: Z8 C  j, l) M# Q# This file MUST be edited with the 'visudo' command as root.   1 [% L# m1 o! f) U* b2 \
必须在root用户使用visudo命令!
  [0 z! X! a7 p6 o# V4 t) X
) F& l0 q1 r/ g. U, i% J## Allow root to run any commands anywhere* Z8 ^  a7 q& H% s# K. H: i* `
root    ALL=(ALL)       ALL. g7 C' y6 Y0 |8 }5 C4 u& {9 _9 ^
2         ALL=(ALL)       /usr/bin/ls, /usr/bin/mv, /usr/bin/cat4 Y7 z% L# K- X) [  h
对2用户进行授权(授权完毕后保存退出), \1 M. w& i1 Y" \4 Z

9 ~6 }' B: h; u- U0 q3 l& [( B$ Y7 `[root@3 ~]# su - 2  切换到普通用户5 A) M) g4 ?! x3 Q4 [* Z
上一次登录:三 6月 14 10:23:01 CST 2017pts/1 上
' E, {3 V% O: q( }  S8 @5 ]$ M, B[2@3 ~]$ ls /root/
8 n  Y5 O2 O/ M+ w ls: 无法打开目录/root/: 权限不够
4 _1 F) G* z( |5 T: G (!!!即,普通用户没有访问root用户的权限)  c/ P% a! B6 y# u
[2@3 ~]$ sudo /usr/bin/ls /root/
* F2 C3 Y& w3 h4 Z# g  q6 U使用sudo命下访问root用户
  K3 W9 }. m- m1 J: P[sudo] password for adai001: - H! _+ o/ P* B5 s+ F' e" q
anaconda-ks.cfg  访问成功!!!
/ h8 _$ u6 Q/ _% i[2@3 ~]$ sudo /usr/bin/ls /root/$ {; D6 |- H: C2 ]/ D6 E
anaconda-ks.cfg   再次使用sudo命令时无需输入密码
5 I: g! c4 ?3 X0 w4 N4 {; D[2@3 ~]$ cat /root/   
5 V! a4 ~, A6 ? cat: /root/: 权限不够( j" ]" y1 B0 B% y& L6 i7 t
[2@3 ~]$ sudo /usr/bin/cat /root/
! I3 ~' x5 J) i) J0 G /usr/bin/cat: /root/: 是一个目录0 C/ _8 g& D* ~* O1 ?5 C
注:/ R6 Z* n1 Z3 q) [, y
1)在增添用户的同时需要对用户设置密码(此处设置的是12345678),用户和登录密码要同时成对存在!* X. C5 X' K6 {1 P" Q# `9 `9 ^
2)在编辑sudo配置文件时可以使用"NOPASSWD"前缀设置无密码使用权限,即在使用sudo命令时不用再输入用户密码!
发表于 2018-12-27 10:51:09 | 显示全部楼层
默认安装完成之后并不知道root用户的密码,那么如何应用root权限呢?
6 x, D$ e# \) L3 u: f(1)sudo 命令  
6 k6 T3 ~3 V6 q+ X这样输入当前管理员用户密码就可以得到超级用户的权限。但默认的情况下5分钟root权限就失效了。, A) x6 X6 U! L: m; a, m# q* @9 f: L
(2)sudo -i
5 l5 I( r2 U7 c5 n" u通过这种方法输入当前管理员用户的密码就可以进到root用户。
: k. g# u' m$ Q, P(3)如果想一直使用root权限,要通过su切换到root用户。
, y9 r$ |, \7 J! ^0 ?# O 那我们首先要重设置root用户的密码:
$ f, i. V. r, N$ W/ p' ^/ c3 vsudo passwd root
  z( h% D4 X2 d这样就可以设置root用户的密码了。. J( {# e; A8 [2 ~# x% `
# K9 B4 q) }, W0 }+ f2 @
之后就可以自由的切换到root用户了
1 R1 F* {# j! fsu
/ w! k+ J' N6 w: Z输入root用户的密码即可。
, B) l8 |; V2 @2 H8 o, J- l" X& @# h. g! s* \
当然,如果想从root用户切换回一般用户,则可使用  su -val(一般用户名)
" i1 |0 e. N8 V& P4 L8 [( i5 f' M3 s9 x1 w5 T/ P' u/ u/ F5 x, W; v( J% [
而当你再次切回到root用户,则只需要键入exit,再次输入exit则回到最初的用户下
发表于 2018-12-27 10:55:13 | 显示全部楼层
sudo vim
4 p# U( y! c8 r1 {5 N1 R  ]sudo systemctl status network.service
7 z7 G* ?& R9 ~: v6 J9 I# Rsudo 免密切换,免密输入。
 楼主| 发表于 2019-11-11 10:16:46 | 显示全部楼层
最常用的配置:
; c! F. ~  t9 n0 S2 @用户 登录的主机=(可以变换的身份) 可以执行的命令
% L+ y$ m9 a; O% Y# T例如:
& o+ z$ }' g, o# oroot ALL=(ALL) ALL  ^8 d( ]" J( B( U0 g, v
root用户可以在任意主机上切换到任意用户,执行任何命令。
6 s3 G5 z! I, z  B: [
0 ?' g1 C% F: L6 vosadm ALL=(duser) NOPASSWORD:ALL
  T! z0 c( V0 U1 c- U* r1 }osadm用户可以在任意主机上,切换到duser用户,执行任意命令,并且不用输入密码。( R+ ^, n. H0 \  u& p5 _6 }/ c1 }
默认是需要输入当前已登陆的用户的密码的。也就是说,这条命令,如果没有NOPASSWORD这个关键字,osadm切换到duser是需要输入osadm用户本身的密码的。. m! o9 P5 ~7 N2 B. ]: V  y4 L. M8 g: t
* F8 v/ d) F% X5 U/ d- L( ?
osuser ALL=(root) NOPASSWORD:/opt/sudobin2/pkgscript.sh
' w1 D2 q0 y9 C. P% m$ yosuser可以在任意主机上,切换为root用户,执行/opt/sudobin2/pkgscript.sh命令,并且不用输入密码。
1 C% E% T$ ?1 e# t
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

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

如有购买积分卡请联系497906712

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

GMT+8, 2022-1-20 22:06 , Processed in 0.044990 second(s), 21 queries .

Powered by LR.LINUX.cloud bbs168x X3.2 Licensed

© 2012-2022 Comsenz Inc.

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