歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux綜合 >> Linux資訊 >> 更多Linux

Sybase ASE安全“著陸”Linux

  在各種操作系統中,這兩年的流行色是Linux。越來越多的主流數據庫廠商將它們的產品移植到Linux操作系統平台。現在Linux平台上的數據庫產品有Oracle for Linux、Sybase ASE for Linux、Informix for Linux等,它們都是自由軟件。在這幾種產品中,Sybase ASE是一個非常不錯的選擇。它緊湊的程序分發包裡包含了全部的文檔、數據庫備份、監視等工具,同時它對系統的要求不高。它的安裝、配置過程與其它產品相比也顯得簡單易行。       數據庫應用采用客戶端/服務器(C/S)架構,服務器端在某一個端口監聽網絡連接請求。客戶端申請連接,輸入合法的用戶名和相應的口令,進入服務器,然後運行需要的命令。這樣,在數據庫用戶的配置管理方面如果出現安全漏洞,勢必會給系統和數據帶來非常大的威脅。ASE for Linux在正常安裝完成後,數據庫超級用戶的賬號沒有設置口令。這樣,互聯網上每一個知道服務器端口號的用戶或者本機上的所有可登錄用戶,都可以以超級用戶身份對數據庫隨意操作。所以管理員在將數據庫連上網絡之前,一定要設置好包括超級用戶口令和其它賬號權限在內的安全防線,否則,上網的數據庫將是一個“不設防城市”!       接下來介紹一下ASE for Linux的安裝過程和配置,並分析缺省配置下的安全問題以及相應的安全加強措施。       ASE for Linux的應用       首先需要下載ASE for Linux軟件包,互聯網上可以比較容易找到RPM格式的二進制發行包,包括sybase-ase-11.0.3.3-1.i386.rpm(主程序包)、sybase- doc-11.0.3.3-1.i386.rpm(文件包)。RPM是Redhat公司的軟件包管理程序,使用它可以非常方便地安裝、卸載程序包,並保持它們之間的依賴關系。       然後,以超級用戶的身份鍵入命令:       #rpm -i sybase-ase-11.0.3.3-1.i386.rpm       之後按照提示操作。我們可以sybase登錄繼續配置,也可以使用 #su - s ybase 改變身份來繼續對sybase進行安裝。屏幕上將會看到:       1.Release Directory:/opt/sybase       2.Edit / View Interfaces File       3.Configure a Server prodUCt       4.Configure an Open Client/Server product       Ctrl-a Accept and Continue, Ctrl-x Exit Screen, ? Help.       Enter the number of your choice and press return:       選擇3來配置服務器,在該選項中將會一同配置服務器監聽端口。接下來可以配置一個新的SQL服務器。配置備份服務器可以在SQL服務器配置完成後再來。由於是第一次安裝,所以選擇配置新的服務器。       下面的屏幕提示要求選擇服務器的名字,缺省為Sybase。這與Sybase的交互式訪問工具isql的缺省服務器名字是一致的。       ADD NEW SQL SERVER       SQL Server name:SYBASE       接下來的配置關系到了數據庫的具體細節,包括端口號、設備、語言、字符集等。       按照提示繼續作下去,依次分別是配置SYBASE系統進程數據庫、錯誤日志、缺省備份服務器、字符集、數據庫排序、激活審計等。其中的缺省備份服務器和激活審計配置對於數據庫安全較為重要。備份服務器在管理員希望對數據庫進行備份時需要。       安全加強措施       按照信任計算機系統評估標准DoD52.00.28-STD,也就是通常所說的桔皮書,Sybase ASE的設計標准為C2級,它提供了四種安全機制,分別是訪問控制、認證控制、角色劃分、數據庫審計。具體說,Sybase數據庫系統設定了三種主要角色:系統管理員(sa_role),系統安全員(sso_role),系統操作員(oper_role)。數據庫審計系統可以對系統的登錄、退出、數據庫啟動、遠程過程調用、角色的變化、對各種對象的訪問等操作提供記錄和審查。       下面總結以下三種角色的各自主要權利和任務:       * sa_role:管理磁盤使用,改變系統各種運行參數,診斷系統出現的各種問題,備份和恢復數據庫,對其他用戶賦予或者取消sa-role,創建用戶數據庫並為它們授予合適的屬主,建立用戶組,等等。       * sso-role:創建登錄賬號並初始化口令,更改其他所有賬號的口令,對其他用戶賦予或者取消sso-role以及oper-role,設定口令時限以及管理審計系統等。       * oper-role:備份和恢復各種數據庫。       Sybase ASE在安裝完成時在系統中創建了用戶sa,它同時具有sa-role和ss o-role兩種角色。從上面的權限說明中,大家可以看到此時的用戶“sa”在服務器中具有無限的權利,相當於一般Unix系統的root,一個沒有口令的root! 這樣,任何蓄意的聯網用戶都可以完全控制該SQL服務器。為此,強烈建議管理員在完成下面的安全配置之前切勿將服務器接入網絡!       首先,利用Sybase提供的交互式訪問工具isql連接服務器。鍵入以下命令:       $/opt/sybase/bin/isql -Usa -P -Smysybase       表示以用戶sa、空口令連接服務器mysybase。更改sa的口令。       〉sp_passWord NULL,"NewPassWd"       〉go       將原來的空口令(NULL)改為當前的“NewPassWd"。這裡的口令最少為6個字符長度,可以由任何可打印字符、字母、數字等組成。       角色的劃分可以說是Sybase數據庫相對於普通Unix系統在安全體制方面的進步。大家知道,擁有無限權利的超級用戶一方面是系統的保護者,但是更多的時候是給系統的安全帶來了巨大的安全威脅。簡單說,超級用戶一個低級的誤操作就可能毀掉整個服務器。從攻擊的角度講,攻擊者只要獲得了超級用戶的身份就表明他已經徹底攻克了該系統。而對於經過特權分割安全加固的系統來說,攻擊者必須將若干個特權用戶全部破解,才能夠完全控制該系統。可以說超級權利用戶的存在是區分C級和B級安全系統的一個重要標志。       建議服務器管理員在設置sa賬號的口令以後,通過創建新用戶和分別sa的角色並關閉sa進一步加強服務器的安全。Sybase提供了幾個相應的命令sp_addlogi n, sp_role等來完成上述操作。       〉sp_addlogin sa_user,“Sa,PassW”       〉sp_addlogin sso_user,“Sso,Pass”       〉sp_role“grant”,sa_role,sa_user       〉sp_role “grant”,sso_role,sso_user       〉sp_locklogin sa,“lock”       上述命令創建了兩個用戶sa_user、sso_user,並分別設置了口令“Sa,Pass W”、“Sso,Pass”和角色sa_role、sso_role,然後關閉了賬號sa。




Copyright © Linux教程網 All Rights Reserved