天天看點

Linux的httpd服務介紹和部署支援使用者認證

軟體介紹

用戶端代理軟體

    IE,firefox,chroome,opera

伺服器端軟體

     httpd,Nginx,Tengine,ISS,Lighthttp

應用程式伺服器

      ISS,Tomcat(JSP,open sourec),Websphere(IBM,JSP,commodity)Weblogic(oracle,JSP,commodity)

      JBoss(redhat,JSP),Resin,php

httpd安裝及配置

ASF:Apache Software Foundation   http://www.apache.org/

     web:httpd

         Tomcat

         Hadoop

httpd:           http://httpd.apache.org/

      Web Server,Open Sourec

      2.4,2.2,2.0

httpd軟體安裝:

     rpm

     源碼軟體

httpd特性:

    事先建立程序

    按需維持适當的程序

    子產品化設計,核心較小,各種功能都能通過子產品添加:子產品可以在運作時啟用

          支援運作配置,支援單獨編譯子產品

    支援多種虛拟主機的配置

          基于IP的虛拟主機

          基于端口的虛拟主機

          基于域名的虛拟主機

    支援https協定(mod_ ss1)

    支援使用者認證

    支援基于IP或主機名的通路控制機制

    支援每目錄的通路控制

    支援URL重寫

安裝httpd軟體

[[email protected] ~]# yum install -y httpd
           

開啟服務

[[email protected] ~]# systemctl start httpd
           

開機自啟

[[email protected] ~]# systemctl enable httpd
           

檢視端口号

[[email protected] ~]# ss -antp |grep httpd
           
Linux的httpd服務介紹和部署支援使用者認證

檢視它啟動的程序

[[email protected] ~]# ps aux|grep httpd
           
Linux的httpd服務介紹和部署支援使用者認證

httpd目錄:

      /etc/httpd/ conf                 主配置檔案  httpd. conf

      /etc/httpd/conf.d/* . conf       子配置檔案

      /var/log/httpd  日志

                access_ .log  通路日志

                error_ log  錯誤日志

      /var/www/html  預設靜态頁面的目錄

      /var/www/cgi-bin  預設動态頁面的目錄

Linux的httpd服務介紹和部署支援使用者認證

CGI: Comnon Gateway Interface通用網關接口

    讓web伺服器啟動某應用程式解析動态頁面的機制開發動态網頁的語言:

      perl, python, java (Servlet JSP), php

      PHP    LAMP , LNMP

      JSP    Tomcat, Weblogical

      Python  mod_ wsgi子產品

 httpd配置檔案 ----  /etc/httpd/conf/httpd.conf ;

diretive value

    指令不區分大小寫

    value區分大小寫

1)設定httpd的主目錄

ServerRoot "/etc/httpd"    

2)監聽ip的位址和端口

    #Listen 12.34.56.78:80

     Listen 80

3)指定子配置檔案的路徑及名稱

 Include conf.modules.d/*.conf

4)設定運作httpd程序的使用者及使用者組名稱

User apache

Group apache

5)長連接配接相關的配置

KeepAlive on

MaxKeepAliveRequests 100

KeepAliveTimeout 15

6)設定管理者的郵箱

ServerAdmin [email protected]

7)設定網站的主機名

ServerName www.a. org

8)設定網頁目錄

DocumentRoot "/var/www/html" 

9)設定網頁的首頁名稱

DirectoryIndex index. html

10)針對目錄權限

<Directory "/var/www/html">

  Options Indexes FollowSymLinks

    AllowOverride None

    Require all granted

</Directory>

A) Require all granted

    允許所有的用戶端通路該目錄的頁面檔案

B)Options Indexes FollowSymLinks

   定義目錄下的網頁檔案被通路時的通路屬性

       None:不支援任何選項

       Indexes:無index.html 時,列出所有的檔案,禁用

       FollowSymLinks:存在軟連結網頁檔案時,是否隻可以通路對應原網頁檔案的内容,禁用

       SymLinksifOwnerMatch:允許通路軟連結,但所屬必須和運作httpd程序的所屬一緻

       Includes:允許執行伺服器端包含(SSI格式的網頁檔案),禁用

       ExeCGI:允許運作CGI腳本

       Multiviews:内容協商機制(根據用戶端的語言不同顯示不同的網頁),多視圖:禁用

       A11:啟用所有選項

C)Allowoverride None

      是否允許建立.htaccess檔案覆寫提權配置

檢視幫助手冊

[[email protected] csdn]# yum -y install httpd-manual

http://192.168.196.131/manual/

支援使用者認證

示例:用戶端通過使用者hei通路首頁(/var/www/html)

(1)建立使用者名稱和密碼

[[email protected] ~]# htpasswd -c /etc/httpd/.webuser hei
New password: 
Re-type new password: 
Adding password for user hei
           

(2)編輯配置檔案

[[email protected] ~]# vim /etc/httpd/conf/httpd.conf
           
<Directory "/var/www/html">
   
    Options Indexes FollowSymLinks
    AllowOverride AuthConfig
    AuthType Basic
    AuthName "Resttrict test"
    AuthUserFile /etc/httpd/.webuser
    Require valid-user
   #Require user 使用者名稱   隻允許指定使用者通路

</Directory>
           

檢測配置檔案文法

[[email protected] ~]# httpd -t

Syntax OK
           

(3)重新開機服務

[[email protected] ~]# systemctl restart httpd
           
Linux的httpd服務介紹和部署支援使用者認證

(4)再次建立一個使用者wei

建立使用者名稱和密碼

[[email protected] ~]# htpasswd  /etc/httpd/.webuser wei

[[email protected] ~]# cat /etc/httpd/.webuser 
hei:$apr1$nBaKumC0$lsSLO6LqDQ58CWLjXIfJT0
wei:$apr1$ovl.gsGg$SHvY5Aksj9MdZv9u8E5XF1
           

基于用戶端ip位址的認證

1) 允許所有喜戶端通路

      Require all granted

2)拒絕所有端通路

      Require al1 denied3)僅允許某主機通路

      Require ip 192.168.1.14) 明确拒絕某主機通路

 <RequireAll>

       Require all granted

       Require not ip 192.168.96.1

     </RequireAll>

 windos通路效果圖

Linux的httpd服務介紹和部署支援使用者認證

檢測配置檔案文法

[[email protected] ~]# httpd -t

Syntax OK

重新開機服務

[[email protected] ~]# systemctl restart httpd