亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区
Chinaunix
標(biāo)題:
【推薦】Linux網(wǎng)絡(luò)安全經(jīng)驗(yàn)總結(jié)
[打印本頁(yè)]
作者:
邪MM
時(shí)間:
2006-11-02 13:59
標(biāo)題:
【推薦】Linux網(wǎng)絡(luò)安全經(jīng)驗(yàn)總結(jié)
關(guān)于分區(qū) \r\n\r\n 一個(gè)潛在的黑客如果要攻擊你的Linux服務(wù)器,他首先就會(huì)嘗試緩沖區(qū)溢出。在過(guò)去的幾年中,以緩沖區(qū)溢出為類型的安全漏洞是最為常見(jiàn)的一種形式了。更為嚴(yán)重的是,緩沖區(qū)溢出漏洞占了遠(yuǎn)程網(wǎng)絡(luò)攻擊的絕大多數(shù),這種攻擊可以輕易使得一個(gè)匿名的Internet用戶有機(jī)會(huì)獲得一臺(tái)主機(jī)的部分或全部的控制權(quán)! \r\n\r\n 為了防止此類攻擊,我們從安裝系統(tǒng)時(shí)就應(yīng)該注意。如果用root分區(qū)紀(jì)錄數(shù)據(jù),如log文件和email,就可能因?yàn)榫芙^服務(wù)產(chǎn)生大量日志或垃圾郵件,從而導(dǎo)致系統(tǒng)崩潰。所以建議為/var開(kāi)辟單獨(dú)的分區(qū),用來(lái)存放日志和郵件,以避免root分區(qū)被溢出。最好為特殊的應(yīng)用程序單獨(dú)開(kāi)一個(gè)分區(qū),特別是可以產(chǎn)生大量日志的程序,還有建議為/home單獨(dú)分一個(gè)區(qū),這樣他們就不能填滿/分區(qū)了,從而就避免了部分針對(duì)Linux分區(qū)溢出的惡意攻擊。 \r\n\r\n 關(guān)于BIOS \r\n\r\n 記著要在BIOS設(shè)置中設(shè)定一個(gè)BIOS密碼,不接收軟盤(pán)啟動(dòng)。這樣可以阻止不懷好意的人用專門(mén)的啟動(dòng)盤(pán)啟動(dòng)你的Linux系統(tǒng),并避免別人更改BIOS設(shè)置,如更改軟盤(pán)啟動(dòng)設(shè)置或不彈出密碼框直接啟動(dòng)服務(wù)器等等。 \r\n\r\n 關(guān)于口令 \r\n\r\n 口令是系統(tǒng)中認(rèn)證用戶的主要手段,系統(tǒng)安裝時(shí)默認(rèn)的口令最小長(zhǎng)度通常為5,但為保證口令不易被猜測(cè)攻擊,可增加口令的最小長(zhǎng)度,至少等于8。為此,需修改文件/etc/login.defs中參數(shù)PASS_MIN_LEN(口令最小長(zhǎng)度)。同時(shí)應(yīng)限制口令使用時(shí)間,保證定期更換口令,建議修改參數(shù)PASS_MIN_DAYS(口令使用時(shí)間)。 \r\n\r\n 關(guān)于Ping \r\n\r\n 既然沒(méi)有人能ping通你的機(jī)器并收到響應(yīng),你可以大大增強(qiáng)你的站點(diǎn)的安全性。你可以加下面的一行命令到/etc/rc.d/rc.local,以使每次啟動(dòng)后自動(dòng)運(yùn)行,這樣就可以阻止你的系統(tǒng)響應(yīng)任何從外部/內(nèi)部來(lái)的ping請(qǐng)求。 \r\n\r\n echo 1 > /proc/sys/net/ipv4/icmp_echo_ignore_all \r\n\r\n 關(guān)于Telnet \r\n\r\n 如果你希望用戶用Telnet遠(yuǎn)程登錄到你的服務(wù)器時(shí)不要顯示操作系統(tǒng)和版本信息(可以避免有針對(duì)性的漏洞攻擊),你應(yīng)該改寫(xiě)/etc/inetd.conf中的一行象下面這樣: \r\n\r\n telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd -h \r\n\r\n 加-h標(biāo)志在最后使得telnet后臺(tái)不要顯示系統(tǒng)信息,而僅僅顯示login。 \r\n\r\n 關(guān)于特權(quán)賬號(hào) \r\n\r\n 禁止所有默認(rèn)的被操作系統(tǒng)本身啟動(dòng)的且不需要的帳號(hào),當(dāng)你第一次裝上系統(tǒng)時(shí)就應(yīng)該做此檢查,Linux提供了各種帳號(hào),你可能不需要,如果你不需要這個(gè)帳號(hào),就移走它,你有的帳號(hào)越多,就越容易受到攻擊。 \r\n\r\n 為刪除你系統(tǒng)上的用戶,用下面的命令:userdel username \r\n\r\n 為刪除你系統(tǒng)上的組用戶帳號(hào),用下面的命令:groupdel username \r\n\r\n 在終端上打入下面的命令刪掉下面的特權(quán)用賬號(hào): \r\n\r\n userdel adm \r\n\r\n userdel lp \r\n\r\n userdel sync \r\n\r\n userdel shutdown \r\n\r\n userdel halt \r\n\r\n userdel mail \r\n\r\n 如果你不用sendmail服務(wù)器,就刪除這幾個(gè)帳號(hào): \r\n\r\n userdel news \r\n\r\n userdel uucp \r\n\r\n userdel operator \r\n\r\n userdel games \r\n\r\n 如果你不用X windows 服務(wù)器,就刪掉這個(gè)帳號(hào)。 \r\n\r\n userdel gopher \r\n\r\n 如果你不允許匿名FTP,就刪掉這個(gè)用戶帳號(hào): \r\n\r\n userdel ftp \r\n\r\n 關(guān)于su命令 \r\n\r\n 如果你不想任何人能夠su為root的話,你應(yīng)該編輯/etc/pam.d/su文件,加下面幾行: \r\n\r\n auth sufficient /lib- \r\n\r\n /security/pam_rootok- \r\n\r\n .so debug \r\n\r\n auth required /lib- \r\n\r\n /security/pam_wheel- \r\n\r\n .so group=isd \r\n\r\n 這意味著僅僅isd組的用戶可以su作為root。如果你希望用戶admin能su作為root.就運(yùn)行下面的命令: \r\n\r\n usermod -G10 admin \r\n\r\n suid程序也是非常危險(xiǎn)的,這些程序被普通用戶以euid=0(即root)的身份執(zhí)行,只能有少量程序被設(shè)置為suid。用這個(gè)命令列出系統(tǒng)的suid二進(jìn)制程序: \r\n\r\n suneagle# find / -perm -4000 -print \r\n\r\n 你可以用chmod -s去掉一些不需要程序的suid位。 \r\n\r\n\r\n\r\n關(guān)于賬戶注銷 \r\n\r\n 如果系統(tǒng)管理員在離開(kāi)系統(tǒng)時(shí)忘了從root注銷,系統(tǒng)應(yīng)該能夠自動(dòng)從shell中注銷。那么,你就需要設(shè)置一個(gè)特殊的 Linux 變量“tmout”,用以設(shè)定時(shí)間。同樣,如果用戶離開(kāi)機(jī)器時(shí)忘記了注銷賬戶,則可能給系統(tǒng)安全帶來(lái)隱患。你可以修改/etc/profile文件,保證賬戶在一段時(shí)間沒(méi)有操作后,自動(dòng)從系統(tǒng)注銷。 編輯文件/etc/profile,在“histfilesize=”行的下一行增加如下一行: \r\n\r\n tmout=600 \r\n\r\n 則所有用戶將在10分鐘無(wú)操作后自動(dòng)注銷。注意:修改了該參數(shù)后,必須退出并重新登錄root,更改才能生效。 \r\n\r\n 關(guān)于系統(tǒng)文件 \r\n\r\n 對(duì)于系統(tǒng)中的某些關(guān)鍵性文件如passwd、passwd.old、passwd._、shadow、shadown._、 inetd.conf、services和lilo.conf等可修改其屬性,防止意外修改和被普通用戶查看。 如將inetd文件屬性改為600: \r\n\r\n # chmod 600 /etc/inetd.conf \r\n\r\n 這樣就保證文件的屬主為root,然后還可以將其設(shè)置為不能改變: \r\n\r\n # chattr +i /etc/inetd.conf \r\n\r\n 這樣,對(duì)該文件的任何改變都將被禁止。 你可能要問(wèn):那我自己不是也不能修改了?當(dāng)然,我們可以設(shè)置成只有root重新設(shè)置復(fù)位標(biāo)志后才能進(jìn)行修改: \r\n\r\n # chattr -i /etc/inetd.conf \r\n\r\n 關(guān)于用戶資源 \r\n\r\n 對(duì)你的系統(tǒng)上所有的用戶設(shè)置資源限制可以防止DoS類型攻擊,如最大進(jìn)程數(shù),內(nèi)存數(shù)量等。例如,對(duì)所有用戶的限制, 編輯/etc/security/limits.con加入以下幾行: \r\n\r\n * hard core 0 \r\n\r\n * hard rss 5000 \r\n\r\n * hard nproc 20 \r\n\r\n 你也必須編輯/etc/pam.d/login文件,檢查這一行的存在: \r\n\r\n session required /lib/security/pam_limits.so \r\n\r\n 上面的命令禁止core files“core 0”,限制進(jìn)程數(shù)為“nproc 50“,且限制內(nèi)存使用為5M“rss 5000”。 \r\n\r\n 關(guān)于NFS服務(wù)器 \r\n\r\n 由于NFS服務(wù)器漏洞比較多,你一定要小心。如果要使用NFS網(wǎng)絡(luò)文件系統(tǒng)服務(wù),那么確保你的/etc/exports具有最嚴(yán)格的存取權(quán)限設(shè)置,不意味著不要使用任何通配符,不允許root寫(xiě)權(quán)限,mount成只讀文件系統(tǒng)。你可以編輯文件/etc/exports并且加: \r\n\r\n /dir/to/export host1.mydomain.com(ro,root_squash) \r\n\r\n /dir/to/export host2.mydomain.com(ro,root_squash) \r\n\r\n 其中/dir/to/export 是你想輸出的目錄,host.mydomain.com是登錄這個(gè)目錄的機(jī)器名,ro意味著mount成只讀系統(tǒng),root_squash禁止root寫(xiě)入該目錄。最后為了讓上面的改變生效,還要運(yùn)行/usr/sbin/exportfs -a \r\n\r\n 關(guān)于開(kāi)啟的服務(wù) \r\n\r\n 默認(rèn)的linux就是一個(gè)強(qiáng)大的系統(tǒng),運(yùn)行了很多的服務(wù)。但有許多服務(wù)是不需要的,很容易引起安全風(fēng)險(xiǎn)。這個(gè)文件就是 /etc/inetd.conf,它制定了/usr/sbin/inetd將要監(jiān)聽(tīng)的服務(wù),你可能只需要其中的兩個(gè):telnet和ftp,其它的類如 shell, login, exec, talk, ntalk, imap, pop-2, pop-3, finger, auth, etc. 除非你真的想用它。否則統(tǒng)統(tǒng)關(guān)閉之。 \r\n\r\n 你先用下面的命令顯示沒(méi)有被注釋掉的服務(wù): \r\n\r\n grep -v \"#\" /etc/inetd.conf \r\n\r\n 這個(gè)命令統(tǒng)計(jì)面前服務(wù)的總數(shù): \r\n\r\n ps -eaf|wc -l \r\n\r\n 需要提醒你的是以下三個(gè)服務(wù)漏洞很多,強(qiáng)烈建議你關(guān)閉它們:S34yppasswdd(NIS服務(wù)器)、S35ypserv(NIS服務(wù)器)和S60nfs(NFS服務(wù)器)。 \r\n\r\n 我們可以運(yùn)行#killall -HUP inetd來(lái)關(guān)閉不需要的服務(wù)。當(dāng)然,你也可以運(yùn)行 \r\n\r\n #chattr +i /etc/inetd.conf \r\n\r\n 如果你想使inetd.conf文件具有不可更改屬性,而只有root 才能解開(kāi),敲以下命令 \r\n\r\n #chattr -i /etc/inetd.conf \r\n\r\n 當(dāng)你關(guān)閉一些服務(wù)以后,重新運(yùn)行以上命令看看少了多少服務(wù)。運(yùn)行的服務(wù)越少,系統(tǒng)自然越安全了。我們可以用下面命令察看哪些服務(wù)在運(yùn)行: \r\n\r\n netstat -na --ip \r\n\r\n 如果你用的是Redhat那就方便多了。^_^ Redhat提供一個(gè)工具來(lái)幫助你關(guān)閉服務(wù),輸入/usr/sbin/setup,然后選擇\"system services\",就可以定制系統(tǒng)啟動(dòng)時(shí)跑哪些服務(wù)。另外一個(gè)選擇是chkconfig命令,很多l(xiāng)inux版本的系統(tǒng)都自帶這個(gè)工具。腳本名字中的數(shù)字是啟動(dòng)的順序,以大寫(xiě)的K開(kāi)頭的是殺死進(jìn)程用的。 \r\n\r\n 關(guān)于日志 \r\n\r\n 所有的日志都在/var/log下(僅對(duì)linux系統(tǒng)而言),默認(rèn)情況下linux的日志就已經(jīng)很強(qiáng)大了,但除ftp外。因此我們可以通過(guò)修改/etc/ftpaccess 或者/etc/inetd.conf,來(lái)保證每一個(gè)ftp連接日志都能夠紀(jì)錄下來(lái)。下面是一個(gè)修改inetd.conf的例子,假如有下一行: \r\n\r\n ftp stream tcp nowait root /usr/sbin/tcpd in.ftpd -l -L -i -o \r\n\r\n 注釋: \r\n\r\n -l每一個(gè)ftp連接都寫(xiě)到syslog \r\n\r\n -L紀(jì)錄用戶的每一個(gè)命令 \r\n\r\n -i文件received,紀(jì)錄到xferlog \r\n\r\n -o文件transmitted,記錄到xferlog \r\n\r\n 不過(guò)你也不要太相信日志,因?yàn)榻^大部分黑客都有“擦腳印”的“好”習(xí)慣啰!如果你不放心,最好安裝一個(gè)Sniffer吧。 \r\n\r\n 關(guān)于TCP_WRAPPERS \r\n\r\n 默認(rèn)的,Redhat Linux允許所有的請(qǐng)求,這是很危險(xiǎn)的。如果用TCP_WRAPPERS來(lái)增強(qiáng)我們站點(diǎn)的安全性簡(jiǎn)直是舉手之勞,你可以將禁止所有的請(qǐng)求放入“ALL: ALL”到/etc/hosts.deny中,然后放那些明確允許的請(qǐng)求到/etc/hosts.allow中,如: \r\n\r\n sshd: 192.168.1.10/255.255.255.0 gate.openarch.com \r\n\r\n 對(duì)IP地址192.168.1.10和主機(jī)名gate.openarch.com,允許通過(guò)ssh連接。配置完了之后,用tcpdchk檢查,你可以直接執(zhí)行:tcpdchk 。在這里,tcpchk是TCP_Wrapper配置檢查工具,它檢查你的tcp wrapper配置并報(bào)告所有發(fā)現(xiàn)的潛在/存在的問(wèn)題。 \r\n\r\n 關(guān)于補(bǔ)丁 \r\n\r\n 你應(yīng)該經(jīng)常到你所安裝的Linux系統(tǒng)發(fā)行商的主頁(yè)上去找最新的補(bǔ)丁。例如:對(duì)于Redhat系統(tǒng)而言可以在:
http://www.redhat.com/corp/suppo ... 墑歉鍪【竦母R襞?/a>!
歡迎光臨 Chinaunix (http://www.72891.cn/)
Powered by Discuz! X3.2