- 工信部備案號 滇ICP備05000110號-1
- 滇公安備案 滇53010302000111
- 增值電信業務經營許可證 B1.B2-20181647、滇B1.B2-20190004
- 云南互聯網協會理事單位
- 安全聯盟認證網站身份V標記
- 域名注冊服務機構許可:滇D3-20230001
- 代理域名注冊服務機構:新網數碼
今天為大家帶來了超詳細的 Linux 系統安全配置方案,涵蓋賬號管理、密碼策略、訪問控制等核心模塊!本文基于企業級安全基線要求,深度解析 Centos7.4 系統加固實操,包含完整的配置命令、檢查方法及安全基線說明。幫助大家打造全方位安全防護體系!
一、賬號管理
(一)刪除多余賬號
1、安全基線說明
即刪除無用賬號。
2、操作指南
(1)參考配置操作
檢查 /etc/passwd文件屬性設置是否為 644:ls -l /etc/passwd,
查看是否存在可能無用的賬號:more /etc/passwd,無用賬號類似:uucp nuucp lpd guest printq;
刪除用戶:userdel username
3、檢查辦法
(1)判定條件
與管理員確認是否存在無用賬號,若存在則刪除掉。
(二)禁止賬號共享
1、安全基線說明
即禁止共享賬號,按照不同的用戶分配不同的賬號。
2、操作指南
(1)參考配置操作
命令cat /etc/passwd 查看當前所有用戶的信息,與管理員確認是否有共享賬號情況存在。
(2) 補充操作說明
避免共享賬號存在,應按照不同的用戶分配不同的賬號。
3、檢查辦法
(1)判定條件
不應存在賬號共享的情況。
(三)刪除無用用戶組
1、安全基線說明
即刪除無用的用戶組。
2、操作指南
(1)參考配置操作
查看用戶組文件權限是否為644:ls -l /etc/group
more /etc/group ,查看用戶組是否存在如下可能無用組類似:uucp printq。
刪除用戶組的命令:groupdel groupname
3、檢查辦法
(1)判定條件
刪除無用的用戶組。
(四)指定用戶組成員使用su命令
1、安全基線說明
即指定用戶組成員使用su命令。
2、操作指南
(1)參考配置操作
編輯su文件(vi /etc/pam.d/su),在開頭添加下面內容:
auth required pam_wheel.so use_uid
這表明只wheel組的成員可以使用su命令成為root用戶。普通用戶之間無法隨意su,只能用已設置賬戶su到其他賬戶,其他賬戶不能su到已設置賬戶。
添加方法為:# usermod –G wheel username
3、檢查辦法
(1)判定條件
#cat /etc/pam.d/su,查看是否配置以上的內容。
(五)禁止除root之外UID為0的用戶
1、安全基線說明
即禁止除root之外UID為0的用戶。
2、操作指南
(1)參考配置操作
執行:awk -F: '($3 == 0) { print $1 }' /etc/passwd
返回值應只有root。
若存在其他值則使用userdel username命令刪除該用戶。
(2) 補充操作說明
UID為0的任何用戶都擁有系統的最高特權,保證只有root用戶的UID為0。
3、檢查辦法
(1)判定條件
除了root用戶外,不存在UID為0 的用戶。
二、密碼策略
(一)密碼長度及復雜度策略
1、安全基線說明
即密碼必須符合密碼長度及復雜度的要求,防止暴利破解。
2、操作指南
(1)參考配置操作
a、修改/etc/login.defs文件
PASS_MIN_LEN 10 #密碼最小長度
b、修改/etc/pam.d/system-auth文件,找到 password requisite pam_cracklib.so這么一行替換成如下(數字可以根據實際填):
password requisite pam_cracklib.so retry=5 difok=3 minlen=10 ucredit=-1 lcredit=-3 dcredit=-3 dictpath=/usr/share/cracklib/pw_dict
參數含義:
嘗試次數:5 新舊密碼最少不同字符:3 最小密碼長度:10 最少大寫字母:1 最少小寫字母:3 最少數字:3 密碼字典:/usr/share/cracklib/pw_dict。
3、檢查辦法
(1)判定條件
執行:more /etc/login.defs
檢查
PASS_MAX_DAYS/PASS_MIN_LEN/PASS_MIN_DAYS/PASS_WARN_AGE參數,
其中PASS_MIN_LEN 為${key} #設定最小用戶密碼長度為${key} 位,其中修改其參數使其符合要求。
執行:awk -F: '($2 == "") { print $1 }' /etc/shadow,
檢查是否存在空口令賬號,將口令配置為強口令。
創建一個普通賬號,為用戶配置與用戶名相同的口令、只包含字符或數字的簡單口令以及長度短于${key} 的口令,查看系統是否對口令強度要求進行提示;輸入帶有特殊符號的復雜口令、普通復雜口令,查看系統是否可以成功設置。
(二)配置密碼的生存期
1、安全基線說明
即配置密碼的生產期,保證密碼的更新,防止密碼被泄露。
2、操作指南
(1)參考配置操作
編輯/etc/login.defs 文件中指定配置項決定,其中:
PASS_MAX_DAYS 配置項決定密碼最長使用期限;
PASS_MIN_DAYS 配置項決定密碼最短使用期限;
PASS_WARN_AGE 配置項決定密碼到期提醒時間。
3、檢查辦法
(1)判定條件
cat /etc/login.defs 查看對應屬性值;
三、訪問控制
(一)限制非授權終端登錄
1、安全基線說明
即設定終端登錄安全策略及措施,非授權終端無法登錄管理。
2、操作指南
(1)參考配置操作
修改/etc/hosts.deny、/etc/hosts.allow中對終端登錄限制的相關配置參數。
3、檢查辦法
(1)判定條件
查看/etc/hosts.deny、/etc/hosts.allow配置文件,是否設定了終端登錄限制的相關配置參數。
(二)遠程管理使用SSH加密協議
1、安全基線說明
即系統應配置使用ssh 等加密協議進行遠程登錄維護,并安全配置sshd 的設置。不使用telnet 進行遠程登錄維護。
2、操作指南
(1)參考配置操作
查看SSH 服務狀態:# ps –elf|grep ssh
手動編輯/etc/ssh/sshd_config,配置相關選項(可根據實際情況決定配置那些選項)。
SSHD 相關安全設置選項解釋如下:
Protocol 2 #使用ssh2 版本
X11Forwarding yes #允許窗口圖形傳
輸使用ssh 加密
IgnoreRhosts yes#完全禁止SSHD 使用.rhosts 文件
RhostsAuthentication no #不設置使用基于rhosts 的安全驗證
RhostsRSAAuthentication no #不設置使用RSA 算法的基于rhosts 的安全驗證
HostbasedAuthentication no #不允許基于主機白名單方式認證
PermitRootLogin no #不允許root 登錄
PermitEmptyPasswords no #不允許空密碼
Banner /etc/motd #設置ssh 登錄時顯示的banner
3、檢查辦法
(1)判定條件
查看SSH 服務狀態:# ps -elf|grep ssh
查看telnet 服務狀態:# ps -elf|grep telnet
應禁止telnet,使用ssh遠程登錄。
(三)限制root用戶SSH遠程登錄
1、安全基線說明
即限制root用戶遠程登錄,只允許本地登錄。
2、操作指南
(1)參考配置操作
限制root從遠程Telnet登錄 ,
在/etc/securetty文件中配置CONSOLE=/dev/tty01
限制root 從遠程ssh 登錄,
修改/etc/ssh/sshd_config 文件,
將PermitRootLogin yes 改為PermitRootLogin no,重啟sshd 服務。
3、檢查辦法
(1)判定條件
#service telnet status,判斷是否安裝Telnet;
#cat /etc/ssh/sshd_config,檢測PermitRootLogin的配置。
四、資源控制
(一)登錄超時時間配置
1、安全基線說明
即配置登錄超時使登錄后超過一段時間無操作后自動退出登錄。
2、操作指南
(1)參考配置操作
通過修改帳戶中“TMOUT”參數,可以實現此功能。TMOUT 按秒計算。編輯profile 文件(vi /etc/profile),在文件的后面加入下面這行:export TMOUT=(可根據情況設定)
這里的時間以秒未單位。
重新登錄使配置生效。
3、檢查辦法
(1)判定條件
#cat /etc/profile,查看是否配置超時時間。
(二)遠程連接的安全性配置(可選)
1、安全基線說明
.rhosts,.netrc,hosts.equiv等文件都具有潛在的危險,如無應用,應刪除該文件。
2、操作指南
(1)參考配置操作
執行:find / -name .netrc,檢查系統中是否有.netrc 文件,
執行:find / -name .rhosts ,檢查系統中是否有.rhosts 文件
.rhosts,.netrc,hosts.equiv等文件都具有潛在的危險,如
無應用,刪除以上文件。
3、檢查辦法
(1)判定條件
如無應用,刪除.rhosts,.netrc,hosts.equiv文件。
(三)root用戶環境變量的安全性
1、安全基線說明
確保root用戶的系統路徑中不包含父目錄,在非必要的情況下,不應包含組目錄權限為777的目錄。
2、操作指南
(1)參考配置操作
執行:
echo $PATH | egrep '(^|:)(\\.|:|$)'
檢查是否包含父目錄,
執行:
find `echo $PATH | tr ':' ' '` -type d \\( -perm -002 -o -perm -020 \\) -ls
檢查是否包含組目錄權限為777的目錄。
確保root用戶的系統路徑中不包含父目錄,在非必要的情況下,不應包含組目錄權限為777的目錄。
3、檢查辦法
(1)判定條件
在非必要的情況下,不應包含組權限為777的目錄。
(四)禁止ctrl+alt+delete功能鍵
1、安全基線說明
Linux默認情況下開啟Ctrl+Alt+Del重啟或關機的功能,為了避免誤操作,禁止Ctrl+Alt+Del功能鍵。
2、操作指南
(1)參考配置操作
#查看/etc/inittab確認Ctrl+Alt+Del相關配置文件
cat /etc/inittab
# Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target #相關配置文件存放位置
#查看Ctrl+Alt+Del配置文件的屬性信息
ls -ld /usr/lib/systemd/system/ctrl-alt-del.target
#刪除軟鏈接文件
rm -f /usr/lib/systemd/system/ctrl-alt-del.target
或者
mv /usr/lib/systemd/system/ctrl-alt-del.target /tmp
#重新加載初始化守護進程配置文件(Reload init daemon configuration)
init q
3、檢查辦法
(1)判定條件
按下Ctrl+Alt+Del不能重啟或關機。
希望今天的分享能幫到大家,下期藍隊云將深入講解日志審計、服務優化、內核加固等進階內容!藍隊云官網上擁有完善的技術支持庫可供參考,大家可自行查閱,更多技術問題,也可以直接咨詢。同時,藍隊云整理了運維必備的工具包免費分享給大家使用,需要的朋友可以直接咨詢。更多技術知識,藍隊云期待與你一起探索,助力你在 Linux 運維之路上穩步前行。
售前咨詢
售后咨詢
備案咨詢
二維碼
TOP