數(shù)據(jù)庫安全問題很多人都知道,但也有一些網(wǎng)站沒有對數(shù)據(jù)庫做基本安全防護的工作,導(dǎo)致數(shù)據(jù)庫被刪除、甚至數(shù)據(jù)被篡改,更嚴重的是用戶信息被黑客進行販賣,這樣的后果不堪設(shè)想,那關(guān)于數(shù)據(jù)庫安全該如何設(shè)置,怎樣才能防止數(shù)據(jù)庫被攻擊的時候做好防護?
首先分析一下數(shù)據(jù)庫常見的五種攻擊方式
1、數(shù)據(jù)庫弱口令,2、sql注入,3、數(shù)據(jù)庫管理員權(quán)限,4、數(shù)據(jù)庫的3306端口,5、數(shù)據(jù)庫版本漏洞等;
數(shù)據(jù)庫怎么防范呢?
數(shù)據(jù)庫開啟log日志記錄功能,每一個對數(shù)據(jù)庫的請求,讀寫,都要記錄下來,執(zhí)行了哪些sql語句,查詢,增加,刪除等等,這樣我們就可以看的很明白,如何開啟mysql日志功能呢?連接數(shù)據(jù)庫登陸root管理員賬戶,然后執(zhí)行 :SET GLOBAL general_log = 'On';這一句命令,這是開啟,接下來就是存在log日志的文件地址,再執(zhí)行SET GLOBAL general_log_file = '/mysqlrizhi/safe.log'; 當你在網(wǎng)站進行查詢的時候就會記錄你的sql執(zhí)行語句
服務(wù)器的管理員密碼具備一定復(fù)雜度,建議使用字母、數(shù)字、字符組合的密碼,可以進行安全限制,mysql不允許任意遠程端連接,對其指定IP放行,不對外公開訪問,這樣大大的杜絕了數(shù)據(jù)庫的攻擊與密碼的猜解。
無論是數(shù)據(jù)庫的默認端口3306或者是sqlserver1433端口都要做端口的安全策略,限制對外開放,或者使用phpmyadmin對數(shù)據(jù)庫進行管理等操作,網(wǎng)站的數(shù)據(jù)庫調(diào)用賬戶使用普通權(quán)限賬戶,只有讀寫,增加刪除等操作,沒有管理員權(quán)限,時刻對數(shù)據(jù)庫進行備份,設(shè)置數(shù)據(jù)庫備份計劃,每天,每小時都可以設(shè)置備份到指定的目錄,這樣假設(shè)你的數(shù)據(jù)庫被黑了,還可以通過備份的數(shù)據(jù)來恢復(fù)
對數(shù)據(jù)庫版本出現(xiàn)的漏洞針對數(shù)據(jù)庫廠商打上補丁,防止其版本漏洞被黑客利用,做好系統(tǒng)安全工作,經(jīng)常查看數(shù)據(jù)庫操作日志記錄,不要以為麻煩就不處理,等出現(xiàn)紕漏悔之晚矣。