萬盛學電腦網

 萬盛學電腦網 >> Linux教程 >> 淺談Linux優化及安全配置

淺談Linux優化及安全配置

class="22961">

  前言:

  很久沒有寫過文章了,最近收到不少朋友來信,提及了有關優化配置和一些新的安全問題,在此我想和大家淺顯討論一下這些問題,有什麼不准確和有更好的方式,請給我來信共同討論提高。

  在網上看到不少有關linux優化方面的好文章,在此我也不贅述這些文章了,我只想從我自己的體會來談談這方面的問題。

  作為一個系統管理員,我下面說的都是基於服務器應用的linux來談的,由於個人電腦上使用linux也許不是像服務器上一樣,優先追求安全和穩定,因此個人電腦使用的朋友只做個參考吧。

  本文提及的系統,如沒有特別聲明,均采用redhat公司的redhat linux系統。

  關於優化

  說起優化,其實最好的優化就是提升硬件的配置,例如提高cpu的運算能力,提高內存的容量,個人認為如果你考慮升級硬件的話,建議優先提高內存的容量,因為一般服務器應用,對內存的消耗使用要求是最高的。當然這都是題外話了。

  這裡我們首要討論的,是在同等硬件配置下(同一台服務器,不提升硬件的情況下)對你的系統進行優化。

  作為系統管理員,我認為,首先我們要明確一個觀點:在服務器上作任何操作,升級和修改任何配置文件或軟件,都必須首要考慮安全性,不是越新的東西就越好,這也是為什麼linux管理感覺上和windows有所不同的地方,windows首先推薦大家去使用它的最新版本軟件和操作系統,其實我個人認為這是一種商業行為,作為從系統管理上來講,這是很不好的,使用新的軟件和系統可能帶來新的問題,有些甚至是致命的。

  因此,作為管理,我們還是應該考慮穩定的長期使用的軟件版本來作為我們的版本,具體的好處我就不多說了。相信作為管理員的你應該知道的。

  其實個人使用的linux最直接的一個優化就是升級內核,自己編譯的內核是根據自己的系統編譯而來,將得到最大的性能和最小的內核。

  但是,服務器就不太一樣了,當然我們也希望每一台服務器都是自己手工編譯的內核,高效而精巧。但是實際和願望是有差距的,試想一下,如果你管理100來台linux主機,而每一台也許配置都不一樣,那編譯內核的一個過程將是一個浩大工程,而且從實際考慮,工作量大得難以想象。我想你也不會願意做這種事情吧。因此,個人建議,采用官方發布的內核升級包是很好的選擇。

  首先,我們對新安裝的系統,將做一系列升級,包括軟件和內核,這是很重要的步驟。

  在升級好所有軟件後,基本的防火牆和配置都做好以後,我們開始優化一些細節配置,如果你是老系統,那麼在作本問題及的一些操作和優化你系統之前,務必被備份所有數據到其他介質。

  1、虛擬內存優化

  首先查看虛擬內存的使用情況,使用命令

  # free

  查看當前系統的內存使用情況。

  一般來說,linux的物理內存幾乎是完全used。這個和windows非常大的區別,它的內存管理機制將系統內存充分利用,並非windows無論多大的內存都要去使用一些虛擬內存一樣。這點需要注意。

  Linux下面虛擬內存的默認配置通過命令

  # cat /proc/sys/vm/freepages

  可以查看,顯示的三個數字是當前系統的:最小內存空白頁、最低內存空白頁和最高內存空白。

  注意,這裡系統使用虛擬內存的原則是:如果空白頁數目低於最高空白頁設置,則使用磁盤交換空間。當達到最低空白頁設置時,使用內存交換(注:這個是我查看一些資料得來的,具體應用時還需要自己觀察一下,不過這個不影響我們配置新的虛擬內存參數)。

  內存一般以每頁4k字節分配。最小內存空白頁設置是系統中內存數量的2倍;最低內存空白頁設置是內存數量的4倍;最高內存空白頁設置是系統內存的6倍。這些值在系統啟動時決定。

  一般來講在配置系統分配的虛擬內存配置上,我個人認為增大最高內存空白頁是一種比較好的配置方式,以1G的內存配置為例:

  可將原來的配置比例修改為:

  2048 4096 6444

  通過命令

  # echo "2048 4096 6444" > /proc/sys/vm/freepages

  因為增加了最高空白頁配置,那麼可以使內存更有效的利用。

  2、硬盤優化

  如果你是scsi硬盤或者是ide陣列,可以跳過這一節,這節介紹的參數調整只針對使用ide硬盤的服務器。

  我們通過hdparm程序來設置IDE硬盤,

  使用DMA和32位傳輸可以大幅提升系統性能。使用命令如下:

  # /sbin/hdparm -c 1 /dev/hda

  此命令將第一個IDE硬盤的PCI總線指定為32位,使用 -c 0參數來禁用32位傳輸。

  在硬盤上使用DMA,使用命令:

  # /sbin/hdparm -d 1 /dev/hda

  關閉DMA可以使用 -d 0的參數。

  更改完成後,可以使用hdparm來檢查修改後的結果,使用命令:

  # /sbin/hdparm -t /dev/had

  為了確保設置的結果不變,使用命令:# /sbin/hdparm -k 1 /dev/hda

  Hdparm命令的一些常用的其他參數功能

  -g 顯示硬盤的磁軌,磁頭,磁區等參數。

  -i 顯示硬盤的硬件規格信息,這些信息是在開機時由硬盤本身所提供。

  -I 直接讀取硬盤所提供的硬件規格信息。

  -p 設定硬盤的PIO模式。

  -Tt 評估硬盤的讀取效率和硬盤快取的讀取效率。

  -u <0或1> 在硬盤存取時,允許其他中斷要求同時執行。

  -v 顯示硬盤的相關設定。

  3、其他優化

  關閉不需要的服務,關於系統自動啟動的服務,網上有很多資料,在此我就不贅述了;

  關於安全

  1、安全檢查

  作為一個系統管理員來說,定期對系統作一次全面的安全檢查很重要的,最近遇到一些朋友來信說出現了一些莫名其妙的問題,例如最大的一個問題就是明顯感覺網絡服務緩慢,這極有可能是被攻擊的現象。

  實踐證明,無論是那種系統,默認安裝都是不安全的,實際不管你用windows也好,linux,bsd或其他什麼系統,默認安裝的都有很多漏洞,那怎麼才能成為安全的系統呢,這正是我們系統管理人員需要做的事情。配置配置再配置。

  任何系統,只要細心的配置,堵住已知的漏洞,可以說這個系統是安全的,其實並非很多朋友說的那樣,安裝了系統,配置了防火牆,安裝了殺毒軟件,那麼就安全了,其實如果對系統不作任何安全設置,那就等於向黑客敞開一扇紙做的大門,數十分鐘就能完全控制!

  這並非駭人聽聞。

  作為linux系統,同樣存在很多漏洞,黑可能利用這些漏洞控制你的整個系統,要防止這些問題,我們需要做以下步驟:

  1、 升級系統中所有軟件包的最新版本;

  2、 設置較為強壯的防火牆;

  3、 定期檢查關鍵記錄文件,配置殺毒軟件

  4、 多關心一下發布安全信息警告的網站,掌握一些最新的病毒和黑客程序的特點,這些都利於系統的正常運作。

  這篇文章主要以優化為主,為了配合這一主題,安全部分我們只討論一下日常的一些維護工作。

  除了上面列出的4條是管理員必修之課外,對一些linux系統細節的維護也很重要。

  包括:

  1、 配置日志輪訓工具,定期下載備份日志,是個非常好的習慣,這樣不但能減少日志的消耗的磁盤空間,提高系統效率,更能及時發現問題,linux下有些很好的系統日志分析器,能直接提取日志中的特殊項目,省去了閱讀日志的煩惱;

  2、 使用命令lsof –i ,netstat –a ,ps –e等命令,定期檢查系統服務端口監聽等情況,也可制作一個定期執行的腳本,將這些命令定期執行後發到郵箱中;

  3、 定期檢查root用戶的history列表,last列表,vipw用戶列表是否正常;

  4、 定期備份文件,用tar命令就能很好的備份了,當然需要下載這些備份並轉移介質;

  如一點發現有任何特別的沒見過的情況或端口,那麼要引起足夠的重視,切勿因小失大。

  以上是我對linux系統安全和優化的一些淺顯認識,希望大家都能安全高效的使用linux為你的工作生活帶來方便。

copyright © 萬盛學電腦網 all rights reserved