主頁(yè) > 網(wǎng)站建設(shè) > 建站知識(shí) > linux和Apache環(huán)境下安裝織夢(mèng)Dedecms的安全配置

linux和Apache環(huán)境下安裝織夢(mèng)Dedecms的安全配置

POST TIME:2020-04-10 16:44

DedeCMS網(wǎng)站被掛馬,主要問(wèn)題還是安全設(shè)置方面做得不到位,這里詳細(xì)介紹Linux下DedeCMS程序安全的設(shè)置。

目錄權(quán)限設(shè)置

web服務(wù)器運(yùn)行的用戶與目錄所有者用戶必須不一樣,比如apache運(yùn)行的用戶為www,那么網(wǎng)站目錄設(shè)置的所有者就應(yīng)該不能設(shè)置為www,而是設(shè)置不同于www的用戶,如centos。
我們這里假設(shè)web服務(wù)器以www用戶運(yùn)行,網(wǎng)站分配的用戶為centos,dedecms網(wǎng)站根目錄為/home/centos/web。不建議用戶把欄目目錄設(shè)置在根目錄, 原因是這樣進(jìn)行安全設(shè)置會(huì)十分的麻煩, 在默認(rèn)的情況下,安裝完成后,目錄設(shè)置如下:

1、首先設(shè)置網(wǎng)站目錄所有者為centos,用戶組為www,目錄設(shè)置為750,文件為640。


  1. cd/home/centos
  2. chown-Rcentos.wwwweb
  3. findweb-typed-execchmod750{};
  4. findweb-not-typed-execchmod640{};

2、data、templets、uploads、a images目錄, 設(shè)置可讀寫(xiě),不可執(zhí)行的權(quán)限; 設(shè)置可讀寫(xiě)權(quán)限:


  1. cd/home/centos/web
  2. chmod-R770templetsuploadsaimages

設(shè)置不可執(zhí)行權(quán)限: apache的設(shè)置,在apache配置文件中加入如下代碼(以u(píng)ploads目錄為例,其它設(shè)置基本相同)。


  1. <Directory/home/centos/web/uploads>
  2. php_flagengineoff
  3. </Directory>
  4. <Directory~"^/home/centos/web/uploads">
  5. <Files~".php">
  6. Orderallow,deny
  7. Denyfromall
  8. </Files>
  9. </Directory>

nginx的設(shè)置如下:


  1. location~*^/(templets|uploads|a|images)/.*.(php|php5)$
  2. {
  3. denyall;
  4. }

3、不需要專題的,建議刪除 special 目錄, 需要可以在生成HTML后,刪除 special/index.php 然后把這目錄設(shè)置為可讀寫(xiě),不可執(zhí)行的權(quán)限,上面介紹了如何設(shè)置可讀寫(xiě)和不可執(zhí)行的權(quán)限,這里就不重復(fù)了。

data目錄路徑更改

另外在DedeCMS V5.7中用戶也可以設(shè)定data目錄到上一級(jí)非web訪問(wèn)目錄,基本操作如下:

1.將data目錄移動(dòng)到上一級(jí)目錄中,這里直接剪切過(guò)去就可以了;

2.配置include/common.inc.php中DEDEDATA文件define('DEDEDATA', DEDEROOT.'/data');

可以改成類如:define('DEDEDATA', DEDEROOT.'/../../data');

3.后臺(tái)設(shè)置模板緩存路徑

其它需注意問(wèn)題:

1、雖然對(duì) install 目錄已經(jīng)進(jìn)行了嚴(yán)格處理, 但為了安全起見(jiàn),我們依然建議把它刪除;

2、不要對(duì)網(wǎng)站直接使用MySQLroot用戶的權(quán)限,給每個(gè)網(wǎng)站設(shè)置獨(dú)立的MySQL用戶帳號(hào),許可權(quán)限為:SELECT, INSERT , UPDATE , DELETE,CREATE , DROP , INDEX , ALTER , CREATE TEMPORARY TABLES,由于DEDE并沒(méi)有任何地方使用存儲(chǔ)過(guò)程,因此務(wù)必禁用 FILE、EXECUTE 等執(zhí)行存儲(chǔ)過(guò)程或文件操作的權(quán)限。

假設(shè)我們建立的數(shù)據(jù)庫(kù)名為centosmysql,數(shù)據(jù)庫(kù)用戶為centosmysql,密碼為123456,具體設(shè)置命令如下:


  1. mysql-uroot-p
  2. mysql>GRANTSELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER,CREATETEMPORARYTABLESONcentossql.*TOcentossql@localhostIDENTIFIEDBY123456;
  3. mysql>FLUSHPRIVILEGES;
  4. mysql>exit

3、更改默認(rèn)管理目錄dede,改到不易被猜到就好。

4、關(guān)注后臺(tái)更新通知,檢查是否打上最新dedeCMS漏洞補(bǔ)丁。

5、登錄后臺(tái)時(shí)使用禁止javascript的瀏覽器登錄。



收縮
  • 微信客服
  • 微信二維碼
  • 電話咨詢

  • 400-1100-266