版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、CentOS7.0系統(tǒng)安全加固手冊目錄一、用戶帳號和環(huán)境2二、系統(tǒng)訪問認(rèn)證和授權(quán)3三、核心調(diào)整4四、需要關(guān)閉的一些服務(wù)5五、SSH安全配置5六、封堵openssl的Heartbleed漏洞6七、開啟防火墻策略6八、啟用系統(tǒng)審計服務(wù)8九、部署完整性檢查工具軟件10十、部署系統(tǒng)監(jiān)控環(huán)境11以下安全設(shè)置均是在CentOS7.0_x64環(huán)境下minimal安裝進(jìn)行的驗證。一、用戶帳號和環(huán)境檢查項注釋:1清除了operator、lp、shutdown、halt、games、gopher 帳號刪除的用戶組有: lp、uucp、games、dip其它系統(tǒng)偽帳號均處于鎖定SHELL登錄的狀態(tài)2驗證是否有賬號存
2、在空口令的情況:awk -F: ($2 = ) print $1 /etc/shadow3檢查除了root以外是否還有其它賬號的UID為0:awk -F: ($3 = 0) print $1 /etc/passwd任何UID為0的賬號在系統(tǒng)上都具有超級用戶權(quán)限.4檢查root用戶的$PATH中是否有.或者所有用戶/組用戶可寫的目錄超級用戶的$PATH設(shè)置中如果存在這些目錄可能會導(dǎo)致超級用戶誤執(zhí)行一個特洛伊木馬5用戶的home目錄許可權(quán)限設(shè)置為700用戶home目錄的許可權(quán)限限制不嚴(yán)可能會導(dǎo)致惡意用戶讀/修改/刪除其它用戶的數(shù)據(jù)或取得其它用戶的系統(tǒng)權(quán)限6是否有用戶的點(diǎn)文件是所有用戶可讀寫的:fo
3、r dir in awk -F: ($3 = 500) print $6 /etc/passwddofor file in $dir/.A-Za-z0-9*doif -f $file ; thenchmod o-w $filefidonedoneUnix/Linux下通常以”.”開頭的文件是用戶的配置文件,如果存在所有用戶可讀/寫的配置文件可能會使惡意用戶能讀/寫其它用戶的數(shù)據(jù)或取得其它用戶的系統(tǒng)權(quán)限7為用戶設(shè)置合適的缺省umask值:cd /etcfor file in profile csh.login csh.cshrc bashrcdoif grep -c umask $file -e
4、q 0 ;thenecho umask 022 $filefichown root:root $filechmod 444 $filedone為用戶設(shè)置缺省的umask值有助于防止用戶建立所有用戶可寫的文件而危及用戶的數(shù)據(jù).8設(shè)備系統(tǒng)口令策略:修改/etc/login.defs文件將PASS_MIN_LEN最小密碼長度設(shè)置為12位。10限制能夠su為root 的用戶:#vi /etc/pam.d/su 在文件頭部添加下面這樣的一行auth required pam_wheel.so use_uid這樣,只有wheel組的用戶可以su到root操作樣例: #usermod -G10 test 將
5、test用戶加入到wheel組11修改別名文件/etc/aliases:#vi /etc/aliases 注釋掉不要的 #games: root #ingres: root #system: root #toor: root #uucp: root #manager: root #dumper: root #operator: root #decode: root #root: marc 修改后執(zhí)行/usr/bin/newaliases13修改帳戶TMOUT值,設(shè)置自動注銷時間vi /etc/profile增加TMOUT=600 無操作600秒后自動退出14設(shè)置Bash保留歷史命令的條數(shù)#vi
6、 /etc/profile修改HISTSIZE=5即只保留最新執(zhí)行的5條命令16防止IP SPOOF:#vi /etc/host.conf 添加:nospoof on不允許服務(wù)器對IP地址進(jìn)行欺騙17使用日志服務(wù)器:#vi /etc/rsyslog.conf 照以下樣式修改*.info;mail.none;authpriv.none;cron.none 這里只是作為參考,需要根據(jù)實際決定怎么配置參數(shù)二、系統(tǒng)訪問認(rèn)證和授權(quán)檢查項注釋:1限制 at/cron給授權(quán)的用戶:cd /etc/rm -f cron.deny at.denyecho root cron.allowecho root at.
7、allowchown root:root cron.allow at.allowchmod 400 cron.allow at.allowCron.allow和at.allow文件列出了允許允許crontab和at命令的用戶名單, 在多數(shù)系統(tǒng)上通常只有系統(tǒng)管理員才需要運(yùn)行這些命令5Crontab文件限制訪問權(quán)限:chown root:root /etc/crontabchmod 400 /etc/crontabchown -R root:root /var/spool/cronchmod -R go-rwx /var/spool/cronchown -R root:root /etc/cron
8、.*chmod -R go-rwx /etc/cron.*系統(tǒng)的crontab文件應(yīng)該只能被cron守護(hù)進(jìn)程(它以超級用戶身份運(yùn)行)來訪問,一個普通用戶可以修改crontab文件會導(dǎo)致他可以以超級用戶身份執(zhí)行任意程序6建立恰當(dāng)?shù)木鎎anner:echo Authorized uses only. All activity may be monitored and reported. /etc/motdchown root:root /etc/motdchmod 644 /etc/motdecho Authorized uses only. All activity may be monito
9、red and reported. /etc/issueecho Authorized uses only. All activity may be monitored and reported. /etc/改變登錄banner可以隱藏操作系統(tǒng)類型和版本號和其它系統(tǒng)信息,這些信息可以會對攻擊者有用.7限制root登錄到系統(tǒng)控制臺:cat /etc/securettytty1tty2tty3tty4tty5tty6END_FILEchown root:root /etc/securettychmod 400 /etc/securetty通常應(yīng)該以普通用戶身份訪問系統(tǒng),然后通過其它授權(quán)機(jī)制(比如s
10、u命令和sudo)來獲得更高權(quán)限,這樣做至少可以對登錄事件進(jìn)行跟蹤8設(shè)置守護(hù)進(jìn)程掩碼vi /etc/rc.d/init.d/functions設(shè)置為 umask 022系統(tǒng)缺省的umask 值應(yīng)該設(shè)定為022以避免守護(hù)進(jìn)程創(chuàng)建所有用戶可寫的文件三、核心調(diào)整設(shè)置項注釋:1禁止core dump:cat /etc/security/limits.conf* soft core 0* hard core 0END_ENTRIES允許core dump會耗費(fèi)大量的磁盤空間.2chown root:root /etc/sysctl.confchmod 600 /etc/sysctl.conflog_ma
11、rtians將進(jìn)行ip假冒的ip包記錄到/var/log/messages其它核心參數(shù)使用CentOS默認(rèn)值。四、需要關(guān)閉的一些服務(wù)設(shè)置項注釋:1關(guān)閉Mail Serverchkconfig postfix off多數(shù)Unix/Linux系統(tǒng)運(yùn)行Sendmail作為郵件服務(wù)器, 而該軟件歷史上出現(xiàn)過較多安全漏洞,如無必要,禁止該服務(wù)五、SSH安全配置設(shè)置項注釋:1配置空閑登出的超時間隔:ClientAliveInterval 300 ClientAliveCountMax 0Vi /etc/ssh/sshd_config2禁用 .rhosts 文件IgnoreRhosts yesVi /etc
12、/ssh/sshd_config3禁用基于主機(jī)的認(rèn)證HostbasedAuthentication noVi /etc/ssh/sshd_config4禁止 root 帳號通過 SSH 登錄PermitRootLogin noVi /etc/ssh/sshd_config5用警告的 BannerBanner /etc/issueVi /etc/ssh/sshd_config6iptables防火墻處理 SSH 端口 # 6490664906 -j ACCEPT64906 -j ACCEPT這里僅作為參考,需根據(jù)實際需要調(diào)整參數(shù)7修改 SSH 端口和限制 IP 綁定:Port 64906安裝se
13、linux管理命令yum -y install policycoreutils-python修改 port contexts(關(guān)鍵),需要對context進(jìn)行修改semanage port -a -t ssh_port_t -p tcp 64906semanage port -l | grep ssh -查看當(dāng)前SElinux 允許的ssh端口Vi /etc/ssh/sshd_config僅作為參考,需根據(jù)實際需要調(diào)整參數(shù)。8禁用空密碼:PermitEmptyPasswords no禁止帳號使用空密碼進(jìn)行遠(yuǎn)程登錄SSH9記錄日志:LogLevel INFO確保在 sshd_config 中將日
14、志級別 LogLevel 設(shè)置為 INFO 或者 DEBUG,可通過logwatchorlogcheck來閱讀日志。10重啟SSHsystemctl restart sshd.service重啟ssh六、封堵openssl的Heartbleed漏洞檢測方法:在服務(wù)器上運(yùn)行以下命令確認(rèn)openssl版本# openssl versionOpenSSL 1.0.1e-fips 11 Feb 2013以上版本的openssl存在Heartbleed bug,需要有針對性的打補(bǔ)丁。升及補(bǔ)?。?yum -y install openssl驗證:# openssl version -aOpenSSL 1.
15、0.1e-fips 11 Feb 2013built on: Thu Jun 5 12:49:27 UTC 2014以上built on 的時間是2014.6.5號,說明已經(jīng)修復(fù)了該漏洞。注:如果能夠臨時聯(lián)網(wǎng)安裝以上補(bǔ)丁,在操作上會比較簡單一些。如果無法聯(lián)網(wǎng),則有兩種處理辦法:首選從安裝光盤拷貝獨(dú)立的rpm安裝文件并更新;另一個辦法是提前下載最新版本的openssl源碼,編譯并安裝。七、開啟防火墻策略在CentOS7.0中默認(rèn)使用firewall代替了iptables service。雖然繼續(xù)保留了iptables命令,但已經(jīng)僅是名稱相同而已。除非手動刪除firewall,再安裝iptable
16、s,否則不能繼續(xù)使用以前的iptables配置方法。以下介紹的是firewall配置方法:#cd /usr/lib/firewalld/services /該目錄中存放的是定義好的網(wǎng)絡(luò)服務(wù)和端口參數(shù),只用于參考,不能修改。這個目錄中只定義了一部分通用網(wǎng)絡(luò)服務(wù)。在該目錄中沒有定義的網(wǎng)絡(luò)服務(wù),也不必再增加相關(guān)xml定義,后續(xù)通過管理命令可以直接增加。#cd /etc/firewalld/services/從上面目錄中將需要使用的服務(wù)的xml文件拷至這個目錄中,如果端口有變化則可以修改文件中的數(shù)值。# Check firewall state.firewall-cmd -state# Check a
17、ctive zones.firewall-cmd -get-active-zones# Check current active services.firewall-cmd -get-service# Check services that will be active after next reload.firewall-cmd -get-service -permanent查看firewall當(dāng)前的配置信息,最后一個命令是查看寫入配置文件的信息。# # Set permanent and reload the runtime config.# firewall-cmd -permanent
18、 -zone=public -add-service=http# firewall-cmd -reload# firewall-cmd -permanent -zone=public -list-services打開HTTP服務(wù)端口并寫入配置文件從配置文件中重載至運(yùn)行環(huán)境中。# firewall-cmd -permanent -zone=public -remove-service=https# firewall-cmd -reload從已有配置中刪除一個服務(wù)端口# firewall-cmd -permanent -zone=public -add-port=8080-8081/tcp# fi
19、rewall-cmd -reload# firewall-cmd -zone=public -list-ports8080-8081/tcp# firewall-cmd -permanent -zone=public -list-ports8080-8081/tcp# firewall-cmd -permanent -zone=public -remove-port=8080-8081/tcp# firewall-cmd -reload打開或關(guān)閉一段TCP端口的方法,同理如果使用了其它非通用端口,那么也可以這么操作。# firewall-cmd -permanent -zone=public
20、-add-rich-rule=rule family=ipv4 source address=/24 service name=http accept# firewall-cmd -permanent -zone=public -remove-rich-rule=rule family=ipv4 source address=/24 service name=http acceptThe following command allows you to open/close HTTP access to a specific IP address.八、
21、啟用系統(tǒng)審計服務(wù)審計內(nèi)容包括:系統(tǒng)調(diào)用、文件訪問、用戶登錄等。編輯/etc/audit/audit.rules,在文中添加如下內(nèi)容:-w /var/log/audit/ -k LOG_audit-w /etc/audit/ -p wa -k CFG_audit-w /etc/sysconfig/auditd -p wa -k CFG_auditd.conf-w /etc/libaudit.conf -p wa -k CFG_libaudit.conf-w /etc/audisp/ -p wa -k CFG_audisp-w /etc/cups/ -p wa -k CFG_cups-w /etc
22、/init.d/cups -p wa -k CFG_initd_cups-w /etc/netlabel.rules -p wa -k CFG_netlabel.rules-w /etc/selinux/mls/ -p wa -k CFG_MAC_policy-w /usr/share/selinux/mls/ -p wa -k CFG_MAC_policy-w /etc/selinux/semanage.conf -p wa -k CFG_MAC_policy-w /usr/sbin/stunnel -p x-w /etc/security/rbac-self-test.conf -p wa
23、 -k CFG_RBAC_self_test-w /etc/aide.conf -p wa -k CFG_aide.conf-w /etc/cron.allow -p wa -k CFG_cron.allow-w /etc/cron.deny -p wa -k CFG_cron.deny-w /etc/cron.d/ -p wa -k CFG_cron.d-w /etc/cron.daily/ -p wa -k CFG_cron.daily-w /etc/cron.hourly/ -p wa -k CFG_cron.hourly-w /etc/cron.monthly/ -p wa -k CF
24、G_cron.monthly-w /etc/cron.weekly/ -p wa -k CFG_cron.weekly-w /etc/crontab -p wa -k CFG_crontab-w /var/spool/cron/root -k CFG_crontab_root-w /etc/group -p wa -k CFG_group-w /etc/passwd -p wa -k CFG_passwd-w /etc/gshadow -k CFG_gshadow-w /etc/shadow -k CFG_shadow-w /etc/security/opasswd -k CFG_opassw
25、d-w /etc/login.defs -p wa -k CFG_login.defs-w /etc/securetty -p wa -k CFG_securetty-w /var/log/faillog -p wa -k LOG_faillog-w /var/log/lastlog -p wa -k LOG_lastlog-w /var/log/tallylog -p wa -k LOG_tallylog-w /etc/hosts -p wa -k CFG_hosts-w /etc/sysconfig/network-scripts/ -p wa -k CFG_network-w /etc/
26、inittab -p wa -k CFG_inittab-w /etc/rc.d/init.d/ -p wa -k CFG_initscripts-w /etc/localtime -p wa -k CFG_localtime-w /etc/sysctl.conf -p wa -k CFG_sysctl.conf-w /etc/modprobe.conf -p wa -k CFG_modprobe.conf-w /etc/pam.d/ -p wa -k CFG_pam-w /etc/security/limits.conf -p wa -k CFG_pam-w /etc/security/pa
27、m_env.conf -p wa -k CFG_pam-w /etc/security/namespace.conf -p wa -k CFG_pam-w /etc/security/namespace.init -p wa -k CFG_pam-w /etc/aliases -p wa -k CFG_aliases-w /etc/postfix/ -p wa -k CFG_postfix-w /etc/ssh/sshd_config -k CFG_sshd_config-w /etc/vsftpd.ftpusers -k CFG_vsftpd.ftpusers-a exit,always -
28、F arch=b32 -S sethostname-w /etc/issue -p wa -k CFG_issue-w /etc/ -p wa -k CFG_重啟audit服務(wù)#service auditd restart九、部署完整性檢查工具軟件AIDE(Advanced Intrusion Detection Environment,高級入侵檢測環(huán)境)是個入侵檢測工具,主要用途是檢查文檔的完整性。AIDE能夠構(gòu)造一個指定文檔的數(shù)據(jù)庫,他使用aide.conf作為其配置文檔。AIDE數(shù)據(jù)庫能夠保存文檔的各種屬性,包括:權(quán)限(permission)、索引節(jié)點(diǎn)序號(inode number)、所
29、屬用戶(user)、所屬用戶組(group)、文檔大小、最后修改時間(mtime)、創(chuàng)建時間(ctime)、最后訪問時間(atime)、增加的大小連同連接數(shù)。AIDE還能夠使用下列算法:sha1、md5、rmd160、tiger,以密文形式建立每個文檔的校驗碼或散列號。在系統(tǒng)安裝完畢,要連接到網(wǎng)絡(luò)上之前,系統(tǒng)管理員應(yīng)該建立新系統(tǒng)的AIDE數(shù)據(jù)庫。這第一個AIDE數(shù)據(jù)庫是系統(tǒng)的一個快照和以后系統(tǒng)升級的準(zhǔn)繩。數(shù)據(jù)庫應(yīng)該包含這些信息:關(guān)鍵的系統(tǒng)二進(jìn)制可執(zhí)行程式、動態(tài)連接庫、頭文檔連同其他總是保持不變的文檔。這個數(shù)據(jù)庫不應(yīng)該保存那些經(jīng)常變動的文檔信息,例如:日志文檔、郵件、/proc文檔系統(tǒng)、用戶起始
30、目錄連同臨時目錄安裝方法:#yum -y install aide注:如果主機(jī)不能聯(lián)網(wǎng)安裝AIDE,那么也可以從安裝光盤拷貝至目標(biāo)主機(jī)。檢驗系統(tǒng)文件完整性的要求:因為AIDE可執(zhí)行程序的二進(jìn)制文檔本身可能被修改了或數(shù)據(jù)庫也被修改了。因此,應(yīng)該把AIDE的數(shù)據(jù)庫放到安全的地方,而且進(jìn)行檢查時要使用確保沒有被修改過的程序,最好是事先為AIDE執(zhí)行程序生成一份MD5信息。再次使用AIDE可執(zhí)行程序時,需要先驗證該程序沒有被篡改過。配置說明:序號參數(shù)注釋1/etc/aide.conf配置文件2database3database_outdatabase_new在使用aide -compare命令時,需要
31、在aide.conf中事先設(shè)置好database_new并指向需要比較的庫文件4report_url/var/log/aide,入侵檢測報告的存放位置5其它參數(shù)繼續(xù)使用默認(rèn)值即可。建立、更新樣本庫: 1)執(zhí)行初始化,建立第一份樣本庫 # aide -init# cd /var/lib/aide/ # mv aide.db.new.gz aide.db.gz /替換舊的樣本庫2) 更新到樣本庫#aide -update# cd /var/lib/aide/ # mv aide.db.new.gz aide.db.gz /替換舊的樣本庫執(zhí)行aide入侵檢測:1) 查看入侵檢測報告#aide -ch
32、eck報告的詳細(xì)程度可以通過-V選項來調(diào)控,級別為0-255,-V0 最簡略,-V255 最詳細(xì)?;?aide -compare這個命令要求在配置文件中已經(jīng)同時指定好了新、舊兩個庫文件。2) 保存入侵檢測報告(將檢查結(jié)果保存到其他文件)aide-check-report=file:/tmp/aide-report-20120426.txt3) 定期執(zhí)行入侵檢測,并發(fā)送報告#crontab-e4517*/usr/sbin/aide-C-V4|/bin/mail-sAIDEREPORT$(date+%Y%m%d)abcdefg#或4523 * * * aide -C /var/log/aide/date +%Y%m%d_aide.log記錄aide可執(zhí)行文件的md5 checksum:#md5sum /usr/sbin/aide十、部署系統(tǒng)監(jiān)控環(huán)境該段落因為需要安裝或更新較多的依賴包,所以目前僅作為參考。為了在將來合適的時候,可以支持通過一臺集中的監(jiān)控主機(jī)全面監(jiān)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 老年慢病綜合征的評估
- 2024農(nóng)民承包土地合同書
- 專題 07課內(nèi)閱讀(所有課內(nèi)片段閱讀) -2022-2023學(xué)年五年級語文下冊期末專項復(fù)習(xí)(部編版)
- 2024簡易維修合同格式
- 2024常用房屋裝修合同范本
- 2024建筑工程專業(yè)分包合同
- 2024建筑工程承包施工合同書格式
- 2024工地運(yùn)輸合同參考范文
- 計算機(jī)編程培訓(xùn)課程
- 關(guān)于實習(xí)生實習(xí)報告模板集錦7篇
- 腰椎間盤突出區(qū)域定位及意義
- 天藍(lán)色商務(wù)發(fā)展歷程時間軸PPT模板課件
- 各潮位站基面關(guān)系
- 高處安全作業(yè)票填寫模板(2022更新)
- 幼兒園繪本故事:《媽媽買綠豆》 PPT課件
- 急腹癥(課堂PPT)
- 物流中心崗位設(shè)置及崗位職責(zé)
- 九年級人自然社會教案
- 某市康復(fù)醫(yī)院建立的可行性報告
- 配位化學(xué) 第2章 配合物的結(jié)構(gòu)和成鍵理論
- 化妝品半成品成品檢驗規(guī)程
評論
0/150
提交評論