欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

mysql服務(wù)器怎么安全,服務(wù)器操作mysql

web服務(wù)器安全設(shè)置

Web服務(wù)器攻擊常利用Web服務(wù)器軟件和配置中的漏洞,web服務(wù)器安全也是我們現(xiàn)在很多人關(guān)注的一點(diǎn),那么你知道web服務(wù)器安全設(shè)置嗎?下面是我整理的一些關(guān)于web服務(wù)器安全設(shè)置的相關(guān)資料,供你參考。

創(chuàng)新互聯(lián)是一家集網(wǎng)站建設(shè),黃山區(qū)企業(yè)網(wǎng)站建設(shè),黃山區(qū)品牌網(wǎng)站建設(shè),網(wǎng)站定制,黃山區(qū)網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,黃山區(qū)網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。

web服務(wù)器安全設(shè)置一、IIS的相關(guān)設(shè)置

刪除默認(rèn)建立的站點(diǎn)的虛擬目錄,停止默認(rèn)web站點(diǎn),刪除對(duì)應(yīng)的文件目錄c:inetpub,配置所有站點(diǎn)的公共設(shè)置,設(shè)置好相關(guān)的連接數(shù)限制, 帶寬設(shè)置以及性能設(shè)置等其他設(shè)置。配置應(yīng)用程序映射,刪除所有不必要的應(yīng)用程序擴(kuò)展,只保留asp,php,cgi,pl,aspx應(yīng)用程序擴(kuò)展。對(duì)于php和cgi,推薦使用isapi方式解析,用exe解析對(duì)安全和性能有所影響。用戶程序調(diào)試設(shè)置發(fā)送文本錯(cuò)誤信息給客戶。

對(duì)于數(shù)據(jù)庫(kù),盡量采用mdb后綴,不需要更改為asp,可在IIS中設(shè)置一個(gè)mdb的擴(kuò)展映射,將這個(gè)映射使用一個(gè)無(wú)關(guān)的dll文件如C:WINNTsystem32inetsrvssinc.dll來防止數(shù)據(jù)庫(kù)被下載。設(shè)置IIS的日志保存目錄,調(diào)整日志記錄信息。設(shè)置為發(fā)送文本錯(cuò)誤信息。修改403錯(cuò)誤頁(yè)面,將其轉(zhuǎn)向到其他頁(yè),可防止一些掃描器的探測(cè)。另外為隱藏系統(tǒng)信息,防止telnet到80端口所泄露的系統(tǒng)版本信息可修改IIS的banner信息,可以使用winhex手工修改或者使用相關(guān)軟件如banneredit修改。

對(duì)于用戶站點(diǎn)所在的目錄,在此說明一下,用戶的FTP根目錄下對(duì)應(yīng)三個(gè)文件佳,wwwroot,database,logfiles,分別存放站點(diǎn)文件,數(shù)據(jù)庫(kù)備份和該站點(diǎn)的日志。如果一旦發(fā)生入侵事件可對(duì)該用戶站點(diǎn)所在目錄設(shè)置具體的權(quán)限,圖片所在的目錄只給予列目錄的權(quán)限,程序所在目錄如果不需要生成文件(如生成html的程序)不給予寫入權(quán)限。因?yàn)槭翘摂M主機(jī)平常對(duì)腳本安全沒辦法做到細(xì)致入微的地步。

方法

用戶從腳本提升權(quán)限:

web服務(wù)器安全設(shè)置二、ASP的安全設(shè)置

設(shè)置過權(quán)限和服務(wù)之后,防范asp木馬還需要做以下工作,在cmd窗口運(yùn)行以下命令:

regsvr32/u C:\WINNT\System32\wshom.ocx

del C:\WINNT\System32\wshom.ocx

regsvr32/u C:\WINNT\system32\shell32.dll

del C:\WINNT\system32\shell32.dll

即可將WScript.Shell, Shell.application, WScript.Network組件卸載,可有效防止asp木馬通過wscript或shell.application執(zhí)行命令以及使用木馬查看一些系統(tǒng)敏感信息。另法:可取消以上文件的users用戶的權(quán)限,重新啟動(dòng)IIS即可生效。但不推薦該方法。

另外,對(duì)于FSO由于用戶程序需要使用,服務(wù)器上可以不注銷掉該組件,這里只提一下FSO的防范,但并不需要在自動(dòng)開通空間的虛擬商服務(wù)器上使用,只適合于手工開通的站點(diǎn)。可以針對(duì)需要FSO和不需要FSO的站點(diǎn)設(shè)置兩個(gè)組,對(duì)于需要FSO的用戶組給予c:winntsystem32scrrun.dll文件的執(zhí)行權(quán)限,不需要的不給權(quán)限。重新啟動(dòng)服務(wù)器即可生效。

對(duì)于這樣的設(shè)置結(jié)合上面的權(quán)限設(shè)置,你會(huì)發(fā)現(xiàn)海陽(yáng)木馬已經(jīng)在這里失去了作用!

web服務(wù)器安全設(shè)置三、PHP的安全設(shè)置

默認(rèn)安裝的php需要有以下幾個(gè)注意的問題:

C:\winnt\php.ini只給予users讀權(quán)限即可。在php.ini里需要做如下設(shè)置:

Safe_mode=on

register_globals = Off

allow_url_fopen = Off

display_errors = Off

magic_quotes_gpc = On [默認(rèn)是on,但需檢查一遍]

open_basedir =web目錄

disable_functions =passthru,exec,shell_exec,system,phpinfo,get_cfg_var,popen,chmod

默認(rèn)設(shè)置com.allow_dcom = true修改為false[修改前要取消掉前面的;]

web服務(wù)器安全設(shè)置四、MySQL安全設(shè)置

如果服務(wù)器上啟用MySQL數(shù)據(jù)庫(kù),MySQL數(shù)據(jù)庫(kù)需要注意的安全設(shè)置為:

刪除mysql中的所有默認(rèn)用戶,只保留本地root帳戶,為root用戶加上一個(gè)復(fù)雜的密碼。賦予普通用戶updatedeletealertcreatedrop權(quán)限的時(shí)候,并限定到特定的數(shù)據(jù)庫(kù),尤其要避免普通客戶擁有對(duì)mysql數(shù)據(jù)庫(kù)操作的權(quán)限。檢查mysql.user表,取消不必要用戶的shutdown_priv,reload_priv,process_priv和File_priv權(quán)限,這些權(quán)限可能泄漏更多的服務(wù)器信息包括非mysql的 其它 信息出去。可以為mysql設(shè)置一個(gè)啟動(dòng)用戶,該用戶只對(duì)mysql目錄有權(quán)限。設(shè)置安裝目錄的data數(shù)據(jù)庫(kù)的權(quán)限(此目錄存放了mysql數(shù)據(jù)庫(kù)的數(shù)據(jù)信息)。對(duì)于mysql安裝目錄給users加上讀取、列目錄和執(zhí)行權(quán)限。

Serv-u安全問題:

安裝程序盡量采用最新版本,避免采用默認(rèn)安裝目錄,設(shè)置好serv-u目錄所在的權(quán)限,設(shè)置一個(gè)復(fù)雜的管理員密碼。修改serv-u的banner信息,設(shè)置被動(dòng)模式端口范圍(4001—4003)在本地服務(wù)器中設(shè)置中做好相關(guān)安全設(shè)置:包括檢查匿名密碼,禁用反超時(shí)調(diào)度,攔截“FTP bounce”攻擊和FXP,對(duì)于在30秒內(nèi)連接超過3次的用戶攔截10分鐘。域中的設(shè)置為:要求復(fù)雜密碼,目錄只使用小寫字母,高級(jí)中設(shè)置取消允許使用MDTM命令更改文件的日期。

更改serv-u的啟動(dòng)用戶:在系統(tǒng)中新建一個(gè)用戶,設(shè)置一個(gè)復(fù)雜點(diǎn)的密碼,不屬于任何組。將servu的安裝目錄給予該用戶完全控制權(quán)限。建立一個(gè)FTP根目錄,需要給予這個(gè)用戶該目錄完全控制權(quán)限,因?yàn)樗械膄tp用戶上傳,刪除,更改文件都是繼承了該用戶的權(quán)限,否則無(wú)法操 作文 件。另外需要給該目錄以上的上級(jí)目錄給該用戶的讀取權(quán)限,否則會(huì)在連接的時(shí)候出現(xiàn)530 Not logged in, home directory does not exist。比如在測(cè)試的時(shí)候ftp根目錄為d:soft,必須給d盤該用戶的讀取權(quán)限,為了安全取消d盤其他文件夾的繼承權(quán)限。而一般的使用默認(rèn)的system啟動(dòng)就沒有這些問題,因?yàn)閟ystem一般都擁有這些權(quán)限的。

web服務(wù)器安全設(shè)置五、數(shù)據(jù)庫(kù)服務(wù)器的安全設(shè)置

對(duì)于專用的MSSQL數(shù)據(jù)庫(kù)服務(wù)器,按照上文所講的設(shè)置TCP/IP篩選和IP策略,對(duì)外只開放1433和5631端口。對(duì)于MSSQL首先需要為sa設(shè)置一個(gè)強(qiáng)壯的密碼,使用混合身份驗(yàn)證,加強(qiáng)數(shù)據(jù)庫(kù)日志的記錄,審核數(shù)據(jù)庫(kù)登陸事件的”成功和失敗”.刪除一些不需要的和危險(xiǎn)的OLE自動(dòng)存儲(chǔ)過程(會(huì)造成 企業(yè)管理 器中部分功能不能使用),這些過程包括如下:

Sp_OAcreate Sp_OADestroy Sp_OAGetErrorInfo Sp_OAGetProperty

Sp_OAMethod Sp_OASetProperty Sp_OAStop

去掉不需要的注冊(cè)表訪問過程,包括有:

Xp_regaddmultistring Xp_regdeletekey Xp_regdeletevalue

Xp_regenumvalues Xp_regread Xp_regremovemultistring

Xp_regwrite

去掉其他系統(tǒng)存儲(chǔ)過程,如果認(rèn)為還有威脅,當(dāng)然要小心drop這些過程,可以在測(cè)試機(jī)器上測(cè)試,保證正常的系統(tǒng)能完成工作,這些過程包括:

xp_cmdshell xp_dirtree xp_dropwebtask sp_addsrvrolemember

xp_makewebtask xp_runwebtask xp_subdirs sp_addlogin

sp_addextendedproc

在實(shí)例屬性中選擇TCP/IP協(xié)議的屬性。選擇隱藏 SQL Server 實(shí)例可防止對(duì)1434端口的探測(cè),可修改默認(rèn)使用的1433端口。除去數(shù)據(jù)庫(kù)的guest賬戶把未經(jīng)認(rèn)可的使用者據(jù)之在外。 例外情況是master和 tempdb 數(shù)據(jù)庫(kù),因?yàn)閷?duì)他們guest帳戶是必需的。另外注意設(shè)置好各個(gè)數(shù)據(jù)庫(kù)用戶的權(quán)限,對(duì)于這些用戶只給予所在數(shù)據(jù)庫(kù)的一些權(quán)限。在程序中不要用sa用戶去連接任何數(shù)據(jù)庫(kù)。網(wǎng)絡(luò)上有建議大家使用協(xié)議加密的,千萬(wàn)不要這么做,否則你只能重裝MSSQL了。

如何做好MySQL安全策略

摘至網(wǎng)頁(yè)鏈接

常見Mysql配置文件:linux系統(tǒng)下是my.conf,windows環(huán)境下是my.ini;

數(shù)據(jù)庫(kù)整體安全需求:機(jī)密性、完整性、可用性;

下面以mysql 5.7版本為例,介紹mysql常見的安全策略、配置、加固方式等等,有些策略可能只針對(duì)Linux操作系統(tǒng),更多策略可以參考CIS Mysql Benchmark相關(guān)文檔:

1、操作系統(tǒng)級(jí)別安全配置

1.1不要將數(shù)據(jù)庫(kù)放在系統(tǒng)分區(qū)

Windows系統(tǒng):直接檢查是否將數(shù)據(jù)庫(kù)放置在C盤。

Linux系統(tǒng):

在終端連接上mysql數(shù)據(jù)庫(kù),執(zhí)行如下命令:

show variables where variable_name = 'datadir';

然后返回shell命令行:

df -h datadir

其中datadir是上一條命令的返回值。

上述命令的返回值不應(yīng)是/、/var、/usr

1.2使用專用的最小權(quán)限賬號(hào)運(yùn)行mysql數(shù)據(jù)庫(kù)進(jìn)程

Windows系統(tǒng):直接打開任務(wù)管理器,查看運(yùn)行mysql進(jìn)程的操作系統(tǒng)賬號(hào),不能為administrator賬號(hào)。

Linux系統(tǒng):

Shell命令行運(yùn)行如下命令:

ps -ef | grep mysql

查看mysql服務(wù)的運(yùn)行賬號(hào)是否為root或其他高權(quán)限賬號(hào),如果是的,則需要?jiǎng)?chuàng)建一個(gè)非管理員專用賬號(hào)來運(yùn)行mysql服務(wù)。

1.3禁止使用mysql命令行歷史記錄

Linux系統(tǒng):

執(zhí)行如下命令:

find / -name ".mysql_history"

查看是否存在mysql的歷史命令記錄文件,如果存在,則需要進(jìn)行如下加固:

(1)刪除.mysql_history文件;

(2)設(shè)置環(huán)境變量MYSQL_HISTFILE為/dev/null,并添加到shell的初始化腳本中,創(chuàng)建mysql_history到/dev/null的鏈接:

ln -s /dev/null $HOME/.mysql_history

1.4?確保MYSQL_PWD環(huán)境變量未設(shè)置敏感信息

Windows系統(tǒng)下進(jìn)入cmd命令行,使用如下命令:

Set

查看是否設(shè)置了環(huán)境變量MYSQL_PWD。

Linux系統(tǒng)下使用如下命令:

grep MYSQL_PWD /proc/*/environ

查看MYSQL_PWD環(huán)境變量是否設(shè)置了敏感信息。

確認(rèn)那個(gè)配置文件或腳本設(shè)置了MYSQL_PWD環(huán)境變量。

2、安裝

2.1使用數(shù)據(jù)庫(kù)專用服務(wù)器

使用專用的服務(wù)器安裝mysql服務(wù)可以減少mysql服務(wù)的攻擊面,盡量卸載或刪除操作系統(tǒng)上的不必要的應(yīng)用或服務(wù),減少其他應(yīng)用的安裝可能給mysql的運(yùn)行帶來的安全風(fēng)險(xiǎn)。

2.2?不要復(fù)用數(shù)據(jù)庫(kù)賬號(hào)

運(yùn)行mysql服務(wù)的操作系統(tǒng)賬號(hào)不要用來運(yùn)行其他應(yīng)用或服務(wù),這樣可以避免其他應(yīng)用或服務(wù)器被攻擊給mysql服務(wù)帶來影響。

2.3?歷史命令行密碼設(shè)置為不可見

使用如下命令:

mysql -u admin -p password

連接mysql數(shù)據(jù)庫(kù)服務(wù),退出后查看歷史命令,確認(rèn)password是否為明文。

建議使用如下命令方式登錄:

(1)先輸入mysql -u admin -p

(2)根據(jù)命令行提示輸入密碼;

而不要在一整條命令中輸入密碼。

另外要控制mysql配置文件訪問權(quán)限。

3、文件權(quán)限控制

3.1?控制數(shù)據(jù)目錄的訪問權(quán)限

數(shù)據(jù)目錄是mysql數(shù)據(jù)庫(kù)存放的位置,在mysql命令行界面下執(zhí)行如下命令:

show variables where variable_name = 'datadir';

在終端命令行下執(zhí)行如下命令:

ls -l datadir/.. | egrep "^d[r|w|x]{3}------\s*.\s*mysql\s*mysql\s*\d*.*mysql"

其中datadir是第一條命令的執(zhí)行結(jié)果

如果存在問題,linux環(huán)境下在終端執(zhí)行如下命令進(jìn)行加固:

chmod 700 datadir

chown mysql:mysql datadir

3.2?控制二進(jìn)制日志文件的權(quán)限

mysql的運(yùn)行會(huì)產(chǎn)生很多日志,例如二進(jìn)制日志、錯(cuò)誤日志、慢查詢?nèi)罩镜鹊龋琈ysql命令行下執(zhí)行如下命令:

show variables like 'log_bin_basename';

在終端命令行執(zhí)行如下命令:

ls log_bin_basename.*

對(duì)于發(fā)現(xiàn)的每一個(gè)文件,執(zhí)行如下命令:

ls -l log_bin_basename.nnnnn | egrep "^-[r|w]{2}-[r|w]{2}----\s*.*$"

根據(jù)輸出確認(rèn)日志文件的權(quán)限設(shè)置是否存在問題。

對(duì)于每個(gè)日志文件,修改其權(quán)限和屬組如下:

chmod 660 log file

chown mysql:mysql log file

3.3?控制錯(cuò)誤日志文件的權(quán)限

Mysql命令行下執(zhí)行如下命令:

show variables like 'log_error';

在終端命令行執(zhí)行如下命令:

ls log_error.*

對(duì)于發(fā)現(xiàn)的每一個(gè)文件,執(zhí)行如下命令:

ls -l log_error | egrep "^-[r|w]{2}-[r|w]{2}----\s*.*$"

根據(jù)輸出確認(rèn)日志文件的權(quán)限設(shè)置是否存在問題。

對(duì)于每個(gè)日志文件,修改其權(quán)限和屬組如下:

chmod 660 log file

chown mysql:mysql log file

3.4控制慢查詢?nèi)罩疚募臋?quán)限

Mysql命令行下執(zhí)行如下命令:

show variables like 'slow_query_log_file';

在終端命令行執(zhí)行如下命令:

ls slow_query_log_file.*

對(duì)于發(fā)現(xiàn)的每一個(gè)文件,執(zhí)行如下命令:

ls -l slow_query_log_file | egrep "^-[r|w]{2}-[r|w]{2}----\s*.*$"

根據(jù)輸出確認(rèn)日志文件的權(quán)限設(shè)置是否存在問題。

對(duì)于每個(gè)日志文件,修改其權(quán)限和屬組如下:

chmod 660 log file

chown mysql:mysql log file

3.5控制通用日志文件的權(quán)限

Mysql命令行下執(zhí)行如下命令:

show variables like 'general_log_file';

在終端命令行執(zhí)行如下命令:

ls general_log_file.*

對(duì)于發(fā)現(xiàn)的每一個(gè)文件,執(zhí)行如下命令:

ls -l general_log_file | egrep "^-[r|w]{2}-[r|w]{2}----\s*.*$"

根據(jù)輸出確認(rèn)日志文件的權(quán)限設(shè)置是否存在問題。

對(duì)于每個(gè)日志文件,修改其權(quán)限和屬組如下:

chmod 660 log file

chown mysql:mysql log file

3.6控制審計(jì)日志文件的權(quán)限

Mysql命令行下執(zhí)行如下命令:

show global variables where variable_name = ?'audit_log_file';

在終端執(zhí)行如下命令:

ls -l audit_log_file | egrep "^-rw[-x]rw[-x][-r][-w][-x][ \t]*[0-9][ \t]*mysql[

\t]*mysql.*$"

根據(jù)輸出確認(rèn)日志文件的權(quán)限設(shè)置是否存在問題。

對(duì)于每個(gè)日志文件,修改其權(quán)限和屬組如下:

chmod 660 audit_log_file

chown mysql:mysql audit_log_file

4、通用安全

4.1安裝最新的補(bǔ)丁

在mysql命令行下查詢MySQL的版本:

SHOW VARIABLES WHERE Variable_name LIKE "version";

確認(rèn)是否由需要安裝的補(bǔ)丁包,如果有請(qǐng)安裝。

4.2?刪除test數(shù)據(jù)庫(kù)

Mysql數(shù)據(jù)庫(kù)默認(rèn)安裝好后,存在一個(gè)名為test的數(shù)據(jù)庫(kù),如果存在,請(qǐng)執(zhí)行如下命令刪除:

Drop database “test”

4.3?確保讀取本地文件的參數(shù)設(shè)置為失效

Mysql命令行下,使用如下命令:

SHOW VARIABLES WHERE Variable_name = 'local_infile';

查看結(jié)果是否為OFF。

如果該命令為ON,則數(shù)據(jù)庫(kù)用戶可以通過LOAD DATA INFILE 或者?SELECT local_file?讀取到數(shù)據(jù)庫(kù)所在操作系統(tǒng)本地的文件,在這種情況下,需要在mysql配置文件中新增一行:

Local-infile=0;

然后重啟數(shù)據(jù)庫(kù)服務(wù)。

5、權(quán)限配置

5.1控制可以訪問所有數(shù)據(jù)庫(kù)的賬號(hào)

Mysql數(shù)據(jù)庫(kù)下的user表和db表中存放著可以授予數(shù)據(jù)庫(kù)用戶的權(quán)限,確保只有管理員賬號(hào)才能訪問所有數(shù)據(jù)庫(kù)。可以訪問mysql數(shù)據(jù)庫(kù)的用戶或許可以查看密碼哈希值、修改用戶權(quán)限等等。

使用如下sql語(yǔ)句:

SELECT user, host?FROM mysql.user

WHERE (Select_priv = 'Y')?OR (Insert_priv = 'Y')?OR (Update_priv = 'Y')

OR (Delete_priv = 'Y')??OR (Create_priv = 'Y')??OR (Drop_priv = 'Y');

SELECT user, host?FROM mysql.db?WHERE db = 'mysql'

AND ((Select_priv = 'Y')?OR (Insert_priv = 'Y')?OR (Update_priv = 'Y')

OR (Delete_priv = 'Y')?OR (Create_priv = 'Y')?OR (Drop_priv = 'Y'));

確保返回結(jié)果只能是數(shù)據(jù)庫(kù)管理員賬號(hào)。

5.2限制非管理員用戶的權(quán)限

Mysql.user表中的權(quán)限列有:

file_priv:表示是否允許用戶讀取數(shù)據(jù)庫(kù)所在主機(jī)的本地文件;

Process:表示是否允許用戶查詢所有用戶的命令執(zhí)行信息;

Super_priv:表示用戶是否有設(shè)置全局變量、管理員調(diào)試等高級(jí)別權(quán)限;

Shutdown_priv:表示用戶是否可以關(guān)閉數(shù)據(jù)庫(kù);

Create_user_priv:表示用戶是否可以創(chuàng)建或刪除其他用戶;

Grant_priv:表示用戶是否可以修改其他用戶的權(quán)限;

應(yīng)確保只有數(shù)據(jù)庫(kù)管理員才有上述權(quán)限,使用如下sql語(yǔ)句查看擁有各個(gè)權(quán)限的數(shù)據(jù)庫(kù)賬號(hào):

select user, host from mysql.user where File_priv = 'Y';

select user, host from mysql.user where Process_priv = 'Y';

select user, host from mysql.user where Process_priv = 'Y';

SELECT user, host FROM mysql.user WHERE Shutdown_priv = 'Y';

SELECT user, host FROM mysql.user WHERE Create_user_priv = 'Y';

SELECT user, host FROM mysql.user WHERE Grant_priv = 'Y';

SELECT user, host FROM mysql.db WHERE Grant_priv = 'Y';

確保查詢結(jié)果中不存在非管理員用戶。

如果存在非管理員用戶,使用如下命令進(jìn)行權(quán)限回收:

REVOKE FILE ON *.* FROM 'user';

REVOKE PROCESS ON *.* FROM 'user';

REVOKE SUPER ON *.* FROM 'user';

REVOKE SHUTDOWN ON *.* FROM 'user';

REVOKE CREATE USER ON *.* FROM 'user';

REVOKE GRANT OPTION ON *.* FROM user;

其中user為上述查詢到的非管理員用戶。

5.3合理控制DML/DDL操作授權(quán)

DML/DDL語(yǔ)句包括創(chuàng)建或修改數(shù)據(jù)庫(kù)結(jié)構(gòu)的權(quán)限,例如insert、update、delete、create、drop和alter語(yǔ)句,在任何數(shù)據(jù)庫(kù)中都要控制用戶的此類權(quán)限,確保只授權(quán)給有業(yè)務(wù)需求的非管理員用戶。Mysql命令行下執(zhí)行如下命令:

SELECT User,Host,Db?FROM mysql.db?WHERE Select_priv='Y'

OR Insert_priv='Y'?OR Update_priv='Y'?OR Delete_priv='Y'?OR Create_priv='Y'

OR Drop_priv='Y'?OR Alter_priv='Y';

上述查詢到的用戶只能對(duì)特地的數(shù)據(jù)庫(kù)才有相關(guān)的權(quán)限,使用如下命令進(jìn)行相關(guān)權(quán)限的回收:

REVOKE SELECT ON host.database FROM user;

REVOKE INSERT ON host.database FROM user;

REVOKE UPDATE ON host.database FROM user;

REVOKE DELETE ON host.database FROM user;

REVOKE CREATE ON host.database FROM user;

REVOKE DROP ON host.database FROM user;

REVOKE ALTER ON host.database FROM user;

其中user為查詢到的未授權(quán)的用戶,host為相關(guān)主機(jī),database為相關(guān)數(shù)據(jù)庫(kù)。

6、審計(jì)和日志

6.1開啟錯(cuò)誤日志審計(jì)功能

錯(cuò)誤日志包括數(shù)據(jù)庫(kù)運(yùn)行和停止過程中的一系列活動(dòng)信息,有助于分析數(shù)據(jù)庫(kù)運(yùn)行過程中的一些異常活動(dòng),一般情況下需要開啟錯(cuò)誤日志記錄功能,使用如下命令查詢:

SHOW variables LIKE 'log_error';

確保返回結(jié)果為非空,如果為空,需要在mysql數(shù)據(jù)庫(kù)配置文件中增加相關(guān)配置。

6.2確保日志存放在非系統(tǒng)區(qū)域

日志文件隨著數(shù)據(jù)庫(kù)的運(yùn)行會(huì)不斷增加,如果存放在系統(tǒng)區(qū)域,則會(huì)影響系統(tǒng)的正常運(yùn)行,使用如下命令進(jìn)行查詢:

SELECT @@global.log_bin_basename;

確保返回結(jié)果不是如下路徑:/、/var、/usr

6.3關(guān)閉原始日志功能

原始日志選項(xiàng)會(huì)決定一些敏感信息是否會(huì)被明文寫進(jìn)日志中,例如查詢?nèi)罩尽⒙樵內(nèi)罩尽⒍M(jìn)制日志,確保數(shù)據(jù)庫(kù)配置文件中存在如下配置項(xiàng):

Log-raw = OFF

7、認(rèn)證

7.1 Old_passwords環(huán)境變量設(shè)置

Old_passwords決定了使用PASSWORD()函數(shù)和IDENTIFIED BY?、CREATE USER?、GRANT?等語(yǔ)句是時(shí)的hash算法:

0 - authenticate with the mysql_native_password plugin

1 - authenticate with the mysql_old_password plugin

2 - authenticate with the sha256_password plugin

設(shè)置為mysql_old_password代表弱hash算法,可以快速通過密碼字典進(jìn)行暴力破解。使用如下命令查詢相關(guān)值:

SHOW VARIABLES WHERE Variable_name = 'old_passwords';

確保返回值不為1。

7.2 secure_auth?選項(xiàng)設(shè)置

如果客戶端采用Old_passwords發(fā)起連接請(qǐng)求,如果服務(wù)器端設(shè)置了secure_auth,則客戶端會(huì)拒絕連接請(qǐng)求,可以根據(jù)安全需求在配置文件中做相應(yīng)配置。

7.3?密碼保存

確保密碼沒有明文保存在全局配置文件中。

7.4?確保所有用戶都要求使用非空密碼登錄

執(zhí)行如下語(yǔ)句查詢是否有用戶不需要密碼即可登錄:

SELECT User,host

FROM mysql.user

WHERE (plugin IN('mysql_native_password', 'mysql_old_password')

AND (LENGTH(Password) = 0

OR Password IS NULL))

OR (plugin='sha256_password' AND LENGTH(authentication_string) = 0);

7.5不存在空賬號(hào)

使用如下命令查詢是否存在空賬號(hào):

SELECT user,host FROM mysql.user WHERE user = '';

8、網(wǎng)絡(luò)設(shè)置

如果mysql數(shù)據(jù)庫(kù)服務(wù)器與應(yīng)用是跨信任域部署的,則需要考慮在數(shù)據(jù)庫(kù)服務(wù)器與應(yīng)用服務(wù)器之間建立ssl通道進(jìn)行數(shù)據(jù)傳輸,不過這種場(chǎng)景一般很少見,在此不詳細(xì)描述。

9、數(shù)據(jù)庫(kù)備份

如何保證mysql數(shù)據(jù)庫(kù)的安全性

其實(shí)這個(gè)和jsp沒啥關(guān)系,只要你的代碼沒有比如爆源碼或者直接上傳shell這些弱智的漏洞就行了,一般的做法其實(shí)很簡(jiǎn)單,就是給mysql分配一個(gè)單獨(dú)的賬號(hào),而不要使用root權(quán)限,而且只能針對(duì)目標(biāo)數(shù)據(jù)庫(kù)操作,其他的數(shù)據(jù)庫(kù)沒有操作權(quán)限,如果要附加上jsp的話,那么就是別讓你的程序出現(xiàn)注入之類的漏洞,因?yàn)橹灰嬖谧⑷耄敲粗辽倏梢钥隙愕臄?shù)據(jù)庫(kù)會(huì)全部泄露,這樣會(huì)使別人進(jìn)一步入侵你甚至控制你的服務(wù)器,當(dāng)然了linux和windows的服務(wù)器還是有差別的,上面給你說的只是最一般的方法

名稱欄目:mysql服務(wù)器怎么安全,服務(wù)器操作mysql
地址分享:http://chinadenli.net/article24/hedcje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站微信小程序域名注冊(cè)企業(yè)建站網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

小程序開發(fā)