Skip to content

Authelia

輕量級開源認證門戶

軟體分類 其他 / 網路應用
軟體標籤
開發廠商 Authelia Team
Stars
0
Forks
0
License
APACHE 2.0
Version
v4.38.0
Update
OS
kubernetes

產品說明

Authelia 是一款專注於安全性與效能的開源身分驗證伺服器。它通常作為反向代理(如 Nginx, Traefik, HAProxy)的輔助伴侶,為那些本身不具備登入功能的網頁服務(如個人儀表板、檔案瀏覽器)提供一個統一的登入介面。

Authelia 的設計哲學是「簡單而安全」。它不嘗試成為一個複雜的 IAM 系統,而是專精於驗證使用者身分,並提供多因素認證(MFA)功能。透過它,你可以輕鬆為所有自建的服務加上與 Google 或銀行等級相同的雙重驗證保護。

核心特色:

  • 極低資源消耗:基於 Go 語言,即使在樹莓派等低效能設備上也能流暢運行。
  • 多因素認證 (MFA):原生支援 TOTP(如 Google Authenticator)、Duo 推播以及 FIDO2 (WebAuthn) 硬體密鑰(如 Yubikey)。
  • 存取控制列表 (ACL):支援極度精細的規則設定,可根據使用者群組、來源 IP 或主機名稱決定存取權限。
  • 密鑰重設與鎖定:具備自動防禦暴力破解功能,多次嘗試失敗後將自動鎖定帳號或 IP。

常用指令

Authelia 高度依賴 YAML 設定檔與 Docker 部署,其運作邏輯主要是與反向代理進行溝通。

部署與哈希密碼生成

# 使用 Docker 啟動 Authelia 實例
docker run -d --name authelia -v /path/to/config:/config authelia/authelia

# 為設定檔生成符合安全標準的哈希密碼 (Password Hash)
docker run --rm authelia/authelia authelia-scripts hash-password "your_secure_password"

# 驗證設定檔語法是否正確
docker run --rm -v /path/to/config:/config authelia/authelia authelia validate-config /config/configuration.yml
功能模組說明使用場景
Single Factor單因子驗證僅需密碼即可存取的低敏感服務
Two Factor雙因子驗證存取私密資料(如雲端硬碟)時強制要求手機驗證碼
Remember Me記住登入透過加密 Cookie 在指定時間內免重複登入
OIDC Provider身分提供者將 Authelia 作為 OpenID Connect 供應商供其他 App 調用

進階技巧

  • 與 Traefik 完美整合:透過 Traefik 的 ForwardAuth 中間件,Authelia 可以攔截所有進入集群的流量,確保任何未授權的請求在到達後端服務前就被擋下。

  • 搭配 Redis 擴展:雖然 Authelia 預設使用內存儲存 Session,但在多節點部署時,可以連結 Redis 實現 Session 共享,達到高可用性。

  • 地理位置限制:在 ACL 中設定規則,僅允許來自特定國家或公司內部內部網路(Intranet IP)的連線存取管理後台。


操作介面