如今系統安全變的越來越重要了,這裡我想把我平時比較常使用的一些linux下的基本的安全措施寫出來和大家探討一下,讓我們的Linux系統變得可靠。
1、BIOS的安全設置
這是最基本的了,也是最簡單的了。一定要給你的BIOS設置密碼,以防止通過在BIOS中改變啟動順序,而可以從軟盤啟動。這樣可以阻止別有用心的試圖用特殊的啟動盤啟動你的系統,還可以阻止別人進入BIOS改動其中的設置,使機器的硬件設置不能被別人隨意改動。
2、LILO的安全設置
LILO是LInux LOader的縮寫,它是LINUX的啟動模塊。可以通過修改“/etc/lilo.conf”文件中的內容來進行配置。在/etc/lilo.conf文件中加如下面兩個參數:restricted,password。這三個參數可以使你的系統在啟動lilo時就要求密碼驗證。
第一步:編輯lilo.conf文件(vi /etc/lilo.comf),假如或改變這三個參數:
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=00 #把這行該為00,這樣系統啟動時將不在等待,而直接啟動LINUX
message=/boot/message
linear
default=linux
restricted #加入這行
password= #加入這行並設置自己的密碼
image=/boot/vmlinuz-2.4.2-2
label=linux
root=/dev/hda6
read-only
第二步:因為"/etc/lilo.conf"文件中包含明文密碼,所以要把它設置為root權限讀取。
# chmod 0600 /etc/lilo.conf
第三步:更新系統,以便對“/etc/lilo.conf”文件做的修改起作用。
# /sbin/lilo -v
第四步:使用“chattr”命令使"/etc/lilo.conf"文件變為不可改變。
# chattr +i /etc/lilo.conf
這樣可以在一定程度上防止對“/etc/lilo.conf”任何改變(意外或其他原因) <ccid_pge>
3、讓口令更加安全
口令可以說是系統的第一道防線,目前網上的大部分對系統的攻擊都是從截獲口令或者猜測口令開始的,所以我們應該選擇更加安全的口令。
首先要杜絕不設口令的帳號存在。這可以通過查看/etc/passwd文件發現。例如,存在的用戶名為test的帳號,沒有設置口令,則在/etc/passwd文件中就有如下一行:
test::100:9::/home/test:/bin/bash
其第二項為空,說明test這個帳號沒有設置口令,這是非常危險的!應將該類帳號刪除或者設置口令。
其次,在舊版本的linux中,在/etc/passwd文件中是包含有加密的密碼的,這就給系統的安全性帶來了很大的隱患,最簡單的方法就是可以用暴力破解的方法來獲得口令。可以使用命/usr/sbin/pwconv或者/usr/sbin/grpconv來建立/etc/shadow或者/etc/gshadow文件,這樣在/etc/passwd文件中不再包含加密的密碼,而是放在/etc/shadow文件中,該文件只有超級用戶root可讀!
第三點是修改一些系統帳號的Shell變量,例如uucp,ftp和news等,還有一些僅僅需要FTP功能的帳號,一定不要給他們設置/bin/bash或者/bin/sh等Shell變量。可以在/etc/passwd中將它們的Shell變量置空,例如設為/bin/false或者/dev/null等,也可以使用usermod -s /dev/nullusername命令來更改username的Shell為/dev/null。這樣使用這些帳號將無法Telnet遠程登錄到系統中來!
第四點是修改缺省的密碼長度:在你安裝linux時默認的密碼長度是5個字節。但這並不夠,要把它設為8。修改最短密碼長度需要編輯login.defs文件(vi/etc/login.defs),把下面這行
PASS_MIN_LEN 5
改為
PASS_MIN_LEN 8
login.defs文件是login程序的配置文件。
4、自動注銷帳號的登錄
在unix系統中root賬戶是具有最高特權的。如果系統管理員在離開系統之前忘記注銷root賬戶,那將會帶來很大的安全隱患,應該讓系統會自動注銷。通過修改賬戶中“TMOUT”參數,可以實現此功能。TMOUT按秒計算。編輯你的profile文件(vi/etc/profile),在"HISTFILESIZE="後面加入下面這行:
TMOUT=300
300,表示300秒,也就是表示5分鐘。這樣,如果系統中登陸的用戶在5分鐘內都沒有動作,那麼系統會自動注銷這個賬戶。你可以在個別用戶的“.bashrc”文件中添加該值,以便系統對該用戶實行特殊的自動注銷時間。
改變這項設置後,必須先注銷用戶,再用該用戶登陸才能激活這個功能。
5、取消普通用戶的控制台訪問權限
你應該取消普通用戶的控制台訪問權限,比如shutdown、reboot、halt等命令。
# rm -f /etc/security/console.apps/
是你要注銷的程序名。
6、取消並反安裝所有不用的服務
取消並反安裝所有不用的服務,這樣你的擔心就會少很多。察看“/etc/inetd.conf”文件,通過注釋取消所有你不需要的服務(在該服務項目之前加一個“#”)。然後用“sighup”命令升級“inetd.conf”文件