trap命令的使用

2021-04-14 02:28:38 字數 3524 閱讀 3143

目前,unix系統在各行各業使用得相當廣泛,因此unix系統的安全性問題就至關重要。下面根據unix系統的特點介紹一下如何來加強系統安全管理。

設定較高的安全級

unix系統共有四種安全級別:high(高階)、improved(改進)、traditional(一般)、low(低階)。這四個級 別安全性由高到低。high級別安全性大於美國國家c2級標準,improved級別安全性接近於c2級。因此為保證系統具有較高的安全性,最好將 unix系統級別定為high級。

在安裝unix系統過程中,就有選項讓你選擇系統級別,可選1、2、3、4,1代表high,2代表improved,3代表traditional,4代表low。為了更好地了解級的差別,可從表1中對口令的預設安全引數進行比較。

表1  unix安全級別說明

引數說明

安 全 級

lowtraditional

improved

high

口令改變之間最小天數00

014口令期滿時間(天)

無限無限

4242

口令生存期(天)

無限無限

18291

使用者能否選用自己的口令是是

是否使用者能否運用口令生成程式是是

是是口令最大生成長度88

1010

檢查易見性否否

否有是否要求口令註冊否否

是是單使用者是否要求口令是是

是是從上可知,越是級別高,對引數的要求越高,安全性越好,但對使用者的要求也越高,限制也越多,使用者可根據實際情況進行設定。

如果以前設定的級別過高或較低,可用relax命令進行重新設定,也可用#sydmash→system→comfigure→security→relax進行設定。

加強使用者賬戶密碼的管理

超級使用者必須加密,而且要經常更換密碼,如發現密碼失密,須及時更換。其他使用者賬號也要求使用者加密,也要做到及時更換。

使用者賬號登入及密碼的管理,預設資訊放在/etc/default/passwd和/etc/default/login檔案中,系統通過 兩個檔案進行管理。在這兩個檔案中,系統管理員可以設定密碼的最大長度、最小長度、密碼的最長生存週數、最小生存週數、允許使用者連續登入失敗的次數,要求 口令註冊情況(是否要口令註冊)等。系統管理員可以對這些引數進行合理化配置,加強系統管理。

建立自啟動終端

盡量多建立自啟動終端,無需使用者登入啟動應用系統,這樣既方便使用者,又避免系統損壞的可能性。unix是乙個多使用者系統,一般使用者對系統的 使用是通過使用者註冊進去的,系統可設立多個賬戶,使用者通過賬號註冊進入系統,就有了刪除、修改作業系統和應用系統的程式或資料的可能性,不利於作業系統或 應用程式或資料的安全。

對於商業性、服務性的行業,有許多的終端是對外服務的,我們可以設定為自啟動的方式,不需使用者通過賬戶進行登入,就可進入應用系統。這樣避免作業系統或應用系統的程式或資料被破壞。

具體的方法是:修改/etc/inittab檔案,將相應終端號狀態由off改為respawn,這樣開機後自動執行相應的應用程式,終端就不需使用者登入,使用者也無法在login狀態下登入,保障了系統的安全性。

建立封閉的使用者系統

上面介紹建立自啟動終端的方法固然安全,但不利於系統資源的充分利用,如果使用者想在終端上執行其它應用程式就無法完成,我們可以採用另一種方法來達到目的,那就是建立不同的封閉使用者系統,也就是建立不同的封閉使用者賬號,自動執行不同的應用系統。

所謂封閉的使用者系統就是指使用者無法用作業系統命令(如ctrl-c或ctrl-backspace)進入系統的shell狀態。

建立封閉賬號的方法:修改相應賬號的.profile檔案,在.profile檔案中執行相應的應用程式,在.profile檔案的前面,再加上中斷遮蔽命令,命令格式為trap「」12315,在.profile檔案末尾再加上一條exit命令。

這樣系統執行結束就退回到login狀態,使用trap命令的目的就是防止使用者在使用過程中使用ctrl-c或ctrl-backspace命令中止系統程式的執行,退回到shell狀態。

為避免使用者能修改自己的.profile檔案,還需修改.profile檔案許可權,許可權為640,使用者屬性為root,使用者組為root,這樣封閉賬號就建立起來了。

撤消已不用的賬號

在使用系統的過程中,經常需要建立不同的賬號,有些賬號隨著情況的變化不再使用,這時最好將賬號進行撤消。

具體撤消的方法是,#sysadman→account→users→retire輸入要撤消的賬號名即可。

控制註冊終端時限

為保證系統的安全與完整,避免使用者在非工作時限內對應用系統進行非法操作,特設定工作時限。非工作時限指星期日、節假日或上班時間之外的時間。

具體的方法是修改相應的.profile檔案,在執行應用系統之前,先判斷當日是否是星期日或節假日,如果是星期日、節假日就無法註冊成 功,無法執行註冊系統。如果是正常工作日,還需檢驗當前時間是否處於工作時間,如不在工作時間範圍內也無法執行應用系統。如果遇到特殊情況,需要加班,則 需由超級使用者修改相應的.profile檔案,方可執行應用系統。

具體方法如下:

trap「」1 2 3 15

date〉dd

grep sun dd |awk 「」〉aa

if [-s aa] #檢查是否為星期日,如星期日則不可註冊

then

echo 「/n today is sunday,you can not login on!」

exit

fi tt='date「+h」 #如當前時間不在8:00-18:00之間,則不可註冊if [$tt -lt 8 -0 $tt -gt 18]

then

echo 「/n you must login in the working time!」

exit

fi banking -em -b4461 #執行應用系統程式

exit

控制註冊終端功能

unix系統是乙個多使用者的系統,可設有多個終端,終端可放不同的地方、不同的部門,為防止其它部門非法使用應用程式,可限定某些應用程式在限定的終端使用。

具體的方法是:

在相應賬號的.profile檔案中增加識別終端的語句。如:

trap「」123 15

case 'tty in /dev/tty21[a-d] #如終端非/dev/tty21[a-d]則無法執行

clear

echo「非法終端!」

exit

esac

banking -em -b4461 #執行應用程式

exit

鎖定暫不用終端

有些終端暫不需使用,可用命令進行鎖定,避免其他人在此終端上使用。

鎖定的方法是#sysadmsh→accounts→terminal→lock→輸入要鎖定的終端的終端號。

如果解鎖,方法是#sysadmsh→accounts→terminal→unlock→輸入要解鎖的終端號。

Trap命令使用說明

trap命令用於指定在接收到訊號後將要採取的行動。trap命令的一種常見用途是在指令碼程式被中斷時完成清理工作。可以使用trap l來檢視具體訊號列表。trap捕捉到訊號之後,可以有三種響應方式 trap commands signal listtrap signal listtrap signal...

shell命令trap用法

原文出處 一.trap捕捉到訊號之後,可以有三種反應方式 1 執行一段程式來處理這一訊號 2 接受訊號的預設操作 3 忽視這一訊號 二.trap對上面三種方式提供了三種基本形式 第一種形式的trap命令在shell接收到signal list清單中數值相同的訊號時,將執行雙 引號中的命令串。trap...

shell 使用命令trap來捕捉訊號

一.trap捕捉到訊號之後,可以有三種反應方式 1 執行一段程式來處理這一訊號 2 接受訊號的預設操作 3 忽視這一訊號 二.trap對上面三種方式提供了三種基本形式 第一種形式的trap命令在shell接收到signal list清單中數值相同的訊號時,將執行雙 引號中的命令串。trap comm...