亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費(fèi)注冊(cè) 查看新帖 |

Chinaunix

  平臺(tái) 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 1759 | 回復(fù): 1
打印 上一主題 下一主題

[Web] Apache服務(wù)器配置安全規(guī)范及其缺陷 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報(bào)告]
發(fā)表于 2010-12-14 15:14 |只看該作者 |倒序?yàn)g覽
盡管Apache服務(wù)器應(yīng)用最為廣泛,設(shè)計(jì)上非常安全的程序。但是同其它應(yīng)用程序一樣,Apache也存在安全缺陷。畢竟它是完全源代碼,Apache服務(wù)器的安全缺陷主要是使用HTTP協(xié)議進(jìn)行的拒絕服務(wù)攻擊(denial of service)、緩沖區(qū)溢出攻擊以及被攻擊者獲得root權(quán)限三缺陷和最新的惡意的攻擊者進(jìn)行“拒絕服務(wù)”(DoS)攻擊。合理的網(wǎng)絡(luò)配置能夠保護(hù)Apache服務(wù)器免遭多種攻擊。我們來介紹一下主要的安全缺陷。

主要安全缺陷

(1)使用HTTP協(xié)議進(jìn)行的拒絕服務(wù)攻擊(denial of service)的安全缺陷

這種方法攻擊者會(huì)通過某些手段使服務(wù)器拒絕對(duì)HTTP應(yīng)答。這樣會(huì)使Apache對(duì)系統(tǒng)資源(CPU時(shí)間和內(nèi)存)需求的劇增,最終造成Apache系統(tǒng)變慢甚至完全癱瘓。

(2)緩沖區(qū)溢出的安全缺陷

該方法攻擊者利用程序編寫的一些缺陷,使程序偏離正常的流程。程序使用靜態(tài)分配的內(nèi)存保存請(qǐng)求數(shù)據(jù),攻擊者就可以發(fā)送一個(gè)超長(zhǎng)請(qǐng)求使緩沖區(qū)溢出。

(3)被攻擊者獲得root權(quán)限的安全缺陷

該安全缺陷主要是因?yàn)锳pache服務(wù)器一般以root權(quán)限運(yùn)行(父進(jìn)程),攻擊者會(huì)通過它獲得root權(quán)限,進(jìn)而控制整個(gè)Apache系統(tǒng)。

(4)惡意的攻擊者進(jìn)行“拒絕服務(wù)”(DoS)攻擊的安全缺陷

這個(gè)最新在6月17日發(fā)現(xiàn)的漏洞,它主要是存在于Apache的chunk encoding中,這是一個(gè)HTTP協(xié)議定義的用于接受web用戶所提交數(shù)據(jù)的功能。 所有說使用最高和最新安全版本對(duì)于加強(qiáng)Apache Web服務(wù)器的安全是至關(guān)重要的。

正確維護(hù)和配置Apache服務(wù)器

雖然Apache服務(wù)器的開發(fā)者非常注重安全性,由于Apache服務(wù)器其龐大的項(xiàng)目, 難免會(huì)存在安全隱患。正確維護(hù)和配置Apache WEB服務(wù)器就很重要了。我們應(yīng)注意的一些問題:

(1)Apache服務(wù)器配置文件

Apache Web服務(wù)器主要有三個(gè)配置文件,位于/usr/local/apache/conf目錄下。 這三個(gè)文件是:


httpd.conf----->主配置文件
srm.conf------>填加資源文件
access.conf--->設(shè)置文件的訪問權(quán)限


(2)Apache服務(wù)器的目錄安全認(rèn)證

在Apache Server中是允許使用 .htaccess做目錄安全保護(hù)的,欲讀取這保護(hù)的目錄需要先鍵入正確用戶帳號(hào)與密碼。這樣可做為專門管理網(wǎng)頁存放的目錄或做為會(huì)員區(qū)等。在保護(hù)的目錄放置一個(gè)檔案,檔名為.htaccss。


AuthName "會(huì)員專區(qū)"
AuthType "Basic"


AuthUserFile "/var/tmp/xxx.pw" ----->把password放在網(wǎng)站外 require valid-user 到apache/bin目錄,建password檔 % ./htpasswd -c /var/tmp/xxx.pw username1 ----->第一次建檔要用參數(shù)"-c" % /htpasswd /var/tmp/xxx.pw username2 這樣就可以保護(hù)目錄內(nèi)的內(nèi)容,進(jìn)入要用合法的用戶。

注:采用了Apache內(nèi)附的模組。

也可以采用在httpd.conf中加入: 


options indexes followsymlinks 
allowoverride authconfig 
order allow,deny 
allow from all 


(3)Apache服務(wù)器訪問控制

我們就要看三個(gè)配置文件中的第三個(gè)文件了,即access.conf文件,它包含一些指令控制允許什么用戶訪問Apache目錄。應(yīng)該把deny from all設(shè)為初始化指令,再使用allow from指令打開訪問權(quán)限。


order deny,allow
deny from all
allow from safechina.net


  
設(shè)置允許來自某個(gè)域、IP地址或者IP段的訪問。

(4)Apache服務(wù)器的密碼保護(hù)問題

我們?cè)偈褂?htaccess文件把某個(gè)目錄的訪問權(quán)限賦予某個(gè)用戶。系統(tǒng)管理員需要在httpd.conf或者rm.conf文件中使用 AccessFileName指令打開目錄的訪問控制。如:


AuthName PrivateFiles
AuthType Basic
AuthUserFile /path/to/httpd/users
require Phoenix
# htpasswd -c /path/to/httpd/users Phoenix


設(shè)置Apache服務(wù)器的WEB和文件服務(wù)器

我們?cè)贏pache服務(wù)器上存放WEB服務(wù)器的文件,供用戶訪問,并設(shè)置/home/ftp/pub目錄為文件存放區(qū)域,用
http://download.your.com/pub/來訪問。在防火墻上設(shè)置apache反向代理技術(shù),由防火墻代理訪問!

(1)Apache服務(wù)器的設(shè)置 

Apache服務(wù)器采用默認(rèn)配置。主目錄為/home/httpd/html,主機(jī)域名為Phoenix.your.com, 且別名到
www.your.com中, 并且設(shè)置srm.conf加一行別名定義如下:


Alias /pub /home/ftp/pub/ 


更改默認(rèn)應(yīng)用程序類型定義如下: 


DefaultType application/octet-stream 


最后在/etc/httpd/conf/access.conf中增加一項(xiàng)定義


 
Options Indexes 
AllowOverride AuthConfig 
order allow,deny 
allow from all 


注:Options Indexes允許在找不到index.html文件的情況下允許列出目錄/文件列表。AllowOverride AuthConfig允許做基本的用戶名和口令驗(yàn)證。這樣的話,需要在/home/ftp/pub目錄下放入.htaccess,內(nèi)容如下: 


  [root@ pub]# more .htaccess 
  AuthName Branch Office Public Software Download Area 
  AuthType Basic 
  AuthUserFile /etc/.usrpasswd 
  require valid-user 


用# htpasswd -c /etc/.usrpasswd user1  分別創(chuàng)建不同的允許訪問/pub下文件服務(wù)的外部用戶名和口令。

(2)在防火墻上配置反向代理技術(shù).

在/etc/httpd/conf/httpd.conf  中加入 NameVirtualHost xxx.xxx.xxx.xxx # xxx.xxx.xxx.xxx ----->是防火墻外部在互聯(lián)網(wǎng)上永久IP地址: 


  servername 
www.your.com 
  errorlog /var/log/httpd/error_log 
  transferlog /var/log/httpd/access_log 
  rewriteengine on 
  proxyrequests off 
  usecanonicalname off 
  rewriterule ^/(.*)$ 
http://xxx.xxx.xx.x/$1 Apache服務(wù)器的IP地址。

  servername 
http://download.your.com/pub/
  errorlog /var/log/httpd/download/error_log 
  transferlog /var/log/httpd/download/access_log 
  rewriteengine on 
  proxyrequests off 
  usecanonicalname off 
  rewriterule ^/(.*)$ 
http://xxx.xxx.xx.x/$1 同上Apache服務(wù)器的IP地址。


設(shè)置防火墻上的DNS,讓download.your.com和
www.your.com 都指向防火墻的外部網(wǎng)地址xxx.xxx.xxx.xxx。

http://www.your.com訪問主頁,用http://download.your.com/pub/訪問公共文件的下載區(qū)。

注:還需要在apache服務(wù)器主機(jī)上建立目錄/var/log/httpd/download/,否則會(huì)出錯(cuò)。另外,也可以設(shè)置防火墻主機(jī)上的/home/httpd/html/index.html的屬性為750來阻止訪問,這是防外部用戶能訪問到防火墻上的Apache服務(wù)器的
http://www.your.com中。 

總結(jié):Apache Server是一個(gè)非常優(yōu)秀,非常棒的服務(wù)器,只要你正確配置和維護(hù)好Apache服務(wù)器,你就會(huì)感受到Apache Server 所帶來的好處,同樣希望你能夠通過閱讀本文達(dá)到理論和實(shí)踐雙豐收的目的。

驗(yàn)證你的Apache來源途徑

不要以為在Google上能夠搜索到合適的Apache版本。如果你需要下載最新版本的Apache,那么你最好通過一個(gè)權(quán)威的鏡像站點(diǎn)來下載。然而,即使這樣也可能有問題,事實(shí)上,曾經(jīng)就有黑客入侵過apache.org官方網(wǎng)站。所以,采用類似PGP的工具來驗(yàn)證Apache的數(shù)字簽名就顯得尤為重要。

保持更新Apache的補(bǔ)丁程序

如果你安裝了Apache,你就必須及時(shí)更新安全補(bǔ)丁。如果沒有及時(shí)的更新,那你的系統(tǒng)很容易受到網(wǎng)絡(luò)上那些高危病毒的攻擊。幸好,有幾個(gè)簡(jiǎn)便方法可以更新Apache的補(bǔ)丁。參考我們關(guān)于保持更新Apache補(bǔ)丁的文章了解更多關(guān)于Apache服務(wù)器公告列表、Linux包管理系統(tǒng)和RedHat操作系統(tǒng)更新服務(wù)的信息。

避免使用.htaccess文件(分布式配置文件)

很多情況下需要幾個(gè)管理員和內(nèi)容管理者共同管理Apache服務(wù)器。一個(gè)常用的共享管理辦法就是使用.htaccess文件,這樣可以很靈活地對(duì)管理員以外的用戶提供不同的配置控制權(quán)限。然而,這些文件也使得在集中安全管理之外還有相當(dāng)多的安全控制權(quán)限——這些文件允許安全專業(yè)人士以外的其他用戶改變服務(wù)器的訪問控制許可配置。那些對(duì)粒度訪問控制根本不熟悉的用戶修改的配置可能在無意中會(huì)危害到你的系統(tǒng)安全。所以,除非必須使用,否則我們應(yīng)該盡可能地避免使用這種訪問控制系統(tǒng)。

監(jiān)視系統(tǒng)日志

Apache為管理員提供了很全面的日志管理工具來對(duì)服務(wù)器的活動(dòng)進(jìn)行事后分析。Apache提供了多種不同的記錄日志,但是對(duì)安全專業(yè)人士最重要的是訪問日志。這個(gè)靈活的工具還具有了相當(dāng)多的自定義功能,你可以按照你的需要很方便地記錄盡可能多或者少的日志,以保證有效的分析。至少,你應(yīng)該記錄那些失敗的認(rèn)證企圖和系統(tǒng)產(chǎn)生的錯(cuò)誤。使用像AWStats一樣的免費(fèi)工具可以很輕松地完成分析任務(wù)。但是必須明確的一點(diǎn)是:監(jiān)視日志只是一種事后分析手段。你可以利用它回顧和判斷對(duì)服務(wù)器的攻擊(和攻擊企圖),但是希望及時(shí)查看日志來對(duì)緊急情況做出快速反應(yīng)是不可能的。如果需要進(jìn)行預(yù)判反應(yīng),你應(yīng)該考慮使用入侵預(yù)防系統(tǒng)如信息安全雜志評(píng)選的2003年度最新興技術(shù)獎(jiǎng)得主:Lucid Security公司的ipAngel系統(tǒng)。

管理文件系統(tǒng)

我們已經(jīng)討論了使用(或不使用).htaccess文件對(duì)管理文件訪問權(quán)限的重要性。禁止通過文件系統(tǒng)許可對(duì)Apache服務(wù)器進(jìn)行非授權(quán)修改也是很重要的。特別值得一提的是,你應(yīng)該保證只有根用戶才能修改存儲(chǔ)在“/usr/local/apache ”目錄的文件(或者你選擇的任何Apache服務(wù)器的根目錄)。確保只有根用戶才能修改日志文件也很關(guān)鍵,這樣可以防止用戶掩蓋他們的操作。

Apache 服務(wù)器日常配置

1、如何設(shè) 置請(qǐng)求等待時(shí)間

在httpd.conf里面設(shè)置:


TimeOut n


其中n為整數(shù),單位是秒。

設(shè)置這個(gè)TimeOut適用于三種情況:

2、如何接收一個(gè)get請(qǐng)求的總時(shí)間

接收一個(gè)post和put請(qǐng)求的TCP包之間的時(shí)間

TCP包傳輸中的響應(yīng)(ack)時(shí)間間隔

3、如何使得apache監(jiān)聽在特定的端口

修改httpd.conf里面關(guān)于Listen的選項(xiàng),例如:


Listen 8000


是使apache監(jiān)聽在8000端口

而如果要同時(shí)指定監(jiān)聽端口和監(jiān)聽地址,可以使用:


Listen 192.170.2.1:80
Listen 192.170.2.5:8000


這樣就使得apache同時(shí)監(jiān)聽在192.170.2.1的80端口和192.170.2.5的8000端口。

當(dāng)然也可以在httpd.conf里面設(shè)置:


Port 80


這樣來實(shí)現(xiàn)類似的效果。

4、如何設(shè)置apache的最大空閑進(jìn)程數(shù)

修改httpd.conf,在里面設(shè)置:


MaxSpareServers n


其中n是一個(gè)整數(shù)。這樣當(dāng)空閑進(jìn)程超過n的時(shí)候,apache主進(jìn)程會(huì)殺掉多余的空閑進(jìn)程而保持空閑進(jìn)程在n,節(jié)省了系統(tǒng)資源。如果在一個(gè)apache非常繁忙的站點(diǎn)調(diào)節(jié)這個(gè)參數(shù)才是必要的,但是在任何時(shí)候把這個(gè)參數(shù)調(diào)到很大都不是一個(gè)好主意。

同時(shí)也可以設(shè)置:


MinSpareServers n


來限制最少空閑進(jìn)程數(shù)目來加快反應(yīng)速度。

5、apache如何設(shè)置啟動(dòng)時(shí)的子服務(wù)進(jìn)程個(gè)數(shù)

在httpd.conf里面設(shè)置:


StartServers 5


這樣啟動(dòng)apache后就有5個(gè)空閑子進(jìn)程等待接受請(qǐng)求。

也可以參考MinSpareServers和MaxSpareServers設(shè)置。

6、如何在apache中設(shè)置每個(gè)連接的最大請(qǐng)求數(shù)

在httpd.conf里面設(shè)置:


MaxKeepAliveRequests 100


這樣就能保證在一個(gè)連接中,如果同時(shí)請(qǐng)求數(shù)達(dá)到100就不再響應(yīng)這個(gè)連接的新請(qǐng)求,保證了系統(tǒng)資源不會(huì)被某個(gè)連接大量占用。但是在實(shí)際配置中要求盡量把這個(gè)數(shù)值調(diào)高來獲得較高的系統(tǒng)性能。

7、如何在apache中設(shè)置session的持續(xù)時(shí)間

在apache1.2以上的版本中,可以在httpd.conf里面設(shè)置:


KeepAlive on
KeepAliveTimeout 15


這樣就能限制每個(gè)session的保持時(shí)間是15秒。session的使用可以使得很多請(qǐng)求都可以通過同一個(gè)tcp連接來發(fā)送,節(jié)約了網(wǎng)絡(luò)資源和系統(tǒng)資源。

8、如何使得apache對(duì)客戶端進(jìn)行域名驗(yàn)證

可以在httpd.conf里面設(shè)置:


HostnameLookups on off double


如果是使用on,那么只有進(jìn)行一次反查,如果用double,那么進(jìn)行反查之后還要進(jìn)行一次正向解析,只有兩次的結(jié)果互相符合才行,而off就是不進(jìn)行域名驗(yàn)證。

如果為了安全,建議使用double;為了加快訪問速度,建議使用off。

9、如何使得apache只監(jiān)聽在特定的ip

修改httpd.conf,在里面使用


BindAddress 192.168.0.1


這樣就能使得apache只監(jiān)聽外界對(duì)192.168.0.1的http請(qǐng)求。如果使用:


BindAddress *


就表明apache監(jiān)聽所有網(wǎng)絡(luò)接口上的http請(qǐng)求。

當(dāng)然用防火墻也可以實(shí)現(xiàn)。

10、apache中如何限制http請(qǐng)求的消息主體的大小

在httpd.conf里面設(shè)置:


LimitRequestBody n


n是整數(shù),單位是byte。cgi腳本一般把表單里面內(nèi)容作為消息的主體提交給服務(wù)器處理,所以現(xiàn)在消息主體的大小在使用cgi的時(shí)候很有用。比如使用cgi來上傳文件,如果有設(shè)置:


LimitRequestBody 102400


那么上傳文件超過100k的時(shí)候就會(huì)報(bào)錯(cuò)。

11、如何修改
apache的文檔根目錄

修改httpd.conf里面的DocumentRoot選項(xiàng)到指定的目錄,比如:


DocumentRoot /www/htdocs


這樣http://localhost/index.html就是對(duì)應(yīng)/www/htdocs/index.html

12、如何修改apache的最大連接數(shù)

在httpd.conf中設(shè)置:


MaxClients n


n是整數(shù),表示最大連接數(shù),取值范圍在1和256之間,如果要讓apache支持更多的連接數(shù),那么需要修改源碼中的httpd.h文件,把定義的HARD_SERVER_LIMIT值改大然后再編譯。

13、如何使每個(gè)用戶有獨(dú)立的cgi-bin目錄

有兩種可選擇的方法:

(1)在Apache配置文件里面關(guān)于public_html的設(shè)置后面加入下面的屬性:


ScriptAliasMatch ^/~([^/]*)/cgi-bin/(.*) /home/$1/cgi-bin/$2

(2)在Apache配置文件里面關(guān)于public_html的設(shè)置里面加入下面的屬性:
<CENTER><ccid_nobr>
<table width="400" border="1" cellspacing="0" cellpadding="2"
bordercolorlight = "black" bordercolordark = "#FFFFFF" align="center">
<tr>
   <td bgcolor="e6e6e6" class="code" style="font-size:9pt">
   <pre><ccid_code>  
Options ExecCGI
SetHandler cgi-script


14、如何調(diào)整Apache的最大進(jìn)程數(shù)

Apache允許為請(qǐng)求開的最大進(jìn)程數(shù)是256,MaxClients的限制是256.如果用戶多了,用戶就只能看到Waiting for reply....然后等到下一個(gè)可用進(jìn)程的出現(xiàn)。這個(gè)最大數(shù),是Apache的程序決定的--它的NT版可以有1024,但Unix版只有256,你可以在src/include/httpd.h中看到:


#ifndef HARD_SERVER_LIMIT
#ifdef WIN32
#define HARD_SERVER_LIMIT 1024
#else
#define HARD_SERVER_LIMIT 256
#endif
#endif


你可以把它調(diào)到1024,然后再編譯你的系統(tǒng)。

15、如何屏蔽來自某個(gè)Internet地址的用戶訪問Apache服務(wù)器

可以使用deny和allow來限制訪問,比如要禁止202.202.202.xx網(wǎng)絡(luò)的用戶訪問:


order deny,allow
deny from 202.202.202.0/24

論壇徽章:
0
2 [報(bào)告]
發(fā)表于 2010-12-15 15:54 |只看該作者
您需要登錄后才可以回帖 登錄 | 注冊(cè)

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號(hào)-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號(hào):11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報(bào)專區(qū)
中國(guó)互聯(lián)網(wǎng)協(xié)會(huì)會(huì)員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請(qǐng)注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP