發布時間: 2017-06-16 14:24:38
由于Linux操作系統是一個開放源代碼的免費操作系統,因此受到越來越多用戶的歡迎,隨之其安全問題也備受關注。在本文,小編整理了Linux賬號的安全管理具體實施方法。
對象OS:SunOS, Linux, AIX, HP-UX
一、 設置密碼最小長度
漏洞概述:為了防止密碼遭到暴力破解攻擊(Brute Force Attack)或口令字猜測攻擊(Password Guessing),需要檢查密碼最小長度是否被設置,密碼最小長度未設置或設置很短的情況下容易遭受攻擊;
安全對策:需修改密碼策略設置文件將密碼最小長度設為8位以上;
安全設置方法:
- SunOS
1)使用vi編輯器打開"/etc/default/passwd"文件
2)設置為PASSLENGTH=8
- Linux
1)使用vi編輯器打開"/etc/login.defs"文件
2)設置為PASS_MIN_LEN 8
- AIX
1)使用vi編輯器打開"/etc/security/user"文件
2)設置為minlen=8
- HP-UX
1)使用vi編輯器打開"etc/default/security"文件
2)設置為MIN_PASSWORD_LENGTH=8
二、 設置密碼最長使用期限
漏洞概述:如未設置密碼最長使用期限,一段時間后密碼很可能會泄露,因而造成攻擊者的非法訪問;
安全對策:修改密碼策略設置文件,將密碼最長使用期限設置為90天(12周);
安全設置方法:
- SunOS #cat /etc/default/passwd MAXWEEKS=12 - Linux #cat /etc/login.defs PASS_MAX_DAYS 90 - AIX #cat /etc/security/user maxage=12 - HP-UX #cat /etc/default/security PASSWORD_MAXDAYS=90
三、 刪除不必要的賬號
漏洞概述:安裝OS或Package時,默認生成的賬號大部分使用默認的密碼,很容易被惡用于口令字猜測攻擊,因此需要確認"lp, uucp, nuucp"等默認賬號與可疑的特定賬號的存在與否并將其刪除;
安全對策:確認目前注冊的賬號情況并將不必要的賬號刪除;
安全設置方法:
- SunOS, Linux, AIX, HP-UX
i. 確認未使用賬號與可疑賬號的存在與否
(* 參考"passwd"文件結構)
#cat /etc/passwd
ii. 檢查不使用的默認賬號(例如,lp, uucp, nuucp賬號)
#cat /etc/passwd | grep "lp|uucp|nuucp"
- 通過Log確認
i. 通過檢測登錄失敗記錄來確認未使用和可疑賬號
#cat /var/adm/loginlog (SunOS, AIX, HP-UX) / #cat /var/log/loginlog (Linux) #cat /var/adm/authlog (AIX, HP-UX) / #cat /var/log/authlog (SunOS) #cat /var/adm/sulog (SunOS, AIX, HP-UX) / #cat /var/log/sulog (Linux)
l 通過以上方法確認到不必要的賬號時請按以下方法進行設置
- SunOS, Linux HP-UX
i. 確認注冊到服務器的不必要用戶賬號
ii. 通過userdel命令刪除該用戶賬號
#userdel
- AIX
i. 確認注冊到服務器的不必要用戶賬號
ii. 通過rmuser命令刪除該用戶賬號
#rmuser
l 一般需要攔截的默認賬號如下:
- adm, lp, sync, shutdown, halt, news, uucp, operator, games, gopher, nfsnobody, squid等。
四、 管理員組中只保留最少的賬號
漏洞概述:管理系統的root賬號所屬的組擁有系統運營文件的訪問權限,該組如果疏忽管理,一般用戶有可能會以管理員的權限非法訪問系統,進行惡意修改或變更等操作,因此該組需要只保留盡可能少的賬號;
安全對策:將目前注冊到管理員組的不必要賬號刪除;
安全設置方法:
- SunOS, Linux, HP-UX #cat /etc/group(* 請參考"group"文件結構) - AIX #cat /etc/group system:!:0:root
◆如果管理員組存在不必要的賬號,請參考如下方法進行設置
- SunOS, Linux, HP-UX
i. 使用vi編輯器打開"/etc/group"文件
ii. 刪除注冊在root組的不必要的賬號(例如,刪除test賬號)
刪除前:root:x:0:root,test;刪除后:root:x:0:root
- AIX
i. 使用vi編輯器打開"/etc/group"文件
ii. 刪除注冊在system組的不必要的賬號(例如,刪除test賬號)
刪除前:system:!:0:root,test;刪除后:system:!:0:root
五、 禁止不存在賬號的GID
漏洞概要:因疏于對賬號組的管理,如存在沒有賬號的組時,該組的文件有可能會泄露向非相關人員;
*GID(Group Identification):多個用戶為了共享特定的個體而建立的相關聯的特定的組,主要用來處理賬號,每個用戶可以擁有多個GID。
安全對策:如存在沒有組員賬號的組時,需及時與管理員溝通并將其刪除;
安全設置方法:
- SunOS, Linux, HP-UX, AIX #cat /etc/group(*請參考"group"文件結構)
- Linux #cat /etc/gshadow
*gshadow文件:"shadow"文件中,正如用戶賬號的密碼都存儲在內一樣,通過系統內存在的組的密碼信息存儲文件可以設定組的管理員和成員,"gshadow"文件內的字段結構如下:
[組名:密碼:管理員,管理員……:成員,成員……]
◆如存在沒有成員賬號的組,請按照以下方式刪除
- SunOS, Linux, AIX, HP-UX #groupdel
上一篇: 對于Windows管理員至關重要的十個PowerShell安全腳本
下一篇: 不常見但是很有用的gcc命令行選項