自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Linux下的十項實用“sudo”配置選項

譯文
系統(tǒng) Linux
無論是Linux還是其他類的UNIX系統(tǒng),都只允許root用戶運行全部命令并執(zhí)行軟件包的安裝、更新、移除以及其他一些會對系統(tǒng)造成重要修改的特定操作。本文列出了十項實用的“sudo”配置選項,供大家參考!

[[182708]]

【51CTO.com快譯】無論是Linux還是其他類的UNIX系統(tǒng),都只允許root用戶運行全部命令并執(zhí)行軟件包的安裝、更新、移除以及其他一些會對系統(tǒng)造成重要修改的特定操作。

然而,也有部分系統(tǒng)管理員允許其他用戶正常使用sudo配置以運行此類重要命令并進行關(guān)鍵性系統(tǒng)操作。

也有一些系統(tǒng)管理員會共享root用戶密碼(這種作法并不推薦),這意味著普通系統(tǒng)用戶也能夠通過su命令訪問root用戶賬戶。另外,sudo也允許用戶作為root(或者其他用戶身份)執(zhí)行命令,具體由安全策略指定:

  • 讀取并解析/etc/sudoers,查看調(diào)用用戶及其權(quán)限。
  • 而后提示該調(diào)用用戶輸入密碼(通常為該用戶的密碼,也可為目標用戶的密碼,或者以NOPASSWD標簽跳過此步驟)。
  • 在此之后,sudo會創(chuàng)建一個名為setuid()的子進程,用以切換至該目標用戶。
  • 而后,它執(zhí)行一條shell或者命令,并配合子進程中給定的參數(shù)。

以下為10個/etc/sudoers文件配置,能夠?qū)udo命令的Defaults效果做出修改。

  1. $ sudo cat /etc/sudoers 

/etc/sudoers文件

  1. # # This file MUST be edited with the 'visudo' command as root. # # Please consider adding local content in /etc/sudoers.d/ instead of # directly modifying this file. # # See the man page for details on how to write a sudoers file.  
  2. # Defaults  
  3. env_reset Defaults  
  4. mail_badpass Defaults 
  5. secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" Defaults  
  6. logfile="/var/log/sudo.log" Defaults lecture="always" Defaults  
  7. badpass_message="Password is wrong, please try again" Defaults  
  8. passwd_tries=5 Defaults insults Defaults log_input,log_output 

Defaults條目類型

  1. Defaults parameter, parameter_list #affect all users on any host  
  2. Defaults@Host_List parameter, parameter_list #affects all users on a  
  3. specific host Defaults:User_List parameter, parameter_list #affects a 
  4. specific user Defaults!Cmnd_List parameter, parameter_list #affects a 
  5. specific command Defaults>Runas_List parameter, parameter_list #affects 
  6. commands being run as a specific user 

在本指南之內(nèi),我們將首先討論第一種Defaults類型。它的參數(shù)可以是標記、整數(shù)值、字符串或者列表。

需要注意的是,各標記為明確boolean且可利用'!'運算符進行關(guān)閉。另外,兩項賦值運算符分別為+=(添加至列表)與-=(移除自列表)。

  1. Defaults parameter OR Defaults parameter=value OR Defaults parameter -=value Defaults parameter +=value OR Defaults !parameter 

1. 設(shè)置安全PATH

此為每一條命令配合sudo運行時所使用的路徑,其中包含兩項重點:

  • 當系統(tǒng)管理員不信任sudo用戶掌握安全PATH環(huán)境變量時使用。
  • 用于劃分root path與user path,用戶通過exempt_group定義時不受此設(shè)置影響。

欲完成設(shè)置,請你添加以下行:

  1. Defaults 
  2. secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin" 

2. 在TTY用戶登錄會話上啟用sudo

用于通過真實tty調(diào)用sudo,而非使用cron或者cgi-bin腳本等方法:

  1. Defaults requiretty 

3.利用pty運行sudo命令

有時候,攻擊者會利用sudo運行惡意程序(例如病毒或者惡意軟件),它會在主程序停止執(zhí)行后繼續(xù)在用戶終端設(shè)備上fork一個后臺進程。

為了避免此類問題,大家可以利用use_pty參數(shù)配置sudo以要求它僅可通過psuedo-pty運行其他命令,而無論I/O記錄是否開啟:

  1. Defaults use_pty 

4.創(chuàng)建一個sudo日志文件

在默認情況下,sudo會通過syslog(3)進行日志記錄。不過要指定特定日志文件,大家可以使用logfile參數(shù):

  1. Defaults logfile="/var/log/sudo.log" 

要在此定制日志文件中記錄主機名稱與四位數(shù)字年份,則可分別使用log_host與log_year參數(shù):

  1. Defaults log_host, log_year, logfile="/var/log/sudo.log" 

以下為定制sudo日志文件示例:

5.記錄sudo命令的輸入/輸出結(jié)果

我們可使用log_input與log_output參數(shù)使sudo得以在pseudo-tty中運行命令,同時分別記錄全部用戶的輸入與輸出結(jié)果。

默認I/O日志目錄為/var/log/sudo-io,如果其中存在一條會話序列號,則將被存儲在該目錄中。大家可以通過iolog_dir參數(shù)指定您需要的目錄。

  1. Defaults log_input, log_output 

%{seq}等轉(zhuǎn)義序列也受到支持,它會將序列號單調(diào)遞增為base-36序列號,例如000001,其中每兩位數(shù)字用于生成一個新的目錄,如00/00/01。具體示例如下:

  1. $ cd /var/log/sudo-io/ $ ls $ cd 00/00/01 $ ls $ cat log 

6.引導(dǎo)sudo用戶

為了引導(dǎo)sudo用戶在系統(tǒng)上使用密碼,我們可以使用lecture參數(shù)。它可設(shè)定為三種值:

  • always – 始終引導(dǎo)用戶。
  • once – 僅在用戶初次執(zhí)行sudo命令時進行引導(dǎo)(不指定值時默認為此設(shè)置)。
  • never – 永遠不引導(dǎo)用戶。
  1. Defaults lecture="always" 

另外,大家也可以利用lecture_file參數(shù)設(shè)置一個定制lecture文件,在此文件中輸入適當信息:

  1. Defaults lecture_file="/path/to/file" 

Lecture Sudo Users

Lecture Sudo Users

7.在輸入錯誤sudo密碼時顯示定制信息

當用戶輸入錯誤密碼時,可在命令行中顯示特定信息。它的默認信息為“sorry,try again”,大家可以使用badpass_message參數(shù)對內(nèi)容進行修改:

  1. Defaults badpass_message="Password is wrong, please try again" 

8.增加sudo密碼嘗試次數(shù)

參數(shù)passwd_tries用于指定用戶能夠嘗試輸入密碼的次數(shù)。

它的默認值為3:

  1. Defaults passwd_tries=5 

要設(shè)置密碼超時(默認為5分鐘),可使用passwd_timeout參數(shù),具體如下:

  1. Defaults passwd_timeout=2 

9.當輸入錯誤密碼時,讓sudo顯示侮辱性內(nèi)容

當用戶輸入錯誤密碼時,sudo將通過insults參數(shù)顯示侮辱性內(nèi)容。它會自動關(guān)閉badpass_message參數(shù)。

  1. Defaults insults 

10.了解更多sudo配置

另外,感興趣的朋友也可以參閱以下鏈接來了解更多sudo命令配置選項:su與sudo間的區(qū)別以及如何在Linux中配置sudo(英文原文)。

原文標題:10 Useful Sudoers Configurations for Setting ‘sudo’ in Linux,作者:Aaron Kili

【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】

責任編輯:武曉燕 來源: 51CTO
相關(guān)推薦

2009-12-25 09:34:54

袁萌Linux

2009-12-24 09:22:30

2010-09-17 17:35:55

2019-09-27 08:00:00

Visual StudVisual Stud開發(fā)技巧

2016-10-28 14:01:22

DevOps自動化

2012-06-29 09:52:42

2019-04-24 12:49:00

2012-06-28 11:26:22

2016-04-27 15:42:01

技巧構(gòu)建SDK

2024-08-13 10:47:01

2023-01-09 08:48:00

IT決議結(jié)構(gòu)

2022-02-14 11:30:28

CIO首席信息官網(wǎng)絡(luò)安全

2016-11-17 14:42:46

云企業(yè)訣竅

2021-06-25 10:15:14

大數(shù)據(jù)技術(shù)大數(shù)據(jù)新技術(shù)

2015-04-23 09:38:43

云計算基礎(chǔ)AWS解決方案

2015-06-01 16:58:43

布線

2024-05-16 08:00:00

2013-02-25 09:16:12

HTML5WebCSS

2022-03-09 09:00:00

代碼技巧程序員

2013-08-29 16:47:51

點贊
收藏

51CTO技術(shù)棧公眾號