1 / 54

課程參與度之評估方式

課程參與度之評估方式. 上課時必須專心聽講,跟上進度,參與討論 扣分項目 玩線上遊戲一次扣 1 分 玩手機一次扣 1 分 睡覺一次扣 1 分 聊天一次扣 1 分 無法回答老師提出的問題一次扣 1 分 加分項目 主動回答老師的問題一次加 2 分 找出老師程式中的錯誤一次加 1 分 修正老師程式中的錯誤一次加 4 分. 作業系統實務 Linux Web Server 管理. 鄧姚文. 學習目標. 認識 HTTP 通訊協定 了解 Linux 對網路服務的防護 安裝與啟動 Apache 網頁伺服器 了解 Apache 基本設定的意義 活用模組功能

yoshi
Download Presentation

課程參與度之評估方式

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 課程參與度之評估方式 • 上課時必須專心聽講,跟上進度,參與討論 • 扣分項目 • 玩線上遊戲一次扣1分 • 玩手機一次扣1分 • 睡覺一次扣1分 • 聊天一次扣1分 • 無法回答老師提出的問題一次扣1分 • 加分項目 • 主動回答老師的問題一次加2分 • 找出老師程式中的錯誤一次加1分 • 修正老師程式中的錯誤一次加4分

  2. 作業系統實務 LinuxWeb Server 管理 鄧姚文

  3. 學習目標 認識HTTP通訊協定 了解Linux對網路服務的防護 安裝與啟動Apache網頁伺服器 了解Apache基本設定的意義 活用模組功能 建立支援php語言功能的網頁伺服器 熟悉目錄的存取控制與選項功能

  4. 大綱 HTTP通訊協定原理 Linux的安全防護機制 安裝Apache 啟動Apache apache的基本設定 存取控制

  5. 網頁伺服器架設 實作HTTP通訊協定的伺服器軟體稱為網頁伺服器 Web Server Apache軟體基金會(Apache software Foundation),主要提供有關Apache伺服器法律、商業與組織方面的支援

  6. Apache提供的功能 具網頁功能的伺服器 SSL提供網頁伺服器與瀏覽器之間以加解密方式溝通的安全技術標準 php模組提供PHP動態網頁處理語言 網頁目錄帳號驗證功能

  7. 架設Apache應具備能力 • HTTP通訊協定原理 • 瞭解HTTP通訊協定的概念,如TCP/IP知識與網頁的要求(Request)與回應(Response)。 • 套件安裝 • 使用yum或rpm指令進行RPM套件安裝。 • 修改設定檔 • 使用vi或nano文字編輯器,編輯文字檔與儲存檔案。

  8. 架設Apache應具備能力 • 服務啟動與停止 • 需使用service或Apache提供指令啟動、停止與重啟Apache服務。 • 驗證伺服器運作正常與否 • 使用瀏覽器或lynx指令連至架設好的Apache網頁伺服器,可以使用Windows的IE或Firefox等瀏覽器。

  9. HTTP通訊協定原理 HTTP(HyperText Transfer Protocol)是網際網路的要素 由網際網路協會與Internet工作小組所制定的通訊協定 提供一個接收與傳送網頁頁面資料的國際標準 基於TCP的的通訊協定 產生要求(request)的客戶端(client) 接收要求而產生回應(response)的伺服器端(server)

  10. HTTP通訊協定原理 由客戶端發起一個HTTP要求封包,伺服器收到HTTP要求後,依照要求的封包內容,將伺服器所負責的資源以HTTP回應的封包格式回傳予客戶端

  11. Ubuntu 安裝 Apache Web Server • 檢查是否已經安裝 apache2 ? • dpkg --list | grep apache2 • 所需套件: • apache2-mpm-prefork • apache2-utils • apache2.*-bin • apache2.*-common

  12. Ubuntu 安裝 Apache Web Server • 搜尋 apache 套件 • apt-get update • apt-cache search apache • 安裝 apache2 套件 • apt-get -y install apache2

  13. Apache 相關目錄與檔案 • 主目錄 /etc/apache2 • apache 主要安裝目錄,目錄下有設定檔目錄conf.d/、模組設定目錄 mods-available, mods-enabled,網站設定目錄 sites-available, sites-enabled等 • *-available 內含全部的設定 • *-enabled 內含目前被啟用的設定 • 設定檔 /etc/apache2/apache2.conf • apache 的主設定檔,所有和伺服器運作有關的設定值都放在這個文字檔中。

  14. Apache 相關目錄與檔案 • 套件有關目錄檔案 • 附加設定檔放置目錄 /etc/apache2/conf.d/ • 細部設定檔案 • 記錄檔 /var/log/apache2/ • 存取記錄 access.log • 錯誤記錄檔 error.log

  15. Apache 相關目錄與檔案 • 網頁根目錄 /var/www/ • 在 /etc/apache2/sites-enabled/000-default 裡設定 • 網址 http://localhost/index.html 對應到檔案 /var/www/index.html

  16. 啟動 Apache • 利用 service 指令 • 啟動:sudo service apache2 start • 停止:sudo service apache2 stop • 重新啟動:sudo service apache2 restart • 另一種重新啟動apache 的方式sudo apache2ctl restart

  17. 檢查 Apache 是否運作正常? • 使用瀏覽器,在網址列打入主機的 IP 位址或 localhost測試 • http://127.0.0.1 • http://localhost • 先以 ifconfig查 IP,然後輸入 http://myip • 若運作正常,應看到:

  18. Apache 的基本設定 • 檢視下列檔案 • /etc/apache2/apache2.conf • /etc/apache2/envvars • /etc/apache2/magic • /etc/apache2/ports.conf • 重要設定 • mpm_event • User, Group • AccessFileName • ErrorLog • Include

  19. Apache 的基本設定 • 檢視下列目錄 • /etc/apache2/sites-enabled • /etc/apache2/sites-available • /etc/apache2/mods-available • /etc/apache2/mods-enabled

  20. userdir使用者個人網站 • 模組設定 • mod_userdir • Linux 系統內的每一個使用者自己一個網站

  21. userdir使用者個人網站 • 啟用個人網站功能 • 檢視下列檔案 • /etc/apache2/mods-available/userdir.* • 在 mods-enabled 內建立 LINK • 重新啟動 apache

  22. userdir使用者個人網站 • 測試個人網站 • 在使用者家目錄內建立目錄:cd ~chmod 711 .mkdirpublic_html • 建立簡易網頁cd ~/public_htmlecho "<h1>你好:)</h1>" > index.html • 瀏覽網址 http://localhost/~帳號

  23. 練習:個人網站 修改 Apache 的設定,啟動個人網站功能 建立使用者帳號 student 在 student 的家目錄之中建立 public_html目錄,並在其中放置一個網頁名稱為index.php 修改 /etc/apache2/mods-enabled/php5.conf 讓使用者個人網站也能使用 PHP 功能 以 http://127.0.0.1/~student/ 檢視之

  24. 開啟使用者個人網站使用PHP功能sudo vi /etc/apache2/mods-enabled/php5.conf 在這一行前面加一個 # 令這個指令變成註解,失去效用。

  25. 個人網站裡的 index.php <?php phpinfo(); ?>

  26. Aliases 別名/虛擬目錄 網頁位址上的目錄不一定要在 Apache 所設定的網頁根目錄 /var/www/下 別名 Alias 指令能夠建立網頁位址上的別名,並對應到系統目錄

  27. Aliases 別名/虛擬目錄 • 觀察 /etc/apache2/sites-available/default 裡的設定 • ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/ • Alias /doc/ "/usr/share/doc/" • 觀察 phpMyAdmin的設定: • /etc/apache2/conf.d/phpmyadmin.conf

  28. 存取控制 Access Control 可以為特定範圍訂定存取控制的選項 如限定IP 位址可存取 列出目錄內的檔案清單等 以「< 標籤>」方式指 定功能的對象或範圍,如特定目錄、網址或檔案名稱 可使用<Directory>、<Location>、<Files> 等標籤

  29. 存取控制 Access Control 目錄標籤規格

  30. 存取控制 Access Control • apache 提供一個細部的調整功能,能讓某特定目錄或檔案成為有存取控制的功能 • 讓某個IP 無法讀取、允許連結作用或以帳號密碼驗證後才能存取目錄內容 • IP 存取功能處理順序- Order 指令 • 判斷准許(Allow)或拒絕(Deny)的順序 • 先 Allow 再 Deny:負面表列,基本上准許,除了…之外 • 先 Deny 再 Allow:正面表列,一律不准,除了…之外

  31. 存取控制 Access Control • 限定IP 位址存取選項功能 • 讓某個IP 無法讀取、允許連結作用或以帳號密碼驗證後才能存取目錄內容 • IP 存取功能處理順序- Order 指令

  32. 存取控制 Access Control • IP 存取功能處理順序 • Allow 指令 • 指定允許存取的IP 或IP 範圍,可用「all」代表所有的IP • Allow from all:允許所有IP 存取此目錄。 • Allow from 192.168.1.:允許開頭為 192.168.1. 的 IP 存取 • Allow from 172.17.1.35:允許該 IP 存取目錄內容 • Allow from 10.0.0.0/8:允許該子網存取目錄內容

  33. 存取控制 Access Control • IP 存取功能處理順序 • Deny 指令 • 指定拒絕存取的IP 或IP 範圍,可用「all」代表所有的IP • Deny from all:拒絕所有 IP 存取此目錄。 • Deny from 192.168.1.15:拒絕該 IP 存取目錄內容。 • Deny from 192.168.0.0/24:拒絕子網存取目錄內容。

  34. 存取控制 Access Control • 實務範例一 • 網頁目錄想要公開 • 給所有的外部IP 存取,但有一個 • IP:172.17.1.35,我們想拒絕它存取網頁資料

  35. 存取控制 Access Control • 實務範例二 • 公司內部專用的網頁伺服器, 希望能夠只將專案文件目錄/var/www/html/project/ 開放給192.168.2.x 的IP 存取,其餘IP 皆拒絕存取

  36. 存取控制 Access Control • 存取選項- Options 指令 • 特定目錄的有預設的「自動檔案清單」與「允許符號連結」等選項功能 • None • 代表不使用所有選項。 • Indexes • 啟用自動檔案清單,客戶端要求某個目錄內容,而該目錄內又沒有如index.html 等預設文件時,Indexes 選項會列出該目錄的檔案清單

  37. 存取控制 Access Control • 存取選項- Options 指令 • 特定目錄的有預設的「自動檔案清單」與「允許符號連結」等選項功能 • FollowSymLinks • 當目錄內有符號連結時,允許網頁端連結至該符號連結的目的地目錄,這個選項有安全性的問題,在實務上儘可能不使用它

  38. 存取控制 Access Control

  39. 存取控制 Access Control • 允許推翻選項設定- AllowOverride • AllowOverride 選項只適用在Directory 目錄標籤 • 設定該目錄下的子目錄是否可以推翻其上層已訂定的選項設定值 • 自訂權限設定檔是在目錄中 • 新增一個文字檔並設定該目錄的自訂選項值

  40. 存取控制 Access Control • 允許推翻選項設定- AllowOverride • AllowOverride All • 允許子目錄可自訂所有選項。 • None • 不允許子目錄自訂任何選項(子目錄無法使用自訂選項功能)。 • AllowOverride選項清單 • 只允許子目錄自訂列出清單的選項,如:AllowOverride Indexes FollowSymLinks

  41. 存取控制 Access Control • 驗證帳號與密碼 AuthConfig • 定義目錄帳號驗證規則可讓特定目錄在網頁觀看者讀取時,要求輸入帳號與密碼 • 驗證設定檔,預設的檔案名稱是「.htaccess」 • 設定/var/www/html/files/ 可使用自訂權限

  42. 存取控制 Access Control • 驗證帳號與密碼 • 為使用者設定密碼 • 使用 htpasswd指令建立帳號與密碼 • 產生「.htpasswd」密碼檔

  43. 存取控制 Access Control

  44. 存取控制 Access Control • 驗證帳號與密碼 • 編輯目錄驗證設定檔 • 新增自訂目錄權限設定檔「.htaccess」

  45. 存取控制 Access Control • 驗證設定檔參數說明 • AuthType • AuthType 為Basic 代表使用由htpasswd 指令產生的密碼檔為驗證依據。 • AuthName • 本項驗證的名稱,顯示在對話框上的文字。 • AuthUserFile • 驗證使用的密碼檔,必需包括所在目錄 • Require • 可通過驗證的帳號,valid-user 代表所有的帳號

  46. 存取控制 Access Control • 驗證設定檔參數說明 • 使用IE 或firefox 瀏覽器測試網址http://127.0.0.1/files/

  47. 練習:虛擬目錄與安全防護-1 公司想在新年度更換新的首頁,請網站設計師先進行設計,等確認後再正式上線 MIS 為協助新網站的開發,將開發中的新網站放在http://www.[我的學號].com.tw/2012/並加上一組帳號密碼加以控管,這一組帳號密碼只有公司主管與網站設計師知道 等到新網站確認之後,令新網站正式上線

  48. 練習:虛擬目錄與安全防護-2 • 建立帳號 web2012 # adduser web2012 # passwd web2012 • 建立目錄 /home/web2012/html $ su - web2012 $ mkdir html

  49. 練習:虛擬目錄與安全防護-3 • 建立 Apache 設定檔 /etc/apache2/sites-available/web2012 • 建立 link 於 /etc/apache2/sites-enabled

  50. 練習:虛擬目錄與安全防護-4 • 建立 .htaccess與 .htpasswd • 在/home/web2012/html/目錄內建立.htaccess檔案,內如如次頁 • 以下列指令建立.htpasswd檔案以及驗證用的帳號密碼: • $ htpasswd –c .htpasswd web2012

More Related