---
title: '安全分數'
description: 'Panguard 怎麼算出 0-100 的系統風險分數和 A 到 F 等級。'
icon: 'chart-simple'
---

# 安全分數

一個 0-100 的數字，直接告訴你系統的安全狀態。每次掃描、每次查 Guard 狀態都會看到這個分數和對應的等級。

```
  Score: 85/100 [=================---] Grade: B
```

---

## 等級對照

| 分數   | 等級  | 意義                     |
| ------ | ----- | ------------------------ |
| 90-100 | **A** | 優秀 -- 防護全面         |
| 80-89  | **B** | 良好 -- 還有小幅改善空間 |
| 70-79  | **C** | 普通 -- 該處理中等風險了 |
| 60-69  | **D** | 要改善 -- 有明顯風險     |
| 0-59   | **F** | 危急 -- 馬上處理         |

---

## 評分因子

安全分數由 8 個因子加權計算，每個因子獨立評 0-100 分：

| 因子           | 權重 | 在看什麼                       |
| -------------- | ---- | ------------------------------ |
| **開放 port**  | 15%  | 有沒有不該開的 port 暴露在外？ |
| **防火牆**     | 15%  | 防火牆有沒有開？規則完不完整？ |
| **系統更新**   | 15%  | OS 和軟體有沒有更新到最新？    |
| **威脅狀態**   | 15%  | 系統上有沒有已知的活躍威脅？   |
| **密碼策略**   | 10%  | 有沒有強制密碼複雜度？         |
| **安全工具**   | 10%  | 有沒有裝防毒、EDR 或 IDS？     |
| **合規性**     | 10%  | 有沒有符合基本安全框架？       |
| **回應準備度** | 10%  | 威脅回應機制準備好了沒？       |

### 計算方式

```
Total = (Ports x 0.15) + (Firewall x 0.15) + (Updates x 0.15) +
        (Threats x 0.15) + (Password x 0.10) + (Tools x 0.10) +
        (Compliance x 0.10) + (Response x 0.10)
```

<Info>每個因子獨立評分 0-100，加權加總就是最終分數。</Info>

---

## 快速掃描 vs 完整掃描

掃描深度會影響評估哪些因子：

| 掃描模式                | 耗時   | 評估因子                                         | 適用場景       |
| ----------------------- | ------ | ------------------------------------------------ | -------------- |
| `panguard scan --quick` | ~30 秒 | 開放 port、防火牆、密碼策略、執行中的服務        | 每天快速看一下 |
| `panguard scan`         | ~60 秒 | 全部 8 個因子，含 SSL 憑證、排程任務、共享資料夾 | 完整稽核       |

<Tip>快速掃描的分數可能跟完整掃描不太一樣，因為看的因子比較少。要最準的分數就跑完整掃描。</Tip>

---

## 分數明細範例

掃描完 Panguard 會列出詳細明細：

```
  -- Risk Score ----------------------------

  Score: 72/100 [==================--] Grade: C
  Trend: improving (+5 since last scan)

  Breakdown:
    Firewall:    80/100
    Open Ports:  60/100
    Passwords:   50/100
    Updates:     90/100
    Tools:       70/100
    Threats:     85/100
    Compliance:  65/100
    Response:    70/100
```

---

## Guard 持續更新分數

Guard 跑著的時候，分數會隨狀態變化即時重算：

- 新 port 開了 -- 開放 port 因子掉分
- 偵測到威脅並自動封鎖 -- 威脅狀態因子更新
- Guard 跑超過 7 天 -- 回應準備度因子加分

```bash
panguard guard status
```

```
  -- Security Score -----------------------

  Score: 88/100 [===================] Grade: B
  Trend: stable (no change in 48h)
  Guard uptime: 14 days
```

<Note>Guard 持續監控比定期掃描更準確、更即時。分數會隨安全狀態近乎即時更新。</Note>

---

## 趨勢追蹤

安全分數會追蹤變化趨勢：

| 趨勢       | 條件           | 意義           |
| ---------- | -------------- | -------------- |
| **改善中** | 比上次高 2+ 分 | 安全狀態在變好 |
| **下降中** | 比上次低 2+ 分 | 安全狀態在惡化 |
| **穩定**   | 變化 2 分以內  | 安全狀態持平   |

<Warning>就算分數還可以，下降趨勢也該調查。小幅下滑往往是大問題的前兆。</Warning>

---

## PDF 報告

安全分數是 PDF 報告的核心元素：

- **分數和等級** 放在第一頁最醒目的位置
- **因子明細** 列出各類別的個別分數
- **修復建議** 按對分數的影響排序
- **趨勢圖** 顯示歷史分數變化（有歷史資料時）

```bash
panguard scan --output my-report.pdf
```

---

## 在哪看分數

<AccordionGroup>
  <Accordion title="Panguard Scan">
    每次掃描完都會顯示：

    ```bash
    panguard scan
    ```

  </Accordion>
  <Accordion title="Panguard Guard">
    Guard 持續算即時分數，用這個看：

    ```bash
    panguard guard status
    ```

  </Accordion>
  <Accordion title="Panguard Status">
    快速看目前分數：

    ```bash
    panguard status
    ```

  </Accordion>
</AccordionGroup>

---

## 拉高分數

<Steps>
  <Step title="跑一次完整掃描">先用 `panguard scan` 看目前分數和因子明細。</Step>
  <Step title="先處理嚴重的">專注 CRITICAL 和 HIGH 的發現。這些對分數影響最大。</Step>
  <Step title="開 Guard">持續跑 Guard 能改善回應準備度和威脅狀態兩個因子。</Step>
  <Step title="再掃一次確認">改完之後再掃描，確認分數有上去。</Step>
</Steps>

---

## 相關內容

<CardGroup cols={2}>
  <Card title="首次掃描" icon="magnifying-glass" href="/guides/first-scan">
    跑第一次安全掃描的步驟。
  </Card>
  <Card title="學習模式" icon="graduation-cap" href="/concepts/learning-mode">
    Guard 怎麼在 7 天學習期建立行為基線。
  </Card>
</CardGroup>
