


Unix操作系統安全性
添加時間:2015-7-24 14:49:30
添加:
思海網絡
Unix操作系統的安全性是眾所周知的。但是如果要你說出Unix系統到底安全在哪里,估計也沒有人能夠說出一個所以然來。
一、同一個命令不同用戶不同的權限。
Date命令是Unix系統的一個常用命令,其顯示了系統的日期與時間。但是不同的用戶角色其具有不同的功能。如是系統管理員用戶,則可以通過這個命令來更改系統時間。但是如果執行這個命令的用戶是系統普通用戶,那么這個命令則只能夠顯示時間,而無法更改時間。也就是說,默認情況下,只有系統管理員才可以更改系統時間,但是修改時間與查看時間用的是同一個命令。系統會自動去判斷當前用戶是否有修改時間的權利。
這就是Unix系統中一個很有用的安全特性。一方面類似的功能采用同一個命令,方便了系統管理員的操作與維護;另一方面系統會自動對命令的權限進行審查,以保障用戶只能夠利用命令進行與自己權限相符合的操作。從這里可以看出,Unix系統不僅在安全上有保障,其更加看重與安全和便利的一種結合。不會為了安全,而犧牲管理維護的便利性。
大家都知道,隨意更改系統的日期可能會給系統造成很大的負面影響,會使得一些作業計劃混亂。如系統當前可能有多個進程在后臺運行,此時系統會根據進程的優先性、管理員定義的作業計劃等等安排好了這些命令進程執行的時間進度表,規定在某個特定的時刻啟動這些作業或者進程。此時如果允許一個非管理員員用戶隨意更改系統時間,則系統中的作業可能會亂了套。如系統管理員為了系統的安全,設置了每天中午12點30分對系統中的重要文件進行備份。如果在中午12點的時候普通用戶修改了時間,把時間從12點改為了1點。那么此時系統就不會對系統重要文件進行備份。若不幸的是,在第二天上午由于一些意外導致系統硬盤損壞或者其他系統故障,那么由于前一天沒有正常備份,則損壞的文件將無法修復。可以隨意更改系統時間會導致很多難以預料的結果。
所以從這個date命令中就可以看出,Unix系統在安全設計上確實比其他操作系統略高一籌。同一個命令不同帳戶具有不同的操作功能,這讓Unix系統在安全與便利上達到了同一。
二、不提示具體的出錯信息。
Unix系統跟其他操作系統一樣,也是通過賬戶名與密碼來保證操作系統的基本安全性。但是,筆者認為Unix在這方面可能考慮的更全面一點。
Unix系統是一個多用戶操作系統。通常情況下,Unix系統只允許擁有帳號和密碼的用戶登錄。用戶的帳號列表往往有系統管理員來進行維護。系統管理員授予用戶使用計算機的權限,并為其計統帳號、口令等信息。當系統出現提示信息要求用戶登錄時,用戶只能夠輸入系統管理員所提供的正確用戶名與密碼之后才能夠登陸到操作系統。如當系統出現了logon提示符之后,就表示該系統終端允許某個用戶通過帳號與密碼進行登錄。在輸入賬戶名之后,按下回車鍵之后,就需要輸入密碼。系統會要求用戶輸入準確的密碼來進行身份驗證。萬一用戶輸入密碼錯誤后(用戶名準確),此時系統只會含糊的提示“login incorrect”(登陸不準確)。而不會提示用戶到底錯在哪里,是錯在密碼錯誤又或者是用戶名輸入錯誤。
這個含糊的提示,將會給非法攻擊者造成一定的障礙。由于非法攻擊者不知道到底是密碼錯誤又或者是賬戶名錯誤,這會增加對方攻擊的成本。或者說,這個提示對于攻擊者來說,或多或少有一些欺騙性。但是,這個措施卻可以很明顯的提高系統的安全性。或許有些員工會抱怨這么設計友好性太差。不僅會欺騙攻擊者,而且也會欺騙普通的用戶。不過從安全性來說,這個安全措施仍然是必要的。
另外值得一提的是,在用戶登錄時,Unix系統還跟其他操作系統一樣,提供了一種更高級別的安全措施。即當用戶登錄到Unix系統時,根據系統安全策略,可以讓用戶強制更改管理員所賦予的口令。此時用戶最好能夠立即更改默認口令,設置一個只有自己知道的口令(連管理員可能都不知道)。畢竟賬戶名或者口令若太多人知道的話,會給操作系統帶來一定的安全隱患。
當Unix系統在登陸時如果用戶名或者密碼驗證錯誤,系統不會提供詳細的出錯信息,從而不讓非法攻擊者找到出錯的原因,增加其攻擊的難度。其實這些類似的安全措施,在Unix系統中是比比皆是。在后續的文章中,筆者可能還會多次談到這個安全特性。從這個小小的安全設計中,就可以看出Unix操作系統的安全確實不是吹的。
三、輸出中不帶有相應的表頭。
利用命令who可以顯示當前登陸用戶的詳細信息,如用戶名、登陸的途徑、登陸時間等內容。在Linux系統中也有類似的功能。不過兩個系統有差異。
這個結果表示當前系統的登陸者有兩個,都為Oracle(操作系統允許同一個賬戶通過不同的渠道登陸到操作系統,這也是Unix系統的一個特性。在Linux操作系統中也可以實線類似的功能,但是在微軟操作系統中好像不行。后面會顯示用戶登錄的途徑、登陸系統的時間等等。但是讓很多Unix系統的初學者感到困擾的就是,在輸出結果中竟然沒有一個相應的表頭來說明各個列的含義。這一點可能讓人看起來覺得Unix操作系統不怎么友好,但是卻可以保障Unix系統的安全性。如一些Unix系統的高級安全策略都是基于這個特性所實現的。
另外,由于這個用戶信息具有非常重要的價值,故對此進行一些安全的防護就具有更大的現實意義。如系統管理員可以從who命令的輸出結果中抽取一部分數據供下一個命令使用。
一、同一個命令不同用戶不同的權限。
Date命令是Unix系統的一個常用命令,其顯示了系統的日期與時間。但是不同的用戶角色其具有不同的功能。如是系統管理員用戶,則可以通過這個命令來更改系統時間。但是如果執行這個命令的用戶是系統普通用戶,那么這個命令則只能夠顯示時間,而無法更改時間。也就是說,默認情況下,只有系統管理員才可以更改系統時間,但是修改時間與查看時間用的是同一個命令。系統會自動去判斷當前用戶是否有修改時間的權利。
這就是Unix系統中一個很有用的安全特性。一方面類似的功能采用同一個命令,方便了系統管理員的操作與維護;另一方面系統會自動對命令的權限進行審查,以保障用戶只能夠利用命令進行與自己權限相符合的操作。從這里可以看出,Unix系統不僅在安全上有保障,其更加看重與安全和便利的一種結合。不會為了安全,而犧牲管理維護的便利性。
大家都知道,隨意更改系統的日期可能會給系統造成很大的負面影響,會使得一些作業計劃混亂。如系統當前可能有多個進程在后臺運行,此時系統會根據進程的優先性、管理員定義的作業計劃等等安排好了這些命令進程執行的時間進度表,規定在某個特定的時刻啟動這些作業或者進程。此時如果允許一個非管理員員用戶隨意更改系統時間,則系統中的作業可能會亂了套。如系統管理員為了系統的安全,設置了每天中午12點30分對系統中的重要文件進行備份。如果在中午12點的時候普通用戶修改了時間,把時間從12點改為了1點。那么此時系統就不會對系統重要文件進行備份。若不幸的是,在第二天上午由于一些意外導致系統硬盤損壞或者其他系統故障,那么由于前一天沒有正常備份,則損壞的文件將無法修復。可以隨意更改系統時間會導致很多難以預料的結果。
所以從這個date命令中就可以看出,Unix系統在安全設計上確實比其他操作系統略高一籌。同一個命令不同帳戶具有不同的操作功能,這讓Unix系統在安全與便利上達到了同一。
二、不提示具體的出錯信息。
Unix系統跟其他操作系統一樣,也是通過賬戶名與密碼來保證操作系統的基本安全性。但是,筆者認為Unix在這方面可能考慮的更全面一點。
Unix系統是一個多用戶操作系統。通常情況下,Unix系統只允許擁有帳號和密碼的用戶登錄。用戶的帳號列表往往有系統管理員來進行維護。系統管理員授予用戶使用計算機的權限,并為其計統帳號、口令等信息。當系統出現提示信息要求用戶登錄時,用戶只能夠輸入系統管理員所提供的正確用戶名與密碼之后才能夠登陸到操作系統。如當系統出現了logon提示符之后,就表示該系統終端允許某個用戶通過帳號與密碼進行登錄。在輸入賬戶名之后,按下回車鍵之后,就需要輸入密碼。系統會要求用戶輸入準確的密碼來進行身份驗證。萬一用戶輸入密碼錯誤后(用戶名準確),此時系統只會含糊的提示“login incorrect”(登陸不準確)。而不會提示用戶到底錯在哪里,是錯在密碼錯誤又或者是用戶名輸入錯誤。
這個含糊的提示,將會給非法攻擊者造成一定的障礙。由于非法攻擊者不知道到底是密碼錯誤又或者是賬戶名錯誤,這會增加對方攻擊的成本。或者說,這個提示對于攻擊者來說,或多或少有一些欺騙性。但是,這個措施卻可以很明顯的提高系統的安全性。或許有些員工會抱怨這么設計友好性太差。不僅會欺騙攻擊者,而且也會欺騙普通的用戶。不過從安全性來說,這個安全措施仍然是必要的。
另外值得一提的是,在用戶登錄時,Unix系統還跟其他操作系統一樣,提供了一種更高級別的安全措施。即當用戶登錄到Unix系統時,根據系統安全策略,可以讓用戶強制更改管理員所賦予的口令。此時用戶最好能夠立即更改默認口令,設置一個只有自己知道的口令(連管理員可能都不知道)。畢竟賬戶名或者口令若太多人知道的話,會給操作系統帶來一定的安全隱患。
當Unix系統在登陸時如果用戶名或者密碼驗證錯誤,系統不會提供詳細的出錯信息,從而不讓非法攻擊者找到出錯的原因,增加其攻擊的難度。其實這些類似的安全措施,在Unix系統中是比比皆是。在后續的文章中,筆者可能還會多次談到這個安全特性。從這個小小的安全設計中,就可以看出Unix操作系統的安全確實不是吹的。
三、輸出中不帶有相應的表頭。
利用命令who可以顯示當前登陸用戶的詳細信息,如用戶名、登陸的途徑、登陸時間等內容。在Linux系統中也有類似的功能。不過兩個系統有差異。
這個結果表示當前系統的登陸者有兩個,都為Oracle(操作系統允許同一個賬戶通過不同的渠道登陸到操作系統,這也是Unix系統的一個特性。在Linux操作系統中也可以實線類似的功能,但是在微軟操作系統中好像不行。后面會顯示用戶登錄的途徑、登陸系統的時間等等。但是讓很多Unix系統的初學者感到困擾的就是,在輸出結果中竟然沒有一個相應的表頭來說明各個列的含義。這一點可能讓人看起來覺得Unix操作系統不怎么友好,但是卻可以保障Unix系統的安全性。如一些Unix系統的高級安全策略都是基于這個特性所實現的。
另外,由于這個用戶信息具有非常重要的價值,故對此進行一些安全的防護就具有更大的現實意義。如系統管理員可以從who命令的輸出結果中抽取一部分數據供下一個命令使用。
其實除了who命令之外,Unix系統類似的情況還有很多。正是這一個個的細節考慮,才保障了整個Unix系統的安全。
關鍵字:Unix、操作系統、安全性
新文章:
- CentOS7下圖形配置網絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統后丟失windows啟動項
- CentOS單網卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網打印機IP講解
- CentOS7使用hostapd實現無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網絡重啟出錯
- 解決Centos7雙系統后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統有什么不同呢
- Centos 6.6默認iptable規則詳解