如何在Ubuntu上搭建一臺安全的Apache Web服務(wù)器?

2017-03-10 17:00  出處:其他  作者:佚名   責(zé)任編輯:李顯梅 

  本教程假設(shè)你已有一臺在運行的Ubuntu服務(wù)器,網(wǎng)絡(luò)方面已設(shè)置好,而且可以通過SSH進行訪問。

  Apache2是許多安裝的Linux發(fā)行版使用的默認(rèn)Web服務(wù)器。它不是對所有環(huán)境來說唯一可用的Web服務(wù)器,也不是最佳的Web服務(wù)器,但是它適合許多使用場景。在安裝過程中,系統(tǒng)可能會詢問你哪個Web服務(wù)器要自動重新配置。選擇“apache2”即可。

  安裝Apache2

  使用下面這個命令,安裝Apache2及其他庫。

?

1
$ sudo apt-get -y install apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt libapache2-mod-suphp libopenssl-ruby libapache2-mod-ruby

  更新時區(qū)(TimeZone)和檢查正確時間

  為了減小共享數(shù)據(jù)或鏡像數(shù)據(jù)方面的混淆,所有服務(wù)器在運行時都應(yīng)該盡可能接近同步狀態(tài)。一些加密密鑰管理系統(tǒng)需要準(zhǔn)確的時間。最后,就企業(yè)服務(wù)器而言,《薩班斯-奧克斯利法案》(Sarbanes-Oxley)和《健康保險可攜性及責(zé)任性法案》(HIPAA)的安全規(guī)則要求正確的時間戳機制。

1
2
3
$ sudo apt-get -y install openntpd tzdata
$ sudo dpkg-reconfigure tzdata
$ sudo service openntpd restart

  禁止AppArmor沖突

  雖然AppArmor這個套件的確提供了一層額外的安全,但在我看來,需要為每個系統(tǒng)創(chuàng)建自定義配置文件。這不是本教程所探討的內(nèi)容。所以眼下,我們會禁用AppArmor,防止與任何默認(rèn)的配置發(fā)生沖突。

1
2
3
$ sudo /etc/init .d /apparmor stop
$ sudo update-rc.d -f apparmor remove
$ sudo apt-get remove apparmor apparmor-utils

  注意:如果是生產(chǎn)環(huán)境下的Web服務(wù)器,不建議禁用AppArmor。如果有些人想創(chuàng)建自定義的AppArmor配置文件,請參閱官方說明文檔(http://wiki.apparmor.net/index.php/Documentation)。

  阻止分布式拒絕服務(wù)(DDoS)攻擊

  DDoS攻擊是一種分布式拒絕服務(wù)攻擊。有一個Apache模塊可以阻止這類攻擊。

?

1
2
3
$ sudo apt-get -y install libapache2-mod-evasive
$ sudo mkdir -p /var/log/apache2/evasive
$ sudo chown -R www-data:root /var/log/apache2/evasive

  把下面這個命令添加到mod-evasive.load的末尾處。

?

1
2
3
4
5
6
7
8
$ sudo nano /etc/apache2/mods-available/mod-evasive .load DOSHashTableSize 2048
DOSPageCount 20 # 請求同一頁面的最大數(shù)量
DOSSiteCount 300 # 同一偵聽器上同一客戶端IP請求任何對象的總數(shù)量
DOSPageInterval 1.0 # 頁面數(shù)量閾值的間隔
DOSSiteInterval 1.0   # 站點數(shù)量閾值的間隔
DOSBlockingPeriod 10.0 # 客戶機IP被阻止的時間段
DOSLogDir “ /var/log/apache2/evasive
DOSEmailNotify admin@domain.com

  阻止Slowloris攻擊

  還有一個Apache模塊可以阻止Slowloris攻擊,不過模塊名稱取決于你使用的Ubuntu的具體版本。如果是Ubuntu 12.10或以后版本:

?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
$ sudo apt-get -y install libapache2-mod-qos
然后,檢查qos.conf中的配置:
 
$ sudo nano /etc/apache2/mods-available/qos .conf
## 服務(wù)質(zhì)量方面的設(shè)置
 
# 處理來自多達100000個不同IP的連接
 
QS_ClientEntries 100000
# 只允許每個IP僅50條連接
 
QS_SrvMaxConnPerIP 50
# 活動TCP連接的最大數(shù)量限制在256條
 
MaxClients 256
# 當(dāng)70%的TCP連接被占用時,禁用保持活動連接狀態(tài)
 
QS_SrvMaxConnClose 180
# 最小請求/響應(yīng)速度(拒絕阻塞服務(wù)器的慢速客戶端,即slowloris保持連接開啟,不提出任何請求):
 
QS_SrvMinDataRate 150 1200
# 并限制請求標(biāo)題和主體(注意,這還限制了上傳和發(fā)帖請求):
 
# LimitRequestFields 30
# QS_LimitRequestBody 102400

  注意:如果你運行12.04之前的Ubuntu版本,改而使用下面這個命令:

  $ sudo apt-get -y install libapache2-mod-antiloris

  檢查antiloris.conf中的配置

  $ sudo nano /etc/apache2/mods-available/antiloris.conf

  # 每個IP地址處于READ狀態(tài)的最大并行連接數(shù)量

  IPReadLimit 5

  阻止DNS注入攻擊

  Spamhaus這個模塊使用域名系統(tǒng)黑名單(DNSBL),目的是為了阻止通過Web表單實現(xiàn)的垃圾郵件轉(zhuǎn)發(fā),防止URL注入攻擊,阻止來自機器人程序的http DDoS攻擊,通常保護服務(wù)器,遠離已知的惡意IP地址。

?

1
2
3
4
5
6
$ sudo apt-get -y install libapache2-mod-spamhaus
$ sudo touch /etc/spamhaus .wl Append the config to apache2.conf
$ sudo nano /etc/apache2/apache2 .conf
MS_METHODS POST,PUT,OPTIONS,CONNECT
MS_WhiteList /etc/spamhaus .wl
MS_CacheSize 256

  重啟Apache裝入新模塊

  $ sudo service apache2 restart

  現(xiàn)在Web服務(wù)器已安裝完畢,并在正常運行。將Web瀏覽器指向你的域,即可看到證明你一切正常的默認(rèn)消息。作為最后的檢查機制,運行下面這個命令,看看你的服務(wù)器有沒有任何錯誤信息。要是有錯誤信息,你需要上谷歌搜索一下,立馬解決這些錯誤。

  $ sudo tail -200 /var/log/syslog

ubuntu安裝
依舊很受歡迎!Ubuntu 17.04 Beta 1已發(fā)布
依舊很受歡迎!Ubuntu 17.04 Beta 1已發(fā)布

現(xiàn)如今,最為主流的桌面操作系統(tǒng)就莫過于微軟的Windows與蘋果的 OS X操作系統(tǒng)了,不過對于一些喜歡小眾操作系統(tǒng) 的用戶而言,Ubuntu這個操作系統(tǒng)無疑是很受歡迎的。據(jù)外媒報道,在上...

黑目 2017-02-28 評論: 2 標(biāo)簽: ubuntu安裝  

用開源的!Ubuntu不再集成AMD官方驅(qū)動
用開源的!Ubuntu不再集成AMD官方驅(qū)動

Ubuntu下一個版本決定不再集成AMD官方的顯卡驅(qū)動了!AMD的Ubuntu驅(qū)動已經(jīng)久違更新,Ubuntu鼓勵用戶使用開源的AMD顯卡驅(qū)動。...

佚名 2016-03-15 評論: 1 標(biāo)簽: ubuntu安裝  

沒參展的魅族 竟和Ubuntu在MWC發(fā)售新機
沒參展的魅族 竟和Ubuntu在MWC發(fā)售新機

魅族與Ubuntu的合作始于MX4,當(dāng)時就引起了不少關(guān)注,魅族此次與Canonical合作,宣布推出PRO 5 Ubuntu版本。不過與前者的小范圍售賣不同,魅族Pro 5 Ubuntu版將面向國際范圍銷售,這也...

奎托斯 2016-02-22 評論: 64 標(biāo)簽: ubuntu安裝   魅族  

能當(dāng)PC使?首款Ubuntu平板電腦將亮相MWC
能當(dāng)PC使?首款Ubuntu平板電腦將亮相MWC

近日,西班牙廠商BQ推出了第一款基于Ubuntu系統(tǒng)的平板機,型號為“Aquaris M10 Ubuntu Edition”。Ubuntu系統(tǒng)母公司Canonical透露,該款平板預(yù)裝的Ubuntu系統(tǒng)已經(jīng)針對平板環(huán)境進行了...

豆腐店店長 2016-02-15 評論: 1 標(biāo)簽: ubuntu安裝   平板電腦專業(yè)測試  

首款Ubuntu平板電腦發(fā)布:還能當(dāng)PC使?
首款Ubuntu平板電腦發(fā)布:還能當(dāng)PC使?

近日,西班牙廠商BQ推出了第一款基于Ubuntu系統(tǒng)的平板機,型號為“Aquaris M10 Ubuntu Edition”。Ubuntu系統(tǒng)母公司Canonical透露,該款平板預(yù)裝的Ubuntu系統(tǒng)已經(jīng)針對平板環(huán)境進行了...

豆腐店店長 2016-02-06 評論: 28 標(biāo)簽: ubuntu安裝   平板電腦專業(yè)測試  

Ubuntu版MX4終于來了! 1799元正式發(fā)售
Ubuntu版MX4終于來了! 1799元正式發(fā)售

魅族已經(jīng)和Ubuntu合作有好些年了,此前就有傳聞魅族將聯(lián)手Ubuntu推出搭載Ubuntu的產(chǎn)品,可是此前卻只是聞其聲未見其人,終于在前段時間,網(wǎng)上爆出了一段Ubuntu版魅族MX4的視頻,至此...

丟丟 2015-05-18 評論: 44 標(biāo)簽: ubuntu安裝  

將搭載Ubuntu系統(tǒng) 魅族MX4新版本曝光
將搭載Ubuntu系統(tǒng) 魅族MX4新版本曝光

上月底,魅族和Canonical于珠海魅族總部簽署了戰(zhàn)略合作協(xié)議,而近日,外媒gsmarena給出了答案,曝光了一張來自消息人士的圖片,圖片中的手機正是MX4,而它搭載的UI明顯不是Flyme,更...

小舅子 2014-12-05 評論: 165 標(biāo)簽: ubuntu安裝   魅族  

查看更多