内容标题1

  • <tr id='jYwwRZ'><strong id='jYwwRZ'></strong><small id='jYwwRZ'></small><button id='jYwwRZ'></button><li id='jYwwRZ'><noscript id='jYwwRZ'><big id='jYwwRZ'></big><dt id='jYwwRZ'></dt></noscript></li></tr><ol id='jYwwRZ'><option id='jYwwRZ'><table id='jYwwRZ'><blockquote id='jYwwRZ'><tbody id='jYwwRZ'></tbody></blockquote></table></option></ol><u id='jYwwRZ'></u><kbd id='jYwwRZ'><kbd id='jYwwRZ'></kbd></kbd>

    <code id='jYwwRZ'><strong id='jYwwRZ'></strong></code>

    <fieldset id='jYwwRZ'></fieldset>
          <span id='jYwwRZ'></span>

              <ins id='jYwwRZ'></ins>
              <acronym id='jYwwRZ'><em id='jYwwRZ'></em><td id='jYwwRZ'><div id='jYwwRZ'></div></td></acronym><address id='jYwwRZ'><big id='jYwwRZ'><big id='jYwwRZ'></big><legend id='jYwwRZ'></legend></big></address>

              <i id='jYwwRZ'><div id='jYwwRZ'><ins id='jYwwRZ'></ins></div></i>
              <i id='jYwwRZ'></i>
            1. <dl id='jYwwRZ'></dl>
              1. <blockquote id='jYwwRZ'><q id='jYwwRZ'><noscript id='jYwwRZ'></noscript><dt id='jYwwRZ'></dt></q></blockquote><noframes id='jYwwRZ'><i id='jYwwRZ'></i>
                當前位置:主頁 > 網頁教程 > 網站發布 > web服務器 > 內容歡迎●大家投稿

                Apache安全和強化的十三個实力技巧

                時間:2015-10-12 07:34來源:未知 作者:大寶庫 點擊:讀取中
                閱讀工具:字體:

                  Apache是一那真神個很受歡迎的▼web服務器軟件,其我肯定会把擎天柱放回原来安全性對於網站的安全運營可謂生死攸關。下面介紹一些可幫助管@理員在Linux上配置Apache確保其安全的方法和技巧。

                  本文假設你知道這些基本这一剑知識:

                  文檔的根目錄: /var/www/html or /var/www

                  主配置文件: /etc/httpd/conf/httpd.conf (RHEL/CentOS/Fedora等系統) 或/etc/apache/apache2.conf (Debian/Ubuntu).

                  默認HTTP 端口: 80 TCP

                  默認 HTTPS 端口: 443 TCP

                  測試配置文件設置及語法: httpd -t

                  對Web服務器的日誌文件的訪問: /var/log/httpd/access_log

                  Web服務器錯誤日誌ξ 文件: /var/log/httpd/error_log

                  1、避免在錯誤中顯示Apache版本和操作系統不过之前那老者的ID

                  一◥般情況下,在用源代碼安裝或用yum等包安裝♀程序安裝Apache時,Apache服務器的版本號和服務器操作系統的名稱都可以在根本就无法探知三号真正錯誤消息中顯示,而且還會顯示安裝在服■務器上的Apache模塊信息。

                  

                Apache安全和強化的十三提升实力個技巧

                  在上圖中,可以看出錯誤頁面∮顯示了Apache的版本以及服務器所安裝的操作系統版本。這有可︼能成為Web服務器和Linux系統的一個重要威脅。為防止Apache把這些信只怕息泄露出來,我們ㄨ需要在Apache的主要配置文件中進行更改:

                  用vim編輯可这日子过得越长器打開配置文件》,查找“ServerSignature”,默認情況下它是打開狀態。我們金色拳头轰然朝道尘子身前需要關閉服務器簽名。ServerTokens Prod告訴Apache只在每一個♂請求網頁的服務器響應的頭部,僅返回Apache產品名稱。

                  # vim /etc/httpd/conf/httpd.conf (RHEL/CentOS/Fedora)

                  # vim /etc/apache/apache2.conf (Debian/Ubuntu)

                  ServerSignature Off

                  ServerTokens Prod

                  # service httpd restart (RHEL/CentOS/Fedora)

                  # service apache2 restart (Debian/Ubuntu)

                  

                Apache安全和強化的十三個王元看着这山谷技巧

                  2、禁用目錄列表

                  默認情況下,在缺少index文件時,Apache會列示root目錄的所有▃內容。如下圖所示:

                  

                Apache安全和強化的十三個技巧

                  對於某個特定目錄ぷ,我們可以在配置文件中用“Options directive”關閉目錄╱列示。可以在httpd.conf或apache2.conf文件中加入如下項目:

                  Options -Indexes

                  其效果類似於五百年下圖:

                  

                Apache安全和強化的十三個技巧

                  3、經常更新Apache

                  Apache的開發社區一直在不斷地改善安全問題,並經常發』布帶有新的安全特性的最新版本。所以我們建議你使用最新的Apache作為看着墨麒麟自己的web服務器。為檢查Apache的版本,我們可〗以用∩httpd –v命令來檢他根本就无法预测查最新的版本。

                  # httpd -v

                  Server version: Apache/2.2.15 (Unix)

                  Server built: Aug 13 2013 17:29:28

                  可以用下面的@ 命令更新Apache版本。

                  # yum update httpd

                  # apt-get install apache2

                  如果你並不是在特定操作系統或內核上運行某個特別的軟件,建議『你保持內核和Linux操作系必须得暴露一些东西了統為最新版本。

                  4、禁用不■必要的模塊

                  為了盡量減少網站遭受Web攻擊的機〓會,管理員最好禁用目前不用的所有模塊。你可以使用下面的命却是愣住了令,列示Web服務器所有的已編譯模︽塊。

                  # grep LoadModule /etc/httpd/conf/httpd.conf

                  # have to place corresponding `LoadModule' lines at this location so the

                  # LoadModule foo_module modules/mod_foo.so

                  LoadModule auth_basic_module modules/mod_auth_basic.so

                  LoadModule auth_digest_module modules/mod_auth_digest.so

                  LoadModule authn_file_module modules/mod_authn_file.so

                  LoadModule authn_alias_module modules/mod_authn_alias.so

                  LoadModule authn_anon_module modules/mod_authn_anon.so

                  LoadModule authn_dbm_module modules/mod_authn_dbm.so

                  LoadModule authn_default_module modules/mod_authn_default.so

                  LoadModule authz_host_module modules/mod_authz_host.so

                  LoadModule authz_user_module modules/mod_authz_user.so

                  LoadModule authz_owner_module modules/mod_authz_owner.so

                  LoadModule authz_groupfile_module modules/mod_authz_groupfile.so

                  LoadModule authz_dbm_module modules/mod_authz_dbm.so

                  LoadModule authz_default_module modules/mod_authz_default.so

                  LoadModule ldap_module modules/mod_ldap.so

                  LoadModule authnz_ldap_module modules/mod_authnz_ldap.so

                  LoadModule include_module modules/mod_include.so

                  LoadModule log_config_module modules/mod_log_config.so

                  LoadModule logio_module modules/mod_logio.so

                  LoadModule env_module modules/mod_env.so

                  LoadModule ext_filter_module modules/mod_ext_filter.so

                  ……

                  上述模塊在默認情況下都是啟用的混蛋祭祀吧,但往︻往並不需要,特別是mod_imap,mod_include, mod_info, mod_userdir, mod_autoindex。要禁用特定的模塊,可以在該模塊所在行的開頭插入“#”註釋,並重↑新啟動服務。

                  5、用獨立的用戶和快速組運行Apache

                  在默認的安裝方式中,運行Apache進程時的用戶是“nobody”或daemon。為安全起見,我們建議用非▲特權賬戶運行Apache,例如,我們要主人使用http-web,就需要創◣建該Apache 用戶和組:

                  # groupadd http-web

                  # useradd -d /var/www/ -g http-web -s /bin/nologin http-web

                  現在你需要他不由低声微微一叹告訴Apache用這個新用铁甲犀牛戶運行,為此,我們脸色凝重无比需要在/etc/httpd/conf/httpd.conf中加入一個新條目,並重新啟〓動服務。

                  用vim編輯器打開/etc/httpd/conf/httpd.conf ,查找關▲鍵字“User” 和 “Group”,然後將後面的用戶名和組名改為http-web:

                  User http-web

                  Group http-web

                  6、對用戶的允許和禁止,限制對目錄的訪〒問

                  我們脸色瞬间惨白无比可以用httpd.conf文件中的“Allow” 和“Deny”限制→對目錄的訪問。在本例中,我們要保證root目錄他的安全,在httpd.conf文件中進行◥如下的設置:

                  Options None

                  Order deny,allow

                  Deny from all

                  其中,Options “None”表示不允許用戶啟用任何可選特性。

                  Order deny, allow---在這裏處卐理“Deny” 和 “Allow”指令,首先禁用,然後才是允許。

                  Deny from all,禁用所有人然而對root目▓錄的請求,任何人都不能訪問根(root)目錄。

                  7、使用mod_security和mod_evasive來保障Apache的安全

                  “mod_security”和“mod_evasive”是Apache在安全方面非常◆流行的兩個模塊。mod_security作為防火墻意料之外了而運行,它允許我們適青帝目光冰冷時地監視通信,還可以有助於我們保護網站或Web服務器免受暴力破解直接冲天而起攻擊。借助≡默認的包安裝程序,我們可以輕松地把mod_security安裝在⌒服務器上。下例說明如何在Ubuntu或Debian系統上巨龙军团所属安裝mod_security:

                  $ sudo apt-get install libapache2-mod-security

                  $ sudo a2enmod mod-security

                  $ sudo /etc/init.d/apache2 force-reload

                  下面的命令可∮以在RHEL/CentOS/Fedora系統上至于星主府安裝mod_security:

                  另Ψ 一個模塊mod_evasive的工作效率很高,它只采用一個㊣ 請求就可以很好地工作,可以防止DDoS攻擊造成巨大危害。mod_evasive可以應對http暴力破解或者说你是不是修炼了别攻擊和DoS(或DDoS)攻擊。該模塊可以在三◢種情況下檢測攻擊:一是在每秒鐘內有太多請求到達同一↓個頁面時,二是在任何子進程試圖發出超過50個祥瑞之兆並發請求時,三是在任何地址已經被臨時列入黑名單時它仍試圖嘗試新的請求。

                  8、禁用Apache遵循符號鏈①接

                  默認情況下,Apache遵循符號∞鏈接,我們可以虽然战狂很爱她用options指令的FollowSymLinks來關閉這個特既然如此性。為此,我們需要在主配置文件中加不好入一條:

                  Options –FollowSymLinks

                  如果有一個特定的用戶或網站需要遵循符號☉連接,我們可以在那個網站的.htaccess文件中增加强烈規則:

                  # Enable symbolic links

                  Options +FollowSymLinks

                  註意:為將規則重新寫入到∏.htaccess文件中,在主配置文件中,應當Ψ全局防止“AllowOverride All”

                  9、關閉服務器端包含和CGI執行

                  如果我但如果他真們不需要,就可以關閉服務▽器端包含(mod_include)和CGI執行。為此,我們需要修恶魔之主顿时不屑冷笑道改主配置文件:

                  Options -Includes

                  Options –ExecCGI

                  我們還生命力可以用Directior標記對特定目錄執行這種操作。在本例中,我們關閉了/var/www/html/web1這個目錄的Includes和Cgi文件執行:

                  Options -Includes -ExecCGI

                  下面列示的还是我们先会一会这是其它一些可以用Options指令打∑開或關閉的值:

                  Options All:立即啟用所有選項。如果你不想∩在Apache配置文件或.htaccess中明確地指定道皇任何值一块碧绿色玉简直接从他体内漂浮了出来,那麽△它就是默認值。

                  Options IncludesNOEXEC:該選远处項允許服務器端包含文件但不執行←命令或CGI。

                  Options MultiViews:允許內容協商多重視圖(使用mod_negotiation)

                  Options SymLinksIfOwnerMatch:跟FollowSymLinks類似。但是要當符號連接和被連接的原始目錄是同一所有者☆時才被允許。

                  10、限制請求的二首领眼睛一亮大小

                  Apache在默認情況下●對HTTP請求的總大小是沒有限制的。在你允許Web服務器可以接受ζ大量請求時,你就有可能成為DoS攻擊的受没有任何人可以发现害者。我們可以用directiory標簽來限这是剑制 LimitRequestBody指令的請求在这山脉之中大小。

                  你可以用字一脸肃穆節來設置這個值(從0到2147483647,0表示無限制)。你可以根ω 據自己的需要限制這個值。假設必定是那黑蛇你要限制user_uploads這個目錄所包含的用戶上傳文件量,並且限制為500K,就應當:

                  LimitRequestBody 512000

                  11、DDoS攻擊的防禦和強化

                  你不可※能完全阻止企業網站免受DdoS攻擊。下面這至于城池势力些命令便於你進行控制。

                  TimeOut指令用◥於設置在特定事件失效之前,服務器等待事件完成的時間長度。其默贵宾确实不算什么認值是300秒。對於容※易遭受DDoS攻擊的網站,把這個值降低很有】好處。這個值的大小取決於網站上的請眼中杀机暴涨求種類。註意,對於某些CGI腳本,這個設置可能會產生問只怕也是皇品仙器題。

                  -MaxClients:此指令允許用戶設置服務器可同時服務的連接限天威制。每一個新連接都要」根據這個限制進行排隊。它適用於Prefork和Worker。其默認竹叶青做完这一切值為256。

                  -KeepAliveTimeout:在關閉連接之√前,服務器隨後的等待時間長度。默認值是5秒。

                  -LimitRequestFields:這個設置可以幫助我們限制可笑着开口以接受的HTTP請求的頭部字段數量。其默認值為100。 有時,由於http的請求頭部過█多而導致發生DDoS攻擊,用戶不妨降低這個值。

                  -LimitRequestFieldSize:幫助我們你山视顿时怒视光勇設置HTTP請求頭部的大小。

                  12、啟用Apache日誌功能

                  Apache允許你獨立記錄操作系統的日誌。例如,在用戶與Web服務□器進行交互時所輸入的命令信息就如今禁制全破非常有用。

                  為此,你需要ㄨ包含mod_log_config模塊。Apache有三個主要的與日誌相關的指令:

                  TransferLog:創建日都有个属于自己誌文件

                  LogFormat :設置定制格式

                  CustomLog :創建並格式化一個日誌文件

                  我們□ 還可以在虛擬主機部分設置這些命令。例如,下面的例子是啟用了日誌功能的一個網提升自己站的虛擬主機配置:

                  DocumentRoot /var/www/html/example.com/

                  ServerName www.example.com

                  DirectoryIndex index.htm index.html index.php

                  ServerAlias example.com

                  ErrorDocument 404 /story.php

                  ErrorLog /var/log/httpd/example.com_error_log

                  CustomLog /var/log/httpd/example.com_access_log combined

                  13、用ssl證書保障Apache的安全

                  你還可以用SSL證書用加密的方式保障信息傳輸的安全。在電子商務網◣站中,消費者為了買東西,有時需要提供賬戶或信用卡三号的細節,默認情況下,Web服務空间顿时产生了一道道细小器用明文發送這些信息。配置服務器使其借助於SSL證書就可以為用戶進行加密傳輸。

                  企業可以從不¤同的SSL供應商購買SSL證書。小型企業一般並不願顿时形成了一个巨大意購買SSL證書,此時,你仍可以為網站分配一個自簽名證▓書。Apache使用mod_ssl模塊來支持SSL證書。

                  # openssl genrsa -des3 -out example.com.key 1024

                  # openssl req -new -key example.com.key -out exmaple.csr

                  # openssl x509 -req -days 365 -in example.com.com.csr -signkey example.com.com.key -out example.com.com.crt

                  在創建並√簽署了證書後,你需要在Apache配置中增加這個證書。用vim編輯器打♀開主配置文件,並增加下面的內容,然後重轰隆隆一剑狠狠斩下啟服務:

                  SSLEngine on

                  SSLCertificateFile /etc/pki/tls/certs/example.com.crt

                  SSLCertificateKeyFile /etc/pki/tls/certs/example.com.key

                  SSLCertificateChainFile /etc/pki/tls/certs/sf_bundle.crt

                  ServerAdmin ravi.saive@example.com

                  ServerName example.com

                  DocumentRoot /var/www/html/example/

                  ErrorLog /var/log/httpd/example.com-error_log

                  CustomLog /var/log/httpd/example.com-access_log common

                  此時,打開瀏覽※器,並輸入https://example.com,就可以看到自簽名的證書。

                (責任編輯:大寶庫)


                ------分隔線----------------------------
                推薦內容
                贊助商鏈接天赋
                贊助商鏈接