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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux系统安全与应用(一)——账号安全与控制与PAM认证模块

發布時間:2024/2/28 linux 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux系统安全与应用(一)——账号安全与控制与PAM认证模块 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

Linux系統安全與應用(一)——賬號安全與控制與PAM認證模塊

  • 一、賬號安全控制
    • 1、系統賬號清理
    • 2、密碼安全控制
      • ①、設置密碼有效期
      • ②、要求用戶下次登陸時更改密碼
    • 3、命令歷史限制
    • 4、終端自動注銷
    • 5、切換用戶:su
      • ①、用途及用法
      • ②、密碼驗證
      • ③、限制使用su命令切換用戶
  • 二、Linux中的PAM安全認證
    • 1、su命令的安全隱患
    • 2、PAM可插拔式認證模塊
    • 3、PAM認證原理
    • 4、每一列的名稱解釋
    • 5、控制標記的補充說明
    • 6、PAM安全認證流程


一、賬號安全控制

1、系統賬號清理

將非登錄用戶的shell設為不可登陸鎖定長期不使用的賬號鎖定賬號文件
usermod -s /sbin/nologin 用戶名禁止用戶登錄
usermod -s /bin/false 用戶名禁止用戶登錄
usermod -L 用戶名鎖定用戶賬戶
passwd -l 用戶名鎖定用戶賬戶
刪除無用的賬號userdel [-r] 用戶名
chattr +i /etc/passwd /etc/shadow鎖定賬號文件
lsattr /etc/passwd /etc/shadow查看賬號文件
chattr -i /etc/passwd /etc/shadow解鎖賬號文件

2、密碼安全控制

①、設置密碼有效期




②、要求用戶下次登陸時更改密碼


3、命令歷史限制

  • 減少記錄的命令條數
  • 登錄時自動清空命令歷史


4、終端自動注銷

5、切換用戶:su

①、用途及用法

②、密碼驗證

  • root→任意用戶,不驗證密碼
  • 普通用戶→其他用戶,驗證目標用戶的密碼

③、限制使用su命令切換用戶

  • 將允許使用su命令的用戶加入wheel組
  • 啟用pam_wheel認證模塊



二、Linux中的PAM安全認證

1、su命令的安全隱患

  • 默認情況下,任何用戶都允許使用su命令,有機會反復嘗試其他用戶(如root)的登錄密碼,帶來安全風險
  • 為了加強su命令的使用控制,可借助于PAM認證模塊,只允許極個別用戶使用su命令進行切換

2、PAM可插拔式認證模塊

  • 是一種高效而且靈活便利的用戶級別的認證方式
  • 也是當前Linux服務器普遍使用的認證方式

3、PAM認證原理

  • 一般遵循的規律
    • Service(服務)→ PAM(配置文件)→ pam_*.so
  • 首先要確定哪一項服務,然后加載相應的 PAM 的配置文件(位于 /etc/pam.d 下),最后調用認證文件(位于 /lib64/security 下)進行安全認證
  • 用戶訪問服務器時,服務器的某一個服務程序把用戶的請求發送到 PAM 模塊進行認證
  • 不同的應用程序所對應的 PAM 模塊是不同的
  • 如果想要查看某個程序是否支持 PAM 認證,可以使用 ls 命令,進行查看 /etc/pam.d/

4、每一列的名稱解釋

第一列代表PAM認證模塊類型第二列代表PAM控制標記
auth對用戶身份進行識別,如提示輸入密碼,判斷是否為root
account對賬號各項屬性進行檢查,如是否允許登錄系統,賬號是否已經過期,是否到達最大用戶數等
password使用用戶信息來更新數據,如修改用戶密碼
session定義登錄前以及退出后所要進行的會話操作管理,如登錄連接信息,用戶數據的打開和關閉,掛載文件系統
required表示需要返回一個成功值,如果返回失敗,不會立即將失敗結果返回,而是繼續進行同類型的下一步驗證,所有此類型的模塊都執行完成后,再返回失敗
requisite與required類似,但如果此模塊返回失敗,則立刻返回失敗并表示此類型失敗
sufficient如果此模塊返回成功,則直接向程序返回成功,表示此類成功,如果失敗,也不影響這類型的返回值
optional不進行成功與否的返回,一般不用于驗證,只是顯示信息(通常用于session類型)
include表示在驗證過程中調用其他的 PAM 配置文件。比如很多應用通過完整調用/etc/pam.d/system-auth (主要負責用戶登錄系統的認證工作)來實現認證而不需要重新逐一去寫配置項
第三列代表PAM模塊默認是在/lib64/security/目錄下,如果不在此默認路徑下,要填寫絕對路徑
同一個模塊,可以出現在不同的模塊類型中,它在不同的類型中所執行的操作都不相同,這是由于每個模塊針對不同的模塊類型編制了不同的執行函數
第四列代表PAM模塊的參數根據所使用的模塊進行添加
傳遞給模塊的參數,參數可以有多個,之間用空格分隔開

5、控制標記的補充說明

  • required
    表示該行以及所涉及模塊的成功是用戶通過鑒別的【必要條件】。換句話說,只有當對應于應用程序的所有帶required標記的模塊全部成功后,該程序才能通過鑒別。同時,如果任何帶required標記的模塊出現了錯誤,PAM并不立刻將錯誤消息返回給應用程序,而是在所有此類型模塊都調用完畢后才將錯誤消息返回調用他的程序。
    反正說白了,就是必須將所有的此類型模塊都執行一次,其中任何一個模塊驗證出錯,驗證都會繼續進行,并在執行完成之后才返回錯誤信息。這樣做的目的就是不讓用戶知道自己被哪個模塊拒絕,通過一種隱蔽的方式來保護系統服務。就像設置防火墻規則的時候將拒絕類的規則都設置為drop樣,以致于用戶在訪問網絡不成功的時候無法準確判斷到底是被拒絕還是目標網絡不可達。
  • requisite
    與required相仿,只有帶此標記的模塊返回成功后,用戶才能通過鑒別。不同之處在于其一旦失敗就不再執行堆中后面的其他模塊,并且鑒別過程到此結束,同時也公立即返回錯誤信息。與上面的required相比,似乎要顯得更光明正大一些。
  • sufficient
    表示該行以及所涉及模塊驗證成功是用戶通過鑒別的【充分條件】。也就是說只要標記為sufficient的模塊一旦驗證成功,那么PAM便立即向應用程序返回成功結果而不必嘗試任何其他模塊。即便后面的層疊模塊使用了requisite或者required控制標志也是一樣。當標記為sufficient的模塊失敗時,sufficient模塊會當做optional對待。因此擁有sufficient標志位的配置項在執行驗證出錯的時候并不公導致整個驗證失敗,但執行驗證成功之時則大門敞開。所以該控制位的使用務必慎重。
  • optional
    他表示即便該行所涉及的模塊驗證失敗用戶仍能通過認證。在PAM體系中,帶有該標記的模塊失敗后將繼續處理下一模塊。也就是說即使本行指定的模塊驗證失敗,也允許用戶享受應用程序提供的服務。使用該標志,PAM框架會忽略這個模塊產生的驗證錯誤,繼續順序執行下一個層疊模塊。

6、PAM安全認證流程

  • 1、required驗證失敗時仍然繼續,但返回Fail
  • 2、requisite驗證失敗則立即結束整個驗證過程,返回Fail
  • 3、sufficient驗證成功則立即返回,不再繼續,否則忽略結果并繼續
  • 4、optional不用于驗證,只顯示信息(通常用于session類型)

總結

以上是生活随笔為你收集整理的Linux系统安全与应用(一)——账号安全与控制与PAM认证模块的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。