Linux系統實戰項目——sudo日誌審計

来源:http://www.cnblogs.com/youkanyouxiao/archive/2016/09/13/5868814.html
-Advertisement-
Play Games

Linux系統實戰項目——sudo日誌審計 由於企業內部許可權管理啟用了sudo許可權管理,但是還是有一定的風險因素,畢竟運維、開發等各個人員技術水平、操作習慣都不相同,也會因一時失誤造成誤操作,從而影響系統運行 因此,徵對sudo提權的操作,便於管理與後續維護,開啟sudo日誌審計功能對用戶執行 su ...


Linux系統實戰項目——sudo日誌審計

 

由於企業內部許可權管理啟用了sudo許可權管理,但是還是有一定的風險因素,畢竟運維、開發等各個人員技術水平、操作習慣都不相同,也會因一時失誤造成誤操作,從而影響系統運行

 

因此,徵對sudo提權的操作,便於管理與後續維護,開啟sudo日誌審計功能對用戶執行 sudo命令的操作行為,但又不記錄其它命令的操作行為

 

一:生產環境中日誌審計方案如下:

1、syslog全部操作日誌審計,此種方法信息量大,不便查看

2、sudo日誌配合syslog服務進行日誌審計

3、堡壘機日誌審計

4、bash安裝監視器,記錄用戶使用操作

 

二:配置sudo日誌審計

1、安裝sudo與syslog服務

[root@Centos ~]# rpm -qa|grep sudo

sudo-1.8.6p3-24.el6.x86_64

[root@Centos ~]# rpm -qa|grep rsyslog

rsyslog-5.8.10-10.el6_6.x86_64

檢查是否安裝兩種服務,如果沒有安裝,就使用下麵的命令進行安裝

yum install sudo -y

yum install rsyslog -y

備註:Centos 5.x 為syslog,Centos 6.x 為rsyslog

 

2、配置服務

創建日誌保存目錄

[root@Centos ~]# mkdir -p /var/log/

伺服器環境查看

[root@Centos ~]# cat /etc/redhat-release 

CentOS release 6.5 (Final)

[root@Centos ~]# uname -r

2.6.32-431.el6.x86_64

 

伺服器環境為centos 6.5 所以syslog日誌配置文件為/etc/rsyslog.conf

[root@Centos ~]#echo "local2.debug /var/log/sudo.log">>/etc/rsyslog.conf

查看配置

[root@Centos ~]# tail -1 /etc/rsyslog.conf 

local2.debug  /var/log/sudo.log

 

如果伺服器為centos 5.x 所以syslog日誌配置文件為/etc/syslog.conf

 

[root@Centos ~]#echo "local2.debug /var/log/sudo.log">>/etc/syslog.conf

[root@Centos ~]#echo "Defaults logfile=/var/log/sudo.log">>/etc/sudoers

查看配置

[root@Centos ~]# tail -1 /etc/syslog.conf 

local2.debug  /var/log/sudo.log

 

3、配置/etc/sudoers

[root@Centos ~]# echo "Defaults logfile=/var/log/sudo.log">>/etc/sudoers

[root@Centos ~]# tail -1 /etc/sudoers 

Defaults logfile=/var/log/sudo.log

 

4、重啟服務

[root@Centos ~]# /etc/init.d/rsyslog restart

Shutting down system logger:                               [  OK  ]

Starting system logger:                                    [  OK  ]

 

三:測試日記審計結果

[root@Centos ~]# su - cjkaifa001

[cjkaifa001@Centos ~]$ pwd

/home/cjkaifa001

[cjkaifa001@Centos ~]$ touch 123.txt

[cjkaifa001@Centos ~]$ sudo ls

123.txt

[cjkaifa001@Centos ~]$ cat /var/log/sudo.log 

cat: /var/log/sudo.log: Permission denied

直接使用cat命令提示許可權不足

[cjkaifa001@Centos ~]$ sudo cat /var/log/sudo.log 使用sudo提權後可查看

Sep 11 02:41:50 : cjkaifa001 : TTY=pts/1 ; PWD=/home/cjkaifa001 ; USER=root ;

    COMMAND=/bin/ls

Sep 11 02:44:57 : cjkaifa001 : TTY=pts/1 ; PWD=/home/cjkaifa001 ; USER=root ;

    COMMAND=/bin/cat /var/log/sudo.log

經過測試能正常記錄用戶使用sudo的操作日誌記錄,其它命令沒有記錄

 

[root@Centos ~]# rm -rf /var/log/sudo.log 

[root@Centos ~]# /etc/init.d/rsyslog stop

Shutting down system logger:                               [  OK  ]

[root@Centos ~]# su - cjkaifa001

[cjkaifa001@Centos ~]$ cd /

[cjkaifa001@Centos /]$ pwd

/

[cjkaifa001@Centos /]$ ls /root

ls: cannot open directory /root: Permission denied

[cjkaifa001@Centos /]$ sudo ls /root

[sudo] password for cjkaifa001: 

anaconda-ks.cfg  dead.letter  Downloads        install.log.syslog  Public           Videos

backup           Desktop      etc.tar.gz.2016  Music               tar.gz.20160820

data             Documents    install.log      Pictures            Templates

[cjkaifa001@Centos /]$ cat /var/log/sudo.log

cat: /var/log/sudo.log: Permission denied

[cjkaifa001@Centos /]$ sudo cat /var/log/sudo.log

[sudo] password for cjkaifa001: 

Sep 11 03:24:39 : cjkaifa001 : TTY=pts/1 ; PWD=/ ; USER=root ; COMMAND=/bin/ls

    /root

Sep 11 03:30:57 : cjkaifa001 : TTY=pts/1 ; PWD=/ ; USER=root ; COMMAND=/bin/cat

    /var/log/sudo.log

經過測試,直接停掉rsyslog服務,只配置/etc/sudoers也可以記錄用戶sudo提權操作日誌記錄

 

備註:實際生產環境中,可將日誌審計記錄結果定期推送至指定的日誌備份伺服器上,後續會介紹具體操作過程(如何推送日誌記錄)

如需轉載,煩請註明原出處,更多內容可以掃描下方二維碼關註公眾號

長按二維碼關註微信公眾號——友侃有笑

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 接上篇:捲積神經網路對圖片分類-中 9 ReLU(Rectified Linear Units) Layers 在每個捲積層之後,會馬上進入一個激勵層,調用一種激勵函數來加入非線性因素,決絕線性不可分的問題。這裡我們選擇的激勵函數方式叫做ReLU, 他的方程是這樣f(x) = max(0, x),就 ...
  • 要得到一組數據的中位數(例如某個地區或某家公司的收入中位數),我們首先要將這一任務細分為3個小任務: 舉例說明: 建表語句: 小任務1的查詢語句: 小任務2的查詢語句: 小任務3的查詢語句: 至此,我們就找到瞭如何從一組數據中獲得中位數的方法。 下麵,來介紹另外一種優化排名語句的方法。 我們都知道如 ...
  • 今天在macOS 系統下搭建 Java開發環境,需要配置MySQL,按照Windows的習慣,使用Navicat for MySQL 操作比較習慣。然後找不到比較好的破解版,這裡介紹一個老版的,還是英文版的工具安裝破解說明。 1. 官網下載地址: http://download3.navicat.c ...
  • 前言 有些時候,我們可能會需要定時執行一下批處理來達到一定的目的,比如Oracle資料庫的定時備份,當然Oracle也可以通過Rman實現定時備份。我們大多數的時候是通過操作系統的計劃任務實現定時執行批處理。 但是當我們想要獲取相關執行細節,MSSQL的作業是一個很好的選擇。 具體方案 首先我們需要... ...
  • I/O: 系統設定 預設輸入設備:標準輸入,STDIN,0 預設輸出設備:標準輸出,STDOUT,1 標準錯誤輸出:STDERR,2 屬於不同的數據流 標準輸入:鍵盤 標準輸出和錯誤輸出:顯示器 I/O重定向: 輸出重定向: > :覆蓋輸出 >> :追加輸出 2>:錯誤輸出 2>>:追加錯誤輸出 正 ...
  • Nginx("engine x")是一款輕量級的HTTP和反向代理伺服器。相比於Apache、lighttpd等,它具有占有記憶體少、併發能力強、穩定性高等優勢。它最常見的用途就是提供反向代理服務。 在Linux下我們需要下載Nginx的源代碼包並且手動編譯,而不是用包管理工具,例如Yum、Aptit ...
  • 一、在伺服器上打開 22、80、9011埠: iptables -A INPUT -p tcp --dport 9011 -j ACCEPT iptables -A OUTPUT -p tcp --sport 9011 -j ACCEPT iptables -A INPUT -p tcp --dp ...
  • 本來是開始分析uboot代碼的,但是無論是教材還是網上資料都對於我最新下的 uboot原碼結構不同,對於還是小白的我不容易找到相應的文件,下麵是uboot版本中文件組織結構的改變,,,,, u-boot版本情況 網站:http://ftp.denx.de/pub/u-boot/ 1、版本號變化: 2 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...