網路設備評估
本指南為 WireGuard、DNS 和路由實驗室建立雙介面 Debian 映像。生產使用需要精確的介面映射、經過審查的防火牆策略、真正的金鑰保管、硬體驅動程式測試和復原路徑。
提示
Create a Debian Trixie headless network-appliance evaluation image with two
NICs, SSH, firewall, WireGuard, dnsmasq, nftables, and IP forwarding. Keep
WireGuard private keys and site addresses out of the recipe. Create a locked
operator account and require key-only SSH only after its public key path is
verified. Add a client VM scenario that proves DHCP/DNS behavior, routed
traffic, allowed management access, and denied traffic.配方形狀
{
"name": "branch-network-appliance-evaluation",
"base_image": "debian-trixie",
"hardware": {
"platform": "pc",
"architecture": "x86_64",
"min_cpu_cores": 2,
"min_memory_gb": 2,
"min_storage_gb": 16,
"nic_count": 2
},
"os": {
"features": ["headless", "ssh", "firewall", "vpn-wireguard"],
"packages": ["dnsmasq", "nftables"],
"users": [
{
"username": "operator",
"groups": ["sudo"],
"shell": "/bin/bash"
}
],
"services": [
{
"name": "ssh",
"enabled": true,
"config": {
"port": 2222,
"allow_root": false,
"disable_password_auth": true
}
}
],
"startup_scripts": [
{
"name": "enable-ip-forwarding",
"description": "Persist the reviewed IPv4 forwarding setting.",
"command": "set -Eeuo pipefail\nprintf '%s\\n' 'net.ipv4.ip_forward = 1' > /etc/sysctl.d/99-openfactory-forwarding.conf\nsysctl --system >/dev/null",
"packages": [],
"run_as": "root",
"after": "network.target"
}
]
}
}變更 SSH 連接埠可減少掃描噪音,但不是身份驗證控制。僅金鑰 SSH 僅在安裝並測試工作金鑰後才有價值。
測試資料路徑,而不僅僅是套件
單一虛擬機器可以顯示 wg、dnsmasq 和 nftables 存在且轉送已啟用。它不能證明客戶的行為。建構至少包含以下內容的拓撲:
- 具有 WAN 和 LAN 介面的設備;
- 沒有備用預設路由的 LAN 用戶端;和
- 有界上游服務或探測。
驗證 DHCP 租約分配、DNS 轉送、預期路由、NAT(如果需要)、使用僅測試金鑰的 WireGuard 握手、允許的管理存取以及拒絕未經請求的流量。包括負面測試,以便寬鬆的防火牆無法通過。
部署邊界
部署時,單獨檢查:
- 將VM介面順序對應到實體NIC名稱和MAC位址;
- 私鑰產生、儲存、輪換和撤銷;
- 核准的子網路、路由、轉送、NAT 和 DNS 原則;
- IPv6 行為而不是默默地禁用它;
- 更新時無需切斷管理存取權限;
- 配置備份和離線復原;和
- 連結、DNS、時脈和電源故障後的故障開啟/故障關閉行為。
在生產使用之前驗證確切的設備硬體。