我們知道[M$]的windows是漏洞百出,但是大部分時候我們都在忍受,因為widows的易用性使我們很難舍棄它這個千瘡百孔的東東。但是隨著Linux內核的不斷升級和圖形交互界面的不斷完善,越來越多的人開始嘗試使用Linux這個對他們來說還相當新奇的OS.但是事實上并沒有東西是十全十美的,除了系統本身的因素之外,很多人為的原因都會造成這個許多人認為比Ms Windows安全的OS變得不安全。在接下來,我們會討論在安裝了一個Linux后在安全方面應該注意的一些基本的方面。嘿嘿!!!!!!
Linux的的所有管理功能都由單個帳號享有,它就是root,說白了就相當于win2k的administrator帳號,叫法不同罷了。
Root使你能夠對所有資源做最大的調整,你還可以有權直接允許或拒絕單個用戶,一部分用戶或所有用戶的的訪問。Root可以控制用戶訪問權限及其用戶存放文件的位置,還可以控制用戶可以訪問哪些資源,以及用戶如何得知哪些資源可以被訪問。
很多人都奇怪,為什么自己需要除了root之外的令一個帳號,難道不可以直接使用root嗎??答案是很明確的,絕對不要把root使用于個人目的,除非在有絕對必要的情況下,比如說系統恢復等。為何要這么做呢?首先,如果你擁有root的絕對使用權,文件和訪問控制對你來說沒有任何意義,你可以在任何時間對他們進行改動。但是,如果對這種權利進行濫用則會造成不必要的損失。其次,如果你直接使用root則會把你的系統暴露在無法預測的安全威脅之下。
接下來我將把帳號的創建和管理分四部分來討論
帳號策略
一般來說一個帳號包含兩個要素:一是授權登陸,另一是授權訪問。
授權登陸是用戶的一種特權,是不可以隨意授權的。如果你為用戶提供重要服務的同時而又不賦予他們shell訪問訪問權限,那就別授予。Shell訪問是指用戶用戶利用遠程telnet訪問服務器的本地shell,這是不太好的事情,會招致很多麻煩。比如說惡意shell用戶可以使用遠程攻擊文件和服務。
如果在建立linux網絡時必須授予用戶shell訪問權,可以采取以下措施減少隱患
單獨設立一臺機器用于shell訪問,使此機器僅做shell用途
不在此機上安裝任何多余的服務
備份系統,最好系統恢復的準備
不合其它機器建立信任關系
轉移二進制文件到no setuid方式掛裝的分區,把重要文件系統分放不同分區
充分保證日志的使用性,保證記錄日志,重定向日志儲存。
帳號結構
一個帳號應該包括
有效的用戶名和密碼
主目錄
shell訪問權
當用戶登陸linux時,linux會核對passwd文件,以確定正確與否。
Passwd文件包含著帳戶號的條目,它存放于/etc/passwd。
我們來分析一個帳號條目
gouy2k(用戶名):x(經過加密的密碼):0(用戶ID):0(組ID):Wokao(真實姓名):/home/gouy2k(用戶主目錄):/bin/bash(用戶shell)
在創建帳號時,你的自動帳號管理工具會創建一些目錄,包括新用戶的主目錄,一般是/home/user.
3.添加和刪除用戶
首先是添加用戶,有以下幾種方式
使用命令行工具
我們可以使用adduser命令
$adduser username
然后我們運行$passwd password來設置密碼為password
另外是adduser可以自動設置一些值,包括UID,GID等。
要注意的是如果你安裝了隱藏套件,則最好把linux用戶密碼存放在別處。因為它會暴露用戶口令給一般用戶。
使用圖形方式
比如說很流行的linuxconf,這里就不做詳細說明,請參看關于其介紹文章。
手動編輯/etc/passwd來添加用戶
對于初學者來說,這種方法不推薦,因為不太安全,嘿嘿。
當手動編輯時可以使用vipw.
然后是刪除用戶
如果沒有使用口令shadow,則可以把用戶條目從/etc/passwd刪除,然后把用戶主目錄刪除(/home/username)。不過從/etc/passwd刪除用戶條目時記住用vipw,刪除用戶目錄時鍵入
rm -r /home/username.
當使用了口令隱藏則必須使用userdel來刪除用戶
$ /user/sbin/userdel username
4.處理特殊帳號
我在上面說過了,root是不可以隨便使用的,但是為了達到使用root來管理系統的目的,我們可以使用su命令。
Su可以是你使用別人的用戶ID和組ID來運行shell,但要知道真確的密碼。只要運行
$su
就可以暫時變成root,但linux會提示輸入密碼。
當我們需要授權其它用戶以root身份運行某些命令時我們可以使用sudo命令。
――――――――――――――――――――――――――――――――――
當然,密碼是和帳號不可分割的,當我們需要登陸linux時,口令是很重要的,尤其是允許遠程登陸的linux服務器,密碼則顯得尤其重要,如果沒有密碼的保障,其它的一切安全措施都會顯得脆弱。
要做到真正保障密碼的安全,我們可以采取以下措施
安裝shadow
設計有效的口令策略
加強系統抵抗口令攻擊的能力


