偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Linux管理員不可不知十大PHP安全要點

譯文
安全
PHP是使用最廣泛的腳本編程語言之一。市場份額頗能說明其主導(dǎo)地位。PHP 7已推出,這個事實讓這種編程語言對當(dāng)前的開發(fā)人員來說更具吸引力。盡管出現(xiàn)了一些變化,但是許多開發(fā)人員對PHP的未來持懷疑態(tài)度。一個原因是PHP的安全。

[[176716]]

【51CTO.com快譯】PHP是使用最廣泛的腳本編程語言之一。市場份額頗能說明其主導(dǎo)地位。PHP 7已推出,這個事實讓這種編程語言對當(dāng)前的開發(fā)人員來說更具吸引力。盡管出現(xiàn)了一些變化,但是許多開發(fā)人員對PHP的未來持懷疑態(tài)度。一個原因是PHP的安全。

PHP的安全是廣大開發(fā)人員擔(dān)心的主要問題。雖然PHP提供從里到外的可靠安全,但是需要由開發(fā)人員正確地落實這些安全機制。我們在本文中將為Linux管理員介紹幾個PHP安全要點。這些要點將幫助你確保Web應(yīng)用程序安全,并確保從長遠來看正常運行。

在我們開始之前,有必要了解一下我們所要處理的系統(tǒng)。出于演示的需要,我們使用Fedora。然而,這些要點應(yīng)該適用于Ubuntu版本或其他任何Linux發(fā)行版。查看你操作系統(tǒng)發(fā)行版的使用手冊,即可了解更多信息。

不妨仔細看一下我們系統(tǒng)環(huán)境的幾個關(guān)鍵文件。你的文件應(yīng)該類似或?qū)?yīng)于下列:

  • 默認的Web服務(wù)器:Apache
  • DocumentRoot:/var/www/html
  • PHP配置文件:/etc/php.ini
  • 擴展配置目錄:/etc/php.d/
  • 安全文件:/etc/php.d/security.ini

這些技巧將保護你的網(wǎng)站,避免不同類型的常見攻擊,比如SQL注入、XSS、跨站請求偽造攻擊、eval()和文件上傳等攻擊。可在此(https://www.sitepoint.com/top-10-php-security-vulnerabilities/)查看常見攻擊列表。

1. 刪除不必要的模塊。

PHP隨帶內(nèi)置的PHP模塊。它們對許多任務(wù)來說很有用,但是不是每個項目都需要它們。只要輸入下面這個命令,就可以查看可用的PHP模塊:

  1. # php - m 

一旦你查看了列表,現(xiàn)在可以刪除不必要的模塊。減少模塊的數(shù)量有助于提高你所處理的Web應(yīng)用程序的性能和安全。

2. 限制PHP信息泄露。

平臺泄露關(guān)鍵信息司空見慣。比如說,PHP會泄露一些信息,比如版本以及它安裝到服務(wù)器上的事實。這可以通過expose_php命令來實現(xiàn)。為了防止泄露,你需要在/etc/php.d/security.ini中將該命令設(shè)成off。

  1. expose_php=Off 

如果你需要了解版本及其狀態(tài),只要針對網(wǎng)站地址運行一個簡單的Curl命令就可以獲得該信息。

  1. Curl - I http://www.livecoding.tv/index.php 

之前的命令會返回下列信息:

  1. HTTP/1.1 200 OK 
  2. X-Powered-By: PHP/7.0.10  
  3. Content-type: text/html; charset=UTF-8 

3. 禁用遠程代碼執(zhí)行。

遠程代碼執(zhí)行是PHP安全系統(tǒng)方面的常見安全漏洞之一。默認情況下,遠程代碼執(zhí)行在你的系統(tǒng)上已被啟用。“allow_url_fopen”命令允許請求(require)、包括(include)或可識別URL的fopen包裝器等函數(shù)可以直接訪問PHP文件。遠程訪問通過使用HTTP或FTP協(xié)議來實現(xiàn),會導(dǎo)致系統(tǒng)無力防御代碼注入安全漏洞。

為了確保你的系統(tǒng)安全可靠、遠離遠程代碼執(zhí)行,你可以將該命令設(shè)成“Off”,如下所示:

  1. Allow_url_fopen=Off  
  2. allow_url_include=Off 

4. 將PHP錯誤記入日志。

加強Web應(yīng)用程序安全的另一個簡單方法就是,不向訪客顯示錯誤。這將確保黑客根本無法危及網(wǎng)站的安全性。需要在/etc/php.d/security.ini文件里面進行編輯。

  1. display_errors=Off 

現(xiàn)在你可能會想:完成這一步后,“開發(fā)人員在沒有錯誤信息的幫助下如何調(diào)試?”開發(fā)人員可以使用log_errors命令來用于調(diào)試。他們只需要在security.ini文件中將log_errors命令設(shè)成“On”。

  1. log_errors=On  
  2. error_log=/var/log/httpd/php_scripts_error.log 

5. 合理控制資源。

為了確保應(yīng)用程序的安全,控制資源很重要。為了確保適當(dāng)?shù)膱?zhí)行和安全,你就要對PHP腳本執(zhí)行予以限制。此外,還應(yīng)該對花在解析請求數(shù)據(jù)上的時間予以限制。如果執(zhí)行時間受到控制,腳本使用的內(nèi)存等其他資源也應(yīng)該會得到相應(yīng)配置。所有這些度量指標(biāo)可通過編輯security.ini文件來加以管理。

  1. set in seconds  
  2. max_execution_time = 25  
  3. max_input_time = 25  
  4. memory_limit = 30M 

6. 禁用危險的PHP函數(shù)

PHP隨帶用于開發(fā)的實用函數(shù),但是也有可能被黑客用來闖入Web應(yīng)用程序的大量函數(shù)。禁用這些函數(shù)可以提高總體安全性,并確保你沒有受到危險的PHP函數(shù)的影響。

為此,你先要編輯php.ini文件。一旦進入該文件,找到disable_functions命令,禁用里面的危險函數(shù)。為此,你只要拷貝/粘貼下列代碼。

  1. disable_functions =exec,passthru,  
  2. shell_exec,system,proc_open,popen,curl_exec,  
  3. curl_multi_exec,parse_ini_file,show_source 

你可以在此(https://www.eukhost.com/blog/webhosting/dangerous-php-functions-must-be-disabled/)進一步了解禁用危險的PHP函數(shù)。

7. 上傳文件。

如果你的應(yīng)用程序不需要上傳任何文件,禁用上傳文件的功能有助于提高安全。想禁止用戶上傳文件,只需要編輯/etc/php.d/目錄下的security.ini文件,將file_uploads命令設(shè)成OFF。

  1. file_uploads=Off 

8. 保持版本最新。

開發(fā)人員在24/7不間斷地工作,給你使用的技術(shù)打上補丁。PHP也是一樣。由于它有一個開源社區(qū),補丁和修正版定期發(fā)布。更新版還為首日漏洞及其他安全漏洞提供了安全補丁。如果你注重應(yīng)用程序的安全性,就要始終確保你的PHP解決方案是最新版本。另外,給其他相關(guān)技術(shù)打上最新的補丁可以確保最大限度的安全。

9.控制文件系統(tǒng)訪問。

默認情況下,PHP可使用fopen()等函數(shù)來訪問文件。open_basedir命令提供了訪問。首先,始終要將open_basedir命令設(shè)成/var/www/html目錄。將它設(shè)成其他任何目錄會導(dǎo)致安全問題。

  1. open_basedir="/var/www/html/" 

10. 控制POST大小。

我們的最后一個PHP安全要點是控制POST大小函數(shù)。HTTP POST函數(shù)使用客戶端的瀏覽器,將數(shù)據(jù)發(fā)送到Web服務(wù)器。比如說,用戶可能上傳證書,然后發(fā)送到Web瀏覽器以便處理。一切都運行順暢,直到有一天黑客企圖發(fā)送龐大的文件來耗盡服務(wù)器資源。這很可能會導(dǎo)致服務(wù)器崩潰或響應(yīng)緩慢。為了保護服務(wù)器遠離這個漏洞,就需要設(shè)置POST大小。POST大小可以在/etc/php.d/security.ini文件里面加以設(shè)置。

  1. post_max_size=1k 

結(jié)束語

安全是廣大Web開發(fā)人員和Linux管理員最關(guān)注的問題之一。如果采取了上述要點,你勢必可以加強開發(fā)環(huán)境和PHP Web應(yīng)用程序方面的安全。要是你認為我們遺漏了重要的內(nèi)容,歡迎留言補充。

原文標(biāo)題:Top 10 PHP Security Tips for Linux Admins,作者:Damian Wolf

【51CTO譯稿,合作站點轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】

責(zé)任編輯:武曉燕 來源: 51CTO.com
相關(guān)推薦

2011-05-06 13:45:17

Linux服務(wù)器配置

2010-04-09 09:15:23

Linux管理員

2020-01-06 08:00:49

大數(shù)據(jù)分析數(shù)據(jù)技術(shù)

2012-03-16 17:15:43

JMP10數(shù)據(jù)分析

2013-07-25 10:27:45

Linux系統(tǒng)管理員sudo

2021-12-30 10:54:53

Hive調(diào)優(yōu)實踐

2024-08-12 08:00:00

人工智能開發(fā)AI編程助理

2011-11-09 13:46:51

可擴展架構(gòu)

2011-05-26 09:09:47

2019-07-30 08:02:57

Python編程語言代碼

2009-04-08 10:25:20

光棍休閑

2020-11-30 13:12:04

Linux文本命令

2018-06-12 11:05:33

2010-07-29 14:39:01

系統(tǒng)管理員黃金法則

2015-07-30 17:30:43

Linux命令

2010-06-11 14:46:38

可路由協(xié)議

2020-06-02 00:00:00

開源云安全安全工具

2013-02-26 11:18:14

2014-08-15 10:37:50

程序員編程工具

2010-01-06 10:56:44

點贊
收藏

51CTO技術(shù)棧公眾號