在Linux環(huán)境下搭建安裝DedeCMS本篇不再詳細(xì)說(shuō)明,
本篇將在之前的基礎(chǔ)上進(jìn)一步來(lái)對(duì)Linux下的DedeCMS進(jìn)行安全配置,以保證我們的站點(diǎn)能夠更加安全的運(yùn)行在服務(wù)器上。
1.安裝Apache文件訪問(wèn)權(quán)限模塊
為了保證每個(gè)假造站點(diǎn)都能夠擁有本身自力的文件訪問(wèn)權(quán)限,我們必要安裝Apache安全權(quán)限星散模塊,在終端中輸入: sudo apt-get install apache2-mpm-itk
2.添加管理后臺(tái)站點(diǎn)控制帳號(hào)
接下來(lái)我們必要再添加一個(gè)后臺(tái)站點(diǎn)的Apache運(yùn)行帳號(hào),在終端中輸入: sudo useradd -g www-data -d /dev/null -s /usr/sbin/nologin www-admin 如許我們就添加了一個(gè)www-admin帳號(hào),專(zhuān)門(mén)用于控制后臺(tái)站點(diǎn)的文件訪問(wèn)權(quán)限。
3.將后臺(tái)管理目錄移出,并且創(chuàng)建自力站點(diǎn)
默認(rèn)安裝后,后臺(tái)的管理目錄是在站點(diǎn)更目錄下的/dede,為了安全起見(jiàn)我們必要將這個(gè)目錄移出,但為了能夠正常管理站點(diǎn),我們必要將這個(gè)后臺(tái)目錄創(chuàng)建自力站點(diǎn)。
3.1.移動(dòng)后臺(tái)管理目錄
我們先創(chuàng)建一個(gè)目錄,這個(gè)目錄專(zhuān)門(mén)用于存放后臺(tái)站點(diǎn)文件,在終端中輸入: sudo mkdir /var/dedecms-admin 然后將織夢(mèng)后臺(tái)移動(dòng)到這個(gè)文件夾中,輸入: sudo mv /var/dedecms/dede/* /var/dedecms-admin/
3.2.創(chuàng)建假造站點(diǎn)
我們必要?jiǎng)?chuàng)建一個(gè)新的站點(diǎn)用于表現(xiàn)后臺(tái),我們可以在/etc/apache2/site-enabled/目錄中創(chuàng)建一個(gè)文件名為:default-admin的文件,內(nèi)容如下: ServerName admin.dede5139 ServerAdmin webmaster@localhost DocumentRoot /var/dedecms-admin AssignUserId www-admin www-dataOptions FollowSymLinks AllowOverride NoneOptions Indexes FollowSymLinks MultiViews AllowOverride None Order allow,deny allow from all創(chuàng)建完成后我們重新啟動(dòng)服務(wù)器,在終端輸入: sudo service apache2 restart 這里我們給后臺(tái)站點(diǎn)域名設(shè)置為admin.dedecms5139用戶(hù)可以根據(jù)本身情況設(shè)定更為復(fù)雜的域名情勢(shì),例如:dedesiteadmin2008.dede5139 然后在體系host紀(jì)錄中添加一條指向站點(diǎn)域名對(duì)應(yīng)ip的紀(jì)錄,保證其能夠正常訪問(wèn)。
3.3.給管理站點(diǎn)目錄設(shè)定權(quán)限控制帳戶(hù)
為了保證后臺(tái)文件訪問(wèn)的安全,我們也必要給它設(shè)定文件訪問(wèn)權(quán)限,在終端中輸入: sudo chown www-admin.www-data /var/dedecms-admin/ 如許就給這個(gè)目錄指定了www-admin的訪問(wèn)帳號(hào)。
3.4.調(diào)整后臺(tái)文件配置,保證后臺(tái)正常訪問(wèn)
因?yàn)槲覀冎苯右苿?dòng)了管理后臺(tái)文件目錄,所以我們?cè)L問(wèn)admin.dede5139會(huì)出現(xiàn)報(bào)錯(cuò),這時(shí)候我們必要對(duì)體系中的目錄配置進(jìn)行調(diào)整。
(1)找到/var/dedecms-admin/config.php,將第12行 require_once(DEDEADMIN.'/../include/common.inc.php');
改為 require_once(DEDEADMIN.'/../dedecms/include/common.inc.php');
然后在這段代碼下面加上: $cfg_plus_dir = $cfg_phpurl = $cfg_basehost."/".$cfg_plus_dir;
(2)找到/var/dedecms-admin/login.php,將11行 require_once(dirname(__FILE__).'/../include/common.inc.php');
改為 require_once(dirname(__FILE__).'/../dedecms/include/common.inc.php');
(3)找到/var/dedecms/data/safe/inc_safe_config.php,第2行,
改為 $safe_gdopen = '1,2,3,4,5,7';
(4)找到/var/dedecms-admin/exit.php,第11行 require_once(dirname(__FILE__).'/../include/common.inc.php');
改為 require_once(dirname(__FILE__).'/../dedecms/include/common.inc.php');
(5)復(fù)制include中的相干文件 我們必要將include文件夾下的一些文件拷貝到管理后臺(tái)站點(diǎn)中以保證后臺(tái)正常使用:
mkdir /var/dedecms-admin/include/dialog sudo cp -R /var/dedecms/include/dialog/* /var/dedecms-admin/include/dialog mkdir /var/dedecms-admin/include/js sudo cp -R /var/dedecms/include/js/* /var/dedecms-admin/include/js sudo mkdir /var/dedecms-admin/include/ckeditor sudo cp -R /var/dedecms/include/ckeditor/* /var/dedecms-admin/include/ckeditor
4.重新分配前臺(tái)Apache用戶(hù)權(quán)限
設(shè)定完成后我們必要給前臺(tái)站點(diǎn)重新指派權(quán)限,在終端輸入: sudo chown -R www-admin.www-data /var/dedecms/ 如許就把前臺(tái)用戶(hù)設(shè)定為了www-admin,然后再實(shí)行: sudo chmod -R 755 /var/dedecms/ 如許設(shè)置后后臺(tái)管理就具有了站點(diǎn)操作權(quán)限,但前臺(tái)欣賞用戶(hù)沒(méi)有修改文件的權(quán)限了。 但這里前臺(tái)uploads必要有可上傳的權(quán)限,所以還必要實(shí)行: sudo chmod -R 777 uploads/
5.完成安全配置
如許一來(lái)我們就完成了體系的安全設(shè)置,做到了前后臺(tái)的權(quán)限星散,當(dāng)然您也必要配置下php.ini禁用掉某些函數(shù),配合體系做好各個(gè)方面的安全設(shè)置。
假如您必要了解Windows Server 2012下如何搭建配置DedeCMS環(huán)境,可以查看:《Windows Server 2012 搭建PHP+MySQL環(huán)境安裝DedeCMS體系》
6.Nginx設(shè)置
因?yàn)镹ginx輕巧容易維護(hù),許多站長(zhǎng)也會(huì)選擇Nginx作為站點(diǎn)服務(wù)器,設(shè)置思路同上文類(lèi)似,但有稍許的不同,下面我們就來(lái)單獨(dú)對(duì)其進(jìn)行介紹。
6.1.安裝Nginx以及php5-fpm
終端中輸入:sudo apt-get install nginx 以及:sudo apt-get install php5-fpm (假如已經(jīng)安裝了Apache的用戶(hù)必要制止Apache,以免同Nginx沖突,可以使用飭令行:sudo service apache2 stop)
6.2.添加站點(diǎn)
同樣我們必要添加兩個(gè)站點(diǎn),一個(gè)前臺(tái)“down.admin5.com/dede5139”一個(gè)后臺(tái)“admin.dede5139”,基本配置如下: down.admin5.com/dede5139站點(diǎn): server { root /var/dedecms; index index.html index.htm index.php; server_name down.admin5.com/dede5139; ... location ~ .php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_param script_FILENAME /var/dedecms$fastcgi_script_name; fastcgi_index index.php; include fastcgi_params; } } admin.dede5139站點(diǎn)配置: server { root /var/dedecms-admin; index index.html index.htm index.php; server_name admin.dede5139; ... location ~ .php$ { fastcgi_pass 127.0.0.1:9001; fastcgi_param script_FILENAME /var/dedecms-admin$fastcgi_script_name; fastcgi_index index.php; include fastcgi_params; } } 這里重要是admin的站點(diǎn)采用的9001端口,以及站點(diǎn)目錄重新做了調(diào)整。
6.3.指派站點(diǎn)文件訪問(wèn)控制權(quán)限
同apache的apache2-mpm-itk不同,php5-fpm默認(rèn)就可以進(jìn)行權(quán)限控制。 在文件/etc/php5/fpm/pool.d/down.admin5.com/conf中則是默認(rèn)采用了“www-data”作為站點(diǎn)的控制用戶(hù),所以為了后臺(tái)具有對(duì)應(yīng)的操作權(quán)限,我們必要添加一個(gè)專(zhuān)門(mén)的控制權(quán)限。 cd /etc/php5/fpm cp down.admin5.com/conf admin.conf 修改admin.conf文件 其中我們只要將: user = www-admin group = www-data listen = 127.0.0.1:9001 這幾個(gè)地方做一個(gè)更改即可。 完成后重啟下服務(wù) sudo service php5-fpm restart sudo service nginx restart
6.4.nginx下取消目錄實(shí)行的權(quán)限
在《Linux下安裝DedeCMS及安全設(shè)置》 中介紹了apache下如何取消目錄實(shí)行權(quán)限,nginx也是類(lèi)似,但配置方法稍有不同: server { ... location ~* ^/uploads/.*.(php|php5)$ { deny all; } } 按照這個(gè)方法,將其他目錄也同樣設(shè)置即可。
此文由 網(wǎng)站目錄_網(wǎng)站網(wǎng)址收錄與提交入口 編輯,未經(jīng)允許不得轉(zhuǎn)載!: