Linux下DedeCMS詳細安全設定教程

2021-06-18 01:35:46 字數 1858 閱讀 7963

經常會聽到使用dedecms的站長抱怨,**又被掛馬了,dedecms真的很不安全。dedecms可能存在某些漏洞這不假,但主要責任真的是dedecms嗎?我們知道,乙個黑客想上傳木馬,首先得可以找到可寫的目錄,當然如果被黑客獲取root密碼和提權,那就沒辦法了。上傳木馬之後,又必須是php程式能解析。知道了這兩個條件,我們就可以根據這兩方面設定許可權了。所以說,**被掛馬,主要問題還在於你安全設定方面做得不夠好。

下面我們詳細的介紹linux下dedecms程式安全的設定。

目錄許可權設定

web伺服器執行的使用者與目錄所有者使用者必須不一樣,比如apache執行的使用者為www,那麼**目錄設定的所有者就應該不能設定為www,而是設定不同於www的使用者,如centos。

我們這裡假設web伺服器以www使用者執行,**分配的使用者為centos,dedecms**根目錄為/home/centos/web。

不建議使用者把欄目目錄設定在根目錄, 原因是這樣進行安全設定會十分的麻煩, 在預設的情況下,安裝完成後,目錄設定如下:

1、首先設定**目錄所有者為centos,使用者組為www,目錄設定為750,檔案為640。

cd /home/centos

chown -r centos.www web

find web -type d -exec chmod 750 {} \;

find web -not -type d -exec chmod 640 {} \;

2、data、templets、uploads、a images目錄, 設定可讀寫,不可執行的許可權;

設定可讀寫許可權:

cd /home/centos/web

chmod -r 770 data templets uploads a images

設定不可執行許可權:

apache的設定,在apache配置檔案中加入如下**(以data目錄為例,其它設定基本相同)。

php_flag engine of

order allow,deny

deny from all

nginx的設定如下:

location ~* ^/(data|templets|uploads|a|images)/.*\.(php|php5)$

deny all;

3、不需要專題的,建議刪除 special 目錄, 需要可以在生成html後,刪除 special/index.php 然後把這目錄設定為可讀寫,不可執行的許可權,上面介紹了如何設定可讀寫和不可執行的許可權,這裡就不重複了。

其它需注意問題

1、雖然對 install 目錄已經進行了嚴格處理, 但為了安全起見,我們依然建議把它刪除;

select, insert , update, delete,create , drop , index, alter , create temporary tables

由於dede並沒有任何地方使用儲存過程,因此務必禁用 file、execute 等執行儲存過程或檔案操作的許可權。

假設我們建立的資料庫名為centosmysql,資料庫使用者為centosmysql,密碼為123456,具體設定命令如下:

mysql -uroot -p

mysql>grant select,insert,update,delete,create,drop,index,alter,create temporary tables on centossql.* to centossql@localhost identified by 123456;

mysql>flush privileges;

mysql>exit

3、更改預設管理目錄dede,改到不易被猜到就好。

4、關注後台更新通知,檢查是否打上最新dedecms補丁。

linux下安裝FTP詳細

安裝ftp 1 檢查是否安裝了 ftp 下圖是已安裝的效果,沒安裝沒有展示 rpm qa grep vsftpd 2 安裝指令 找乙個 y 指令 yum install y vsftpd 3 安裝完成後執行步驟1 就可以看到ftp的版本資訊 4 安裝完成後,啟動 ftp 服務 service vsf...

Linux下詳細基本指令

1.ls指令 語法 ls 選項 目錄或檔案 功能 對於目錄,該命令列出該目錄下的所有子目錄與檔案。對於檔案,將列出檔名以及其他資訊。常用選項 2.pwd命令 語法 pwd 功能 顯示使用者當前所在的目錄 3.cd指令 linux系統中,磁碟上的檔案和目錄被組成一顆目錄樹,每個節點都是目錄或檔案。語法...

Linux搭建DEDECMS環境

此文以ubuntu為例 step1 安裝apache2 1 檢視 檢視apache是否已安裝 apachectl v 若安裝顯示server version apache 2.2.22 ubuntu 2 安裝 若未安裝,鍵入這條命令 sudo apt get install apache2 3 檢驗...