如今linux系統安全變的越來越重要了,這裡我想把我平時比較常使用的一些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),假如或改變這三個引數:
1 boot=/dev/hda 2 3 map=/boot/map 4 5 install=/boot/boot.b 6 7 prompt 8 9 timeout=00 #把這行該為00,這樣系統啟動時將不在等待,而直接啟動linux 10 11 message=/boot/message 12 13 linear 14 15 default=linux 16 17 restricted #加入這行 18 19 password= #加入這行並設定自己的密碼 20 21 image=/boot/vmlinuz-2.4.2-2 22 23 label=linux 24 25 root=/dev/hda6 26 27 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”任何改變(意外或其他原因)
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”檔案。