日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

[转]sudoers设置

發(fā)布時間:2023/12/10 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 [转]sudoers设置 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
from?http://www.cnblogs.com/zhuowei/archive/2009/04/13/1435190.html

sudo與sudoers

sudo 是linux下常用的允許普通用戶使用超級用戶權限的工具,允許系統(tǒng)管理員讓普通用戶執(zhí)行一些或者全部的root命令,如halt,reboot,su等 等。這樣不僅減少了root用戶的登陸 和管理時間,同樣也提高了安全性。Sudo不是對shell的一個代替,它是面向每個命令的。它的特性主要有這樣幾點:

  § sudo能夠限制用戶只在某臺主機上運行某些命令。

  § sudo提供了豐富的日志,詳細地記錄了每個用戶干了什么。它能夠?qū)⑷罩緜鞯街行闹鳈C或者日志服務器。

  § sudo使用時間戳文件來執(zhí)行類似的“檢票”系統(tǒng)。當用戶調(diào)用sudo并且輸入它的密碼時,用戶獲得了一張存活期為5分鐘的票(這個值可以在編譯的時候改變)。

  § sudo的配置文件是sudoers文件,它允許系統(tǒng)管理員集中的管理用戶的使用權限和使用的主機。它所存放的位置默認是在/etc/sudoers,屬性必須為0411。

sudo的使用

?????? 權限:在 /etc/sudoers 中有出現(xiàn)的使用者

  使用方式:sudo -V

  sudo -h

  sudo -l

  sudo -v

  sudo -k

  sudo -s

  sudo -H

  sudo [ -b ] [ -p prompt ] [ -u username/#uid] -s

  用法:sudo command

  說明:以系統(tǒng)管理者的身份執(zhí)行指令,也就是說,經(jīng)由 sudo 所執(zhí)行的指令就好像是 root 親自執(zhí)行

  參數(shù):

  -V 顯示版本編號

  -h 會顯示版本編號及指令的使用方式說明

  -l 顯示出自己(執(zhí)行 sudo 的使用者)的權限

  -v 因為 sudo 在第一次執(zhí)行時或是在 N 分鐘內(nèi)沒有執(zhí)行(N 預設為五)會問密碼,這個參數(shù)是重新做一次確認,如果超過 N 分鐘,也會問密碼

  -k 將會強迫使用者在下一次執(zhí)行 sudo 時問密碼(不論有沒有超過 N 分鐘)

  -b 將要執(zhí)行的指令放在背景執(zhí)行

  -p prompt 可以更改問密碼的提示語,其中 %u 會代換為使用者的帳號名稱, %h 會顯示主機名稱

  -u username/#uid 不加此參數(shù),代表要以 root 的身份執(zhí)行指令,而加了此參數(shù),可以以 username 的身份執(zhí)行指令(#uid 為該 username 的使用者號碼)

  -s 執(zhí)行環(huán)境變數(shù)中的 SHELL 所指定的 shell ,或是 /etc/passwd 里所指定的 shell

  -H 將環(huán)境變數(shù)中的 HOME (家目錄)指定為要變更身份的使用者家目錄(如不加 -u 參數(shù)就是系統(tǒng)管理者 root )

  command 要以系統(tǒng)管理者身份(或以 -u 更改為其他人)執(zhí)行的指令

  范例:

  sudo -l 列出目前的權限

  sudo -V 列出 sudo 的版本資訊

  指令名稱:sudoers(在fc5下顯示不能找到此命令,但用man可以查到其用法。)

  用來顯示可以使用sudo的用戶

sudoers的配置

sudoers 是sudo的主要配置文件,linux下通常在/etc目錄下,如果是solaris,缺省不裝sudo的,編譯安裝后通常在安裝目錄的etc目錄下,不 過不管sudoers文件在哪兒,sudo都提供了一個編輯該文件的命令:visudo來對該文件進行修改。強烈推薦使用該命令修改 sudoers,因為它會幫你校驗文件配置是否正確,如果不正確,在保存退出時就會提示你哪段配置出錯的。?
言歸正傳,下面介紹如何配置sudoers?
首先寫sudoers的缺省配置:?
#############################################################?
# sudoers file.?
#?
# This file MUST be edited with the 'visudo' command as root.?
#?
# See the sudoers man page for the details on how to write a sudoers file.?
#?
# Host alias specification?
# User alias specification?
# Cmnd alias specification?
# Defaults specification?
# User privilege specification?
root??? ALL=(ALL) ALL?
# Uncomment to allow people in group wheel to run all commands?
# %wheel??????? ALL=(ALL)?????? ALL?
# Same thing without a password?
# %wheel??????? ALL=(ALL)?????? NOPASSWD: ALL?
# Samples?
# %users? ALL=/sbin/mount /cdrom,/sbin/umount /cdrom?
# %users? localhost=/sbin/shutdown -h now?
##################################################################?
1. 最簡單的配置,讓普通用戶support具有root的所有權限?
執(zhí)行visudo之后,可以看見缺省只有一條配置:?
root??? ALL=(ALL) ALL?
那么你就在下邊再加一條配置:?
support ALL=(ALL) ALL?
這樣,普通用戶support就能夠執(zhí)行root權限的所有命令?
以support用戶登錄之后,執(zhí)行:?
sudo su -?
然后輸入support用戶自己的密碼,就可以切換成root用戶了?
2. 讓普通用戶support只能在某幾臺服務器上,執(zhí)行root能執(zhí)行的某些命令?
首先需要配置一些Alias,這樣在下面配置權限時,會方便一些,不用寫大段大段的配置。Alias主要分成4種?
Host_Alias?
Cmnd_Alias?
User_Alias?
Runas_Alias?
1) 配置Host_Alias:就是主機的列表?
Host_Alias????? HOST_FLAG = hostname1, hostname2, hostname3?
2) 配置Cmnd_Alias:就是允許執(zhí)行的命令的列表,命令前加上!表示不能執(zhí)行此命令.

命令一定要使用絕對路徑,避免其他目錄的同名命令被執(zhí)行,造成安全隱患 ,因此使用的時候也是使用絕對路徑!?
Cmnd_Alias????? COMMAND_FLAG = command1, command2, command3 ,!command4
3) 配置User_Alias:就是具有sudo權限的用戶的列表?
User_Alias USER_FLAG = user1, user2, user3?
4) 配置Runas_Alias:就是用戶以什么身份執(zhí)行(例如root,或者oracle)的列表?
Runas_Alias RUNAS_FLAG = operator1, operator2, operator3?
5) 配置權限?
配置權限的格式如下:?
USER_FLAG HOST_FLAG=(RUNAS_FLAG) COMMAND_FLAG?
如果不需要密碼驗證的話,則按照這樣的格式來配置?
USER_FLAG HOST_FLAG=(RUNAS_FLAG) NOPASSWD: COMMAND_FLAG?
配置示例:?
############################################################################?
# sudoers file.?
#?
# This file MUST be edited with the 'visudo' command as root.?
#?
# See the sudoers man page for the details on how to write a sudoers file.?
#?
# Host alias specification?
Host_Alias????? EPG = 192.168.1.1, 192.168.1.2?
# User alias specification?
# Cmnd alias specification?
Cmnd_Alias????? SQUID = /opt/vtbin/squid_refresh, !/sbin/service, /bin/rm

Cmnd_Alias????? ADMPW = /usr/bin/passwd [A-Za-z]*, !/usr/bin/passwd, !/usr/bin/passwd root?
# Defaults specification?
# User privilege specification?
root??? ALL=(ALL) ALL?
support EPG=(ALL) NOPASSWD: SQUID?
support EPG=(ALL) NOPASSWD: ADMPW
# Uncomment to allow people in group wheel to run all commands?
# %wheel??????? ALL=(ALL)?????? ALL?
# Same thing without a password?
# %wheel??????? ALL=(ALL)?????? NOPASSWD: ALL?
# Samples?
# %users? ALL=/sbin/mount /cdrom,/sbin/umount /cdrom?
# %users? localhost=/sbin/shutdown -h now?
###############################################################

總結(jié)

以上是生活随笔為你收集整理的[转]sudoers设置的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。