淺談Linux優(yōu)化及安全配置
掃描二維碼
隨時(shí)隨地手機(jī)看文章
前言:
很久沒(méi)有寫過(guò)文章了,最近收到不少朋友來(lái)信,提及了有關(guān)優(yōu)化配置和一些新的安全問(wèn)題,在此我想和大家淺顯討論一下這些問(wèn)題,有什么不準(zhǔn)確和有更好的方式,請(qǐng)給我來(lái)信共同討論提高。
在網(wǎng)上看到不少有關(guān)linux優(yōu)化方面的好文章,在此我也不贅述這些文章了,我只想從我自己的體會(huì)來(lái)談?wù)勥@方面的問(wèn)題。
作為一個(gè)系統(tǒng)管理員,我下面說(shuō)的都是基于服務(wù)器應(yīng)用的linux來(lái)談的,由于個(gè)人電腦上使用linux也許不是像服務(wù)器上一樣,優(yōu)先追求安全和穩(wěn)定,因此個(gè)人電腦使用的朋友只做個(gè)參考吧。
本文提及的系統(tǒng),如沒(méi)有特別聲明,均采用redhat公司的redhat linux系統(tǒng)。
關(guān)于優(yōu)化
說(shuō)起優(yōu)化,其實(shí)最好的優(yōu)化就是提升硬件的配置,例如提高cpu的運(yùn)算能力,提高內(nèi)存的容量,個(gè)人認(rèn)為如果你考慮升級(jí)硬件的話,建議優(yōu)先提高內(nèi)存的容量,因?yàn)橐话惴?wù)器應(yīng)用,對(duì)內(nèi)存的消耗使用要求是最高的。當(dāng)然這都是題外話了。
這里我們首要討論的,是在同等硬件配置下(同一臺(tái)服務(wù)器,不提升硬件的情況下)對(duì)你的系統(tǒng)進(jìn)行優(yōu)化。
作為系統(tǒng)管理員,我認(rèn)為,首先我們要明確一個(gè)觀點(diǎn):在服務(wù)器上作任何操作,升級(jí)和修改任何配置文件或軟件,都必須首要考慮安全性,不是越新的東西就越好,這也是為什么linux管理感覺上和windows有所不同的地方,windows首先推薦大家去使用它的最新版本軟件和操作系統(tǒng),其實(shí)我個(gè)人認(rèn)為這是一種商業(yè)行為,作為從系統(tǒng)管理上來(lái)講,這是很不好的,使用新的軟件和系統(tǒng)可能帶來(lái)新的問(wèn)題,有些甚至是致命的。
因此,作為管理,我們還是應(yīng)該考慮穩(wěn)定的長(zhǎng)期使用的軟件版本來(lái)作為我們的版本,具體的好處我就不多說(shuō)了。相信作為管理員的你應(yīng)該知道的。
其實(shí)個(gè)人使用的linux最直接的一個(gè)優(yōu)化就是升級(jí)內(nèi)核,自己編譯的內(nèi)核是根據(jù)自己的系統(tǒng)編譯而來(lái),將得到最大的性能和最小的內(nèi)核。
但是,服務(wù)器就不太一樣了,當(dāng)然我們也希望每一臺(tái)服務(wù)器都是自己手工編譯的內(nèi)核,高效而精巧。但是實(shí)際和愿望是有差距的,試想一下,如果你管理100來(lái)臺(tái)linux主機(jī),而每一臺(tái)也許配置都不一樣,那編譯內(nèi)核的一個(gè)過(guò)程將是一個(gè)浩大工程,而且從實(shí)際考慮,工作量大得難以想象。我想你也不會(huì)愿意做這種事情吧。因此,個(gè)人建議,采用官方發(fā)布的內(nèi)核升級(jí)包是很好的選擇。
首先,我們對(duì)新安裝的系統(tǒng),將做一系列升級(jí),包括軟件和內(nèi)核,這是很重要的步驟。
在升級(jí)好所有軟件后,基本的防火墻和配置都做好以后,我們開始優(yōu)化一些細(xì)節(jié)配置,如果你是老系統(tǒng),那么在作本問(wèn)題及的一些操作和優(yōu)化你系統(tǒng)之前,務(wù)必被備份所有數(shù)據(jù)到其他介質(zhì)。
1、虛擬內(nèi)存優(yōu)化
首先查看虛擬內(nèi)存的使用情況,使用命令
# free
查看當(dāng)前系統(tǒng)的內(nèi)存使用情況。
一般來(lái)說(shuō),linux的物理內(nèi)存幾乎是完全used。這個(gè)和windows非常大的區(qū)別,它的內(nèi)存管理機(jī)制將系統(tǒng)內(nèi)存充分利用,并非windows無(wú)論多大的內(nèi)存都要去使用一些虛擬內(nèi)存一樣。這點(diǎn)需要注意。
Linux下面虛擬內(nèi)存的默認(rèn)配置通過(guò)命令
# cat /proc/sys/vm/freepages
可以查看,顯示的三個(gè)數(shù)字是當(dāng)前系統(tǒng)的:最小內(nèi)存空白頁(yè)、最低內(nèi)存空白頁(yè)和最高內(nèi)存空白。
注意,這里系統(tǒng)使用虛擬內(nèi)存的原則是:如果空白頁(yè)數(shù)目低于最高空白頁(yè)設(shè)置,則使用磁盤交換空間。當(dāng)達(dá)到最低空白頁(yè)設(shè)置時(shí),使用內(nèi)存交換(注:這個(gè)是我查看一些資料得來(lái)的,具體應(yīng)用時(shí)還需要自己觀察一下,不過(guò)這個(gè)不影響我們配置新的虛擬內(nèi)存參數(shù))。
內(nèi)存一般以每頁(yè)4k字節(jié)分配。最小內(nèi)存空白頁(yè)設(shè)置是系統(tǒng)中內(nèi)存數(shù)量的2倍;最低內(nèi)存空白頁(yè)設(shè)置是內(nèi)存數(shù)量的4倍;最高內(nèi)存空白頁(yè)設(shè)置是系統(tǒng)內(nèi)存的6倍。這些值在系統(tǒng)啟動(dòng)時(shí)決定。
一般來(lái)講在配置系統(tǒng)分配的虛擬內(nèi)存配置上,我個(gè)人認(rèn)為增大最高內(nèi)存空白頁(yè)是一種比較好的配置方式,以1G的內(nèi)存配置為例:
可將原來(lái)的配置比例修改為:
2048 4096 6444
通過(guò)命令
# echo "2048 4096 6444" > /proc/sys/vm/freepages
因?yàn)樵黾恿俗罡呖瞻醉?yè)配置,那么可以使內(nèi)存更有效的利用。
2、硬盤優(yōu)化
如果你是scsi硬盤或者是ide陣列,可以跳過(guò)這一節(jié),這節(jié)介紹的參數(shù)調(diào)整只針對(duì)使用ide硬盤的服務(wù)器。
我們通過(guò)hdparm程序來(lái)設(shè)置IDE硬盤,
使用DMA和32位傳輸可以大幅提升系統(tǒng)性能。使用命令如下:
# /sbin/hdparm -c 1 /dev/hda
此命令將第一個(gè)IDE硬盤的PCI總線指定為32位,使用 -c 0參數(shù)來(lái)禁用32位傳輸。
在硬盤上使用DMA,使用命令:
# /sbin/hdparm -d 1 /dev/hda
關(guān)閉DMA可以使用 -d 0的參數(shù)。
更改完成后,可以使用hdparm來(lái)檢查修改后的結(jié)果,使用命令:
# /sbin/hdparm -t /dev/had
為了確保設(shè)置的結(jié)果不變,使用命令:# /sbin/hdparm -k 1 /dev/hda
Hdparm命令的一些常用的其他參數(shù)功能
-g 顯示硬盤的磁軌,磁頭,磁區(qū)等參數(shù)。
-i 顯示硬盤的硬件規(guī)格信息,這些信息是在開機(jī)時(shí)由硬盤本身所提供。
-I 直接讀取硬盤所提供的硬件規(guī)格信息。
-p 設(shè)定硬盤的PIO模式。
-Tt 評(píng)估硬盤的讀取效率和硬盤快取的讀取效率。
-u <0或1> 在硬盤存取時(shí),允許其他中斷要求同時(shí)執(zhí)行。
-v 顯示硬盤的相關(guān)設(shè)定。
3、其他優(yōu)化
關(guān)閉不需要的服務(wù),關(guān)于系統(tǒng)自動(dòng)啟動(dòng)的服務(wù),網(wǎng)上有很多資料,在此我就不贅述了;
關(guān)于安全
1、安全檢查
作為一個(gè)系統(tǒng)管理員來(lái)說(shuō),定期對(duì)系統(tǒng)作一次全面的安全檢查很重要的,最近遇到一些朋友來(lái)信說(shuō)出現(xiàn)了一些莫名其妙的問(wèn)題,例如最大的一個(gè)問(wèn)題就是明顯感覺網(wǎng)絡(luò)服務(wù)緩慢,這極有可能是被攻擊的現(xiàn)象。
實(shí)踐證明,無(wú)論是那種系統(tǒng),默認(rèn)安裝都是不安全的,實(shí)際不管你用windows也好,linux,bsd或其他什么系統(tǒng),默認(rèn)安裝的都有很多漏洞,那怎么才能成為安全的系統(tǒng)呢,這正是我們系統(tǒng)管理人員需要做的事情。配置配置再配置。
任何系統(tǒng),只要細(xì)心的配置,堵住已知的漏洞,可以說(shuō)這個(gè)系統(tǒng)是安全的,其實(shí)并非很多朋友說(shuō)的那樣,安裝了系統(tǒng),配置了防火墻,安裝了殺毒軟件,那么就安全了,其實(shí)如果對(duì)系統(tǒng)不作任何安全設(shè)置,那就等于向黑客敞開一扇紙做的大門,數(shù)十分鐘就能完全控制!
這并非駭人聽聞。
作為linux系統(tǒng),同樣存在很多漏洞,黑可能利用這些漏洞控制你的整個(gè)系統(tǒng),要防止這些問(wèn)題,我們需要做以下步驟:
1、 升級(jí)系統(tǒng)中所有軟件包的最新版本;
2、 設(shè)置較為強(qiáng)壯的防火墻;
3、 定期檢查關(guān)鍵記錄文件,配置殺毒軟件
4、 多關(guān)心一下發(fā)布安全信息警告的網(wǎng)站,掌握一些最新的病毒和黑客程序的特點(diǎn),這些都利于系統(tǒng)的正常運(yùn)作。
這篇文章主要以優(yōu)化為主,為了配合這一主題,安全部分我們只討論一下日常的一些維護(hù)工作。
除了上面列出的4條是管理員必修之課外,對(duì)一些linux系統(tǒng)細(xì)節(jié)的維護(hù)也很重要。
包括:
1、 配置日志輪訓(xùn)工具,定期下載備份日志,是個(gè)非常好的習(xí)慣,這樣不但能減少日志的消耗的磁盤空間,提高系統(tǒng)效率,更能及時(shí)發(fā)現(xiàn)問(wèn)題,linux下有些很好的系統(tǒng)日志分析器,能直接提取日志中的特殊項(xiàng)目,省去了閱讀日志的煩惱;
2、 使用命令lsof –i ,netstat –a ,ps –e等命令,定期檢查系統(tǒng)服務(wù)端口監(jiān)聽等情況,也可制作一個(gè)定期執(zhí)行的腳本,將這些命令定期執(zhí)行后發(fā)到郵箱中;
3、 定期檢查root用戶的history列表,last列表,vipw用戶列表是否正常;
4、 定期備份文件,用tar命令就能很好的備份了,當(dāng)然需要下載這些備份并轉(zhuǎn)移介質(zhì);
如一點(diǎn)發(fā)現(xiàn)有任何特別的沒(méi)見過(guò)的情況或端口,那么要引起足夠的重視,切勿因小失大。
以上是我對(duì)linux系統(tǒng)安全和優(yōu)化的一些淺顯認(rèn)識(shí),希望大家都能安全高效的使用linux為你的工作生活帶來(lái)方便。