iT邦幫忙

2024 iThome 鐵人賽

DAY 14
0
Security

【Google資安證書課程重點整理】系列 第 14

【Google資安證書重點整理】Day 14_Linux 資安相關指令_基礎教學

  • 分享至 

  • xImage
  •  

導讀

在上一節我們很全面性的解說了作業系統的功能及概念,透過作業系統作為媒介我們能與電腦的軟硬體體下達指令,但要如何下達指令呢? 有分GUI及CLI方式,本節重點放在CLI方式教導使用正確的指令來讓我們操作系統得到所需的資料。

https://ithelp.ithome.com.tw/upload/images/20240915/200265859rMO6mP7xy.png

Linux 的起源與特性

**Linux 的起源與特性 **
開源性質: 

  • Linux 是由 Linus Torvalds 和 Richard Stallman 等人共同創建的開源作業系統。 
  • 基於 GNU 通用公共許可證,允許自由使用、分享和修改。 
  • 社區驅動: 
    • 擁有龐大的開發者社區,共同貢獻和改善 Linux。 
    • 衍生出眾多不同的 Linux 發行版。 

安全性: 

  • 廣泛應用於安全領域。 
  • 常用於檢查日誌、驗證身份和存取管理。 
  • 有專門的發行版用於數位取證和滲透測試。 

Linux 的優勢 

  • 靈活性和客製化: 
    • 開源特性使得 Linux 可以根據不同需求進行客製化。 
    • 擁有豐富的工具和軟體生態系。 
  • 穩定性: 
    • 作為伺服器作業系統,Linux 以穩定性著稱。 
    • 廣泛應用於各種伺服器環境。 
  • 安全性: 
    • 社區驅動的安全性,不斷發現和修復漏洞。 
    • 眾多安全工具和技術的支援。 

Linux 在安全領域的應用 

  • 日誌分析: 
    • 檢查系統日誌,找出異常活動或潛在威脅。 
  • 身份驗證和存取管理: 
    • 驗證用戶身份,控制對系統資源的存取。 
  • 數位取證: 
    • 調查安全事件,收集和分析數位證據。 
  • 滲透測試: 
    • 尋找系統漏洞,評估系統安全性。 

結論 

Linux 作為一個開源、穩定且安全的作業系統,在安全領域有著廣泛的應用。了解 Linux 的基本概念和特性,對於從事安全工作的人員來說至關重要。

Linux 的組成部分

**- 使用者: **

  • 使用者是與電腦互動的第一要素。 
  • Linux 是一個多用戶系統,允許多個使用者同時使用系統資源。 

**- 應用程式: **

  • 應用程式是一個執行特定任務的程式,如文字處理器或計算機。 
  • 例如:Nano 是一個常見的 Linux 文字編輯器,透過套件管理器分發應用程式。 

**- Shell: **

  • Shell 是命令列解釋器,負責處理命令並輸出結果,是與系統互動的方式。 

  • Shell 可以視為 CLI(Command Line Interface,命令列介面)。 

  • 檔案系統層次結構標準 (FHS): 

    • FHS 負責資料的組織和儲存,可視為系統的檔案櫃,幫助系統找到並存取資料。

**- 核心 (Kernel): **

  • 核心管理系統的進程與記憶體,並與硬體進行溝通,執行 Shell 發送的命令。 

  • 核心負責有效分配資源,提升系統效率。 

  • 硬體 (Hardware): 

    • 硬體是電腦的實體組件,例如 CPU、滑鼠、鍵盤等,與軟體應用程式相對應。

專為滲透測試與數位取證而生_KALI LINUX

  • KALI LINUX™ 的特性: 

    • 基於 Debian 的開源發行版。 
    • 預裝大量滲透測試和數位取證工具。 
    • 建議在虛擬機器上使用,以避免對主機系統造成損壞。 
  • 滲透測試工具: 

    • Metasploit:用於尋找和利用系統漏洞。 
    • Burp Suite:用於測試 Web 應用程式弱點。 
    • John the Ripper:用於破解密碼。 
  • 數位取證工具: 

    • tcpdump:命令列資料包分析器,用於捕獲網路流量。 
    • Wireshark:圖形化資料包分析器,用於分析網路流量。 
    • Autopsy:硬碟和智慧型手機取證分析工具。 
  • KALI LINUX™ 的優勢: 

    • 集中了一系列滲透測試和數位取證所需的工具。 
    • 方便安全專業人員進行相關工作。 

使用 KALI LINUX™ 的注意事項 

  • 虛擬機環境: 建議在虛擬機上使用 KALI LINUX™,以隔離實驗環境,避免對主機系統造成影響。 
  • 工具的正確使用: 滲透測試工具的誤用可能導致系統安全問題,需謹慎操作。 

結論 
KALI LINUX™ 作為一款專為滲透測試和數位取證設計的 Linux 發行版,提供了豐富的工具和資源,是安全專業人員必備的工具之一。

Linux 套件管理簡介

Linux 套件管理簡介 

軟體包與套件管理

  • 軟體包是軟體的基本單位,包含程式碼、資料和依賴關係。 
  • 套件管理器用於安裝、更新、移除軟體包,並處理依賴關係。 

套件管理器的功能

  • 安裝:根據套件資訊,安裝軟體包及其依賴項。 
  • 更新:檢查並更新已安裝的軟體包到最新版本。 
  • 移除:移除已安裝的軟體包及其依賴項。 
  • 查詢:搜尋可用軟體包,查看軟體包資訊。 
  • 處理依賴關係:自動解決軟體包之間的依賴關係。 

套件管理器的類型

  • dpkg: Debian 系統使用的基礎套件管理工具。 
  • APT: 基於 dpkg 的高階套件管理工具,提供更友善的使用者介面和更強大的功能。 
  • RPM: Red Hat Package Manager,用於 Red Hat 系統。 
  • YUM: Yellowdog Updater Modified,基於 RPM 的高階套件管理工具,類似於 APT。 

套件檔案格式 

  • .deb: Debian 系統使用的套件檔案格式。 
  • .rpm: Red Hat 系統使用的套件檔案格式。 

不同 Linux 發行版使用的套件管理器 

  • Debian 系統: dpkg、APT 
  • Red Hat 系統: RPM、YUM

開始進入實作的課程

實驗目標

  • 熟悉 Linux 系統的套件管理工具 APT。 
  • 學習如何使用 APT 安裝、卸載和查詢軟體包。 
  • 掌握 Suricata 和 tcpdump 這兩個網路安全工具的基本用法。 

實驗步驟 

  1. 檢查 APT 是否安裝: 
  • 在終端中輸入 apt 命令,確認 APT 已安裝並可正常工作。 
  1. 安裝 Suricata: 
  • 使用 sudo apt install suricata 命令安裝 Suricata。 
  • 驗證安裝是否成功:執行 suricata 命令,查看輸出。 
  1. 卸載 Suricata: 
  • 使用 sudo apt remove suricata 命令卸載 Suricata。 
  • 再次執行 suricata 命令,確認 Suricata 已被移除。 
  1. 安裝 tcpdump: 
  • 使用 sudo apt install tcpdump 命令安裝 tcpdump。 
  1. 列出已安裝的應用程式: 
  • 使用 apt list --installed 命令列出所有已安裝的應用程式。 
  • 檢查列表中是否有 Suricata 和 tcpdump。 
  1. 重新安裝 Suricata: 
  • 再次使用 sudo apt install suricata 命令安裝 Suricata。 
  • 再次檢查已安裝的應用程式列表,確認 Suricata 已被重新安裝。 

知識點 

  • APT: Advanced Package Tool,Debian 系統常用的套件管理器。 
  • sudo: 以超級用戶權限執行命令。 
  • Suricata: 一款入侵偵測系統,用於網路流量分析。 
  • tcpdump: 一個用於擷取網路封包的工具。 
  • 依賴關係: 軟體包之間的相互依賴關係,APT 會自動處理。 

學習重點 

  • 套件管理器的基本操作: 安裝、卸載、查詢。 
  • Linux 命令行基礎: 使用終端執行命令。 
  • 網路安全工具: 了解 Suricata 和 tcpdump 的基本功能。

Linux Shell 的概念與作用

  • Shell 是什麼? 

    • Shell 是命令列解釋器,用於與作業系統進行互動。 
    • 它提供了一個介面,讓使用者可以輸入命令,並接收系統的回應。 
  • Shell 的功能: 

    • 執行命令:使用者輸入命令,Shell 將其傳遞給系統執行。 
    • 連結應用程式:將不同的應用程式連接起來,實現複雜的任務。 
    • 自動化任務:透過腳本編寫,實現任務自動化。 
  • Shell 的種類: 

    • Bash:最常用的 Shell,也是本課程重點。 
    • 其他 Shell:csh, ksh, tcsh, zsh 等。 

與 Shell 的通訊 

  • 標準輸入: 

    • 使用者從鍵盤輸入的命令。 
    • 例如:echo hello 中的 hello。 
  • 標準輸出:

    • 系統對命令的回應。 
    • 例如:執行 echo hello 後,系統輸出 hello。 
  • 標準錯誤: 

    • 系統返回的錯誤訊息。 
    • 例如:輸入錯誤的命令,系統會顯示錯誤提示。

實驗目標 

  • 熟悉 Bash Shell 的基本輸入輸出操作。 
  • 學習使用 echo 命令產生輸出。 
  • 學習使用 expr 命令進行簡單的數學計算。 
  • 了解 clear 命令的作用。 

實驗步驟 

  1. 使用 echo 命令輸出文字: 
  • 輸入 echo hello,輸出 "hello"。 
  • 使用引號包裹文字,可以輸出包含空格或特殊字符的字符串。 
  1. 使用 expr 命令進行計算: 
  • 輸入 expr 32 - 8,計算並輸出結果。 
  • 可以使用 +, -, *, / 進行加減乘除運算。 
  1. 清除螢幕: 
  • 輸入 clear 清空終端畫面。 

知識點 

  • 標準輸入: 從鍵盤輸入的命令或數據。
  • 標準輸出: 命令執行的結果。 
  • echo 命令: 用於輸出文字。 
  • expr 命令: 用於進行簡單的數學計算。 
  • clear 命令: 用於清除終端畫面。 

學習重點 

  • Shell 的互動方式: 輸入命令,獲取輸出。 
  • 基本命令的使用: echo, expr, clear。 
  • 引號的作用: 用於包裹包含空格或特殊字符的字符串。 
  • 數學運算: 使用 expr 進行簡單的算術運算。

結論

這篇文章介紹了Linux的套件管理和Shell的基礎操作。首先,文章闡述了軟體包的概念及其安裝、更新、移除與查詢的過程,並比較了不同Linux發行版使用的套件管理器,如APT、YUM等。接著,文章透過實作例子,展示如何使用APT安裝和管理網路安全工具Suricata和tcpdump。隨後,文章介紹了Linux Shell的功能,重點在於Bash Shell的操作,包含基本輸入輸出、文字輸出及數學運算等基礎命令的使用。

** 你可以進平台的線上操作,照著上面的操作指令搭配平台上的指示文件你就能完成實作的測試**


上一篇
【Google資安證書重點整理】Day 13_資安工具_作業系統概念
下一篇
【Google資安證書重點整理】Day 15_資安相關指令_進階教學
系列文
【Google資安證書課程重點整理】30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言