Linux系統(tǒng)檢測(cè)和防護(hù)腳本

1、方便將服務(wù)器安全情況通過檢測(cè)腳本直接輸出txt文件,同時(shí)便于檢查出安全隱患。
2娃弓、縮短安全檢查和防護(hù)時(shí)間,提高安全檢查和防護(hù)效率
github地址 https://github.com/xiaoyunjie/Shell_Script.git


一岛宦、Linux檢測(cè)腳本


1.1台丛、文件

壓縮包包含2個(gè)文件:

  • CentOS_Check_Script.sh : 腳本文件
  • README.txt : 說明文件

Linux檢測(cè)腳本:Check_script.sh


1.2、操作說明

執(zhí)行CentOS_Check_Script.sh腳本文件進(jìn)行檢查,每次體檢生成文件都是唯一的恋博,命令格式如下:

sudo sh CentOS_Check_Script.sh | tee check_`date +%Y%m%d_%H%M%S`.txt

1.3齐佳、腳本簡(jiǎn)介

按三級(jí)等保要求,編寫的一鍵檢查腳本债沮,此腳本只適合linux分支中的redhat炼吴、centos,運(yùn)行腳本將結(jié)果輸出到自定義的文件中疫衩,腳本結(jié)果需要管理員人為檢查硅蹦,腳本結(jié)果中有相應(yīng)提示檢測(cè)內(nèi)容是否需要整改。


1.4闷煤、腳本檢測(cè)內(nèi)容

警告:本腳本只是一個(gè)檢查的操作,未對(duì)服務(wù)器做任何修改,管理員可以根據(jù)此報(bào)告進(jìn)行相應(yīng)的安全整改

管理員需要根據(jù)檢測(cè)報(bào)告進(jìn)行安全加固童芹,需要加固的條目都會(huì)標(biāo)記 [需調(diào)整]

1.4.1、系統(tǒng)基本信息

腳本撈取主機(jī)的基本信息鲤拿,包含以下內(nèi)容:

基本信息名 命令 備注
主機(jī)名
系統(tǒng)名稱
系統(tǒng)版本
內(nèi)核版本
系統(tǒng)類型
本機(jī)IP地址
CPU型號(hào)
CPU核數(shù)
機(jī)器型號(hào)
系統(tǒng)時(shí)間
1.4.2假褪、資源使用情況
檢測(cè)條目 命令 備注
總內(nèi)存大小
已使用內(nèi)存大小
可使用內(nèi)存大小
系統(tǒng)運(yùn)行時(shí)間
系統(tǒng)負(fù)載
內(nèi)存狀態(tài)
僵尸進(jìn)程
耗CPU最多進(jìn)程
耗內(nèi)存最多進(jìn)行
環(huán)境變量
路由表
監(jiān)聽端口
網(wǎng)絡(luò)連接
開機(jī)啟動(dòng)服務(wù)
1.4.3、系統(tǒng)用戶情況
檢測(cè)條目 命令 備注
活動(dòng)用戶
系統(tǒng)所有用戶
系統(tǒng)所有組
當(dāng)前用戶的計(jì)劃任務(wù)
1.4.4近顷、身份鑒別安全
檢測(cè)條目 命令 備注
密碼復(fù)雜度
可疑賬戶
密碼過期天數(shù)
登入失敗處理
1.4.5生音、訪問控制安全
檢測(cè)條目 命令 備注
非系統(tǒng)默認(rèn)用戶
系統(tǒng)特權(quán)用戶
系統(tǒng)空口令賬戶
1.4.6宁否、安全審計(jì)
檢測(cè)條目 命令 備注
本機(jī)用戶登入歷史記錄
syslog日志服務(wù)狀態(tài)
syslog日志服務(wù)外發(fā)狀態(tài)
syslog審計(jì)要素和日志
系統(tǒng)文件文件修改時(shí)間
重要日志文件狀態(tài)
1.4.7、剩余信息保護(hù)
檢測(cè)條目 命令 備注
分區(qū)情況
可用塊設(shè)備信息
文件系統(tǒng)信息
1.4.8缀遍、入侵防范安全
檢測(cè)條目 命令 備注
系統(tǒng)入侵行為
用戶錯(cuò)誤登入列表
ssh暴力登入信息
1.4.9慕匠、惡意代碼防范
檢測(cè)條目 命令 備注
clamav殺毒軟件狀態(tài)
1.4.10、資源控制安全
檢測(cè)條目 命令 備注
xinetd服務(wù)狀態(tài)
ssh服務(wù)狀態(tài)
telnet-server服務(wù)狀態(tài)
防火墻狀態(tài)
hosts.deny策略
hosts.allow
登入超時(shí)限制

二域醇、Linux加固腳本


2.1台谊、腳本文件

  • CentOS_Protective_Script.sh : 腳本文件
  • README.txt : 說明文件

Linux加固腳本文件:Protective_Script.sh


2.2、腳本操作說明

  • 執(zhí)行CentOS_Protective_Script.sh腳本文件進(jìn)行加固,命令格式如下
sudo sh CentOS_Protective_Script.sh
  • 執(zhí)行完成后,請(qǐng)按腳本提示重啟相應(yīng)服務(wù)

如果ostype是unknow譬挚,請(qǐng)不要繼續(xù)執(zhí)行


2.3锅铅、腳本簡(jiǎn)介

一鍵加固腳本為linux系統(tǒng)提供基礎(chǔ)安全加固,包括以下幾塊內(nèi)容加固:

  • 口令復(fù)雜度:密碼修改重試3次機(jī)會(huì)殴瘦,新密碼與老密碼必須有3字符不同狠角,最小密碼長度12個(gè)字符,包含大寫字符至少一個(gè)蚪腋,小寫字母至少一個(gè)數(shù)字至少一個(gè)姨蟋,特殊字符至少一個(gè)屉凯。
  • 新增管理員賬號(hào):不直接使用root賬號(hào),新增管理員eproot賬號(hào)眼溶,用于命令執(zhí)行悠砚,遠(yuǎn)程登入。
  • 遠(yuǎn)程登入賬戶設(shè)置:限制root賬號(hào)遠(yuǎn)程登入
  • 賬號(hào)登入安全設(shè)置:配置系統(tǒng)歷史命令操作記錄和定時(shí)帳戶自動(dòng)登出時(shí)間
  • 遠(yuǎn)程登入端口設(shè)置:修改默認(rèn)SSH端口
  • 賬戶登入失敗處理:限制登入失敗三次堂飞,普通賬號(hào)鎖定5分鐘灌旧,root賬號(hào)鎖定5分鐘
  • 系統(tǒng)配置文件備份還原:腳本在首次執(zhí)行時(shí)會(huì)將系統(tǒng)配置保存于腳本所在目錄下的backup目錄下,以便后續(xù)需要恢復(fù)配置時(shí)使用绰筛。再次運(yùn)行腳本時(shí)枢泰,將不會(huì)再進(jìn)行備份,除非原備份目錄被刪除铝噩。
2.3.1衡蚂、簡(jiǎn)介
image.png

首次運(yùn)行腳本,會(huì)檢測(cè)當(dāng)前系統(tǒng)類型骏庸,以及備份重要系統(tǒng)配置文件毛甲,包括system-auth、authorized_keys具被、sshd玻募、sudoers、sshd_config一姿、profile七咧、su跃惫。通過選擇加固編號(hào)進(jìn)行相應(yīng)的內(nèi)容進(jìn)行加固,也可以選擇編號(hào)1,將所有內(nèi)容都進(jìn)行加固坑雅。

2.3.2辈挂、密碼復(fù)雜度設(shè)置[Set Password Complexity Requirements ]

image.png

選擇編號(hào)2,腳本會(huì)自動(dòng)進(jìn)行密碼復(fù)雜度配置裹粤,配置內(nèi)容為:密碼修改重試3次機(jī)會(huì)终蒂,新密碼與老密碼必須有3字符不同,最小密碼長度12個(gè)字符遥诉,包含大寫字符至少一個(gè)拇泣,小寫字母至少一個(gè)數(shù)字至少一個(gè)矮锈,特殊字符至少一個(gè)霉翔。
配置成功,會(huì)提示[Password complexity set success],失敗會(huì)提示[Password complexity set failed]苞笨,重復(fù)執(zhí)行腳本選擇此編號(hào)债朵,腳本每次都會(huì)配置,不會(huì)提示已配置過瀑凝。

2.3.3序芦、新增管理員賬號(hào)[Create eproot account]

禁止使用root登入系統(tǒng),需要?jiǎng)?chuàng)建eproot賬號(hào)粤咪,授予管理員權(quán)限谚中,并且保證運(yùn)行命令時(shí)無需輸入root密碼。

image.png

選擇編號(hào)3寥枝,會(huì)提示是否創(chuàng)建eproot賬號(hào)宪塔,確認(rèn)后,請(qǐng)輸入密碼囊拜,回車某筐,腳本會(huì)自行創(chuàng)建eproot賬號(hào),并且授予管理員權(quán)限艾疟。重復(fù)執(zhí)行腳本来吩,選擇編號(hào)3,如果已經(jīng)創(chuàng)建過eproot賬號(hào)蔽莱,會(huì)列出創(chuàng)建的信息弟疆,并提示已創(chuàng)建。

image.png

2.3.4盗冷、遠(yuǎn)程登入賬戶設(shè)置[Set Remote Login Configuration(SSH)]
image.png

選擇編號(hào)‘4’進(jìn)行SSH遠(yuǎn)程登錄相關(guān)安全配置怠苔,腳本會(huì)自動(dòng)配置SSH協(xié)議為2,然后提示是否禁止root賬號(hào)遠(yuǎn)程登入仪糖,并確定已經(jīng)有其余可遠(yuǎn)程登入的賬號(hào)柑司。輸入y迫肖,確認(rèn)后回車關(guān)閉root遠(yuǎn)程登入。

image.png

重復(fù)執(zhí)行腳本攒驰,選擇編號(hào)4蟆湖,會(huì)提示已經(jīng)禁止root遠(yuǎn)程。

2.3.5玻粪、賬戶登入安全設(shè)置[Set Shell History and TMOUT]
image.png
  • 選擇編號(hào)5賬戶登入安全設(shè)置隅津,輸入y回車,設(shè)置history命令保存行數(shù)以及打印history命令時(shí)間劲室。
  • 設(shè)置shell環(huán)境超時(shí)時(shí)間伦仍,選擇區(qū)間為300~600秒,如果不輸入任何值很洋,腳本默認(rèn)設(shè)置為600秒充蓝。
  • 重復(fù)執(zhí)行腳本,選擇編號(hào)5喉磁,會(huì)重新設(shè)置historyTMOUT
2.3.6谓苟、遠(yuǎn)程登入端口設(shè)置[Set SSH Port]
image.png
  • 選擇編號(hào)6進(jìn)行SSH服務(wù)端口配置,輸入y协怒,回車輸入端口號(hào)娜谊,腳本會(huì)根據(jù)用戶輸入的端口號(hào),配置更改相應(yīng)的端口
  • 腳本會(huì)對(duì)輸入的端口進(jìn)行判斷是否滿足要求斤讥,如果滿足要求會(huì)進(jìn)行設(shè)置,如果不滿足要求腳本會(huì)給出提示湾趾,并要求用戶重新輸入確認(rèn)更改端口芭商,并輸入端口號(hào)。
  • 端口號(hào)規(guī)則: 輸入端口號(hào)區(qū)間 1024<port<65535
  • 重復(fù)執(zhí)行腳本搀缠,選擇編號(hào)6铛楣,修改ssh端口,無法通過腳本改回端口22艺普。
2.3.7簸州、賬戶登入失敗處理[Set Logon failure handling]
image.png
  • 執(zhí)行腳本,選擇編號(hào)7歧譬,設(shè)置賬戶登入失敗處理岸浑,輸入y確認(rèn)回車,腳本會(huì)自動(dòng)進(jìn)行配置瑰步。
  • 登入失敗處理內(nèi)容:登入失敗三次后賬號(hào)會(huì)被限制登入矢洲,普通賬號(hào)鎖定5分鐘,root賬號(hào)鎖定5分鐘缩焦,超過限制時(shí)間读虏,才可以重新登入责静。
#使用一下命令查看指定賬戶的失敗次數(shù)
pam_tally2 --user=root
Login           Failures Latest failure     From
root                4    03/20/19 16:57:09  192.168.149.9
#以下命令可以立馬重置賬戶的失敗次數(shù),解除限制(前提是已經(jīng)進(jìn)入系統(tǒng))
pam_tally2 --user=root  --reset
2.3.8盖桥、配置備份與恢復(fù)[Recover Configuration]
image.png

執(zhí)行腳本灾螃,選擇編號(hào)8,腳本會(huì)將保存于所在backup目錄下的系統(tǒng)配置還原揩徊。

無法還原以下配置

  • 新增的eproot賬戶不刪除腰鬼,防止誤刪。(eproot權(quán)限為修改前的狀態(tài))
2.3.9靴拱、全部加固[ALL protective]

選擇標(biāo)號(hào)1垃喊,腳本會(huì)按[2-7]順序自動(dòng)執(zhí)行腳本加固,部分參數(shù)需要手動(dòng)輸入袜炕。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末本谜,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子偎窘,更是在濱河造成了極大的恐慌乌助,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,042評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件陌知,死亡現(xiàn)場(chǎng)離奇詭異他托,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)仆葡,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門赏参,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人沿盅,你說我怎么就攤上這事把篓。” “怎么了腰涧?”我有些...
    開封第一講書人閱讀 156,674評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵韧掩,是天一觀的道長。 經(jīng)常有香客問我窖铡,道長疗锐,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,340評(píng)論 1 283
  • 正文 為了忘掉前任费彼,我火速辦了婚禮滑臊,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘敌买。我一直安慰自己简珠,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評(píng)論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著聋庵,像睡著了一般膘融。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上祭玉,一...
    開封第一講書人閱讀 49,749評(píng)論 1 289
  • 那天氧映,我揣著相機(jī)與錄音,去河邊找鬼脱货。 笑死岛都,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的振峻。 我是一名探鬼主播臼疫,決...
    沈念sama閱讀 38,902評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼扣孟!你這毒婦竟也來了烫堤?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,662評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤凤价,失蹤者是張志新(化名)和其女友劉穎鸽斟,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體利诺,經(jīng)...
    沈念sama閱讀 44,110評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡富蓄,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了慢逾。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片立倍。...
    茶點(diǎn)故事閱讀 38,577評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖侣滩,靈堂內(nèi)的尸體忽然破棺而出帐萎,到底是詐尸還是另有隱情,我是刑警寧澤胜卤,帶...
    沈念sama閱讀 34,258評(píng)論 4 328
  • 正文 年R本政府宣布,位于F島的核電站赁项,受9級(jí)特大地震影響葛躏,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜悠菜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評(píng)論 3 312
  • 文/蒙蒙 一舰攒、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧悔醋,春花似錦摩窃、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鹦聪。三九已至,卻和暖如春蒂秘,著一層夾襖步出監(jiān)牢的瞬間泽本,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評(píng)論 1 264
  • 我被黑心中介騙來泰國打工姻僧, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留规丽,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,271評(píng)論 2 360
  • 正文 我出身青樓撇贺,卻偏偏與公主長得像赌莺,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子松嘶,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容

  • 一艘狭、Python簡(jiǎn)介和環(huán)境搭建以及pip的安裝 4課時(shí)實(shí)驗(yàn)課主要內(nèi)容 【Python簡(jiǎn)介】: Python 是一個(gè)...
    _小老虎_閱讀 5,723評(píng)論 0 10
  • 1.命令格式:ifconfig [網(wǎng)絡(luò)設(shè)備] [參數(shù)] 2.命令功能: ifconfig 命令用來查看和配置網(wǎng)絡(luò)設(shè)...
    Nuuuu閱讀 3,713評(píng)論 0 12
  • 基礎(chǔ)命令 為了在 sudo 中設(shè)置權(quán)限提升,您需要編輯 sudoers 文件喘蟆。 你不應(yīng)該直接編輯文件缓升,而是使用:s...
    米開朗基樂閱讀 1,887評(píng)論 0 5
  • feisky云計(jì)算、虛擬化與Linux技術(shù)筆記posts - 1014, comments - 298, trac...
    不排版閱讀 3,827評(píng)論 0 5
  • 富蘭克林是一個(gè)會(huì)犯錯(cuò)誤的人(謝謝這點(diǎn)蕴轨,不然顯得他不可復(fù)制)港谊,在自傳中,他坦承自己曾經(jīng)對(duì)朋友之妻懷有非分之想橙弱,受到姑...
    韓玲Julie閱讀 259評(píng)論 0 0