admin/AMT_QUICK_START.md
lvfengfree 8b07d8f52a feat: 实现 AMT 设备自动添加功能(仅 Digest 认证)
- 添加 AMT Digest 认证服务 (AmtDigestService)
- 添加 AMT 模拟服务用于测试 (AmtMockService)
- 更新设备控制器支持 AMT 连接测试和设备信息获取
- 前端添加 AMT 自动添加方式,支持手动输入和凭证选择
- 移除 Basic 认证,仅使用 Digest 认证
- 添加 Apache HttpClient 依赖支持 Digest 认证
- 创建相关文档和测试脚本
2026-03-01 14:51:35 +08:00

5.5 KiB
Raw Permalink Blame History

AMT 设备添加功能 - 快速开始

问题诊断

超时错误timeout of 10000ms exceeded

这个错误表示无法连接到 AMT 设备。请按以下步骤排查:

步骤 1运行快速测试

运行 quick_amt_test.bat 进行基本连接测试:

quick_amt_test.bat

输入 AMT 设备的 IP 地址,查看测试结果。

测试结果分析

情况 1Ping 失败

问题:网络不可达 解决

  • 检查 IP 地址是否正确
  • 检查网络连接
  • 确认设备已开机

情况 2Ping 成功,但端口关闭

问题AMT 未启用或服务未运行 解决

  1. 在 AMT 设备上启用 AMT
  2. 检查 AMT 服务状态
  3. 检查防火墙设置

情况 3端口开放但连接超时

问题AMT 配置问题或认证失败 解决

  1. 检查 AMT 用户名和密码
  2. 尝试重启 AMT 服务
  3. 查看 AMT 配置

步骤 2使用模拟模式测试功能

如果暂时没有真实的 AMT 设备,可以使用模拟模式测试功能:

启用模拟模式

  1. 方法 1修改代码

    编辑 backend/src/main/java/com/soybean/admin/controller/DeviceController.java

    // 将这一行
    private boolean useMockMode = false;
    
    // 改为
    private boolean useMockMode = true;
    
  2. 方法 2使用 API 切换

    发送 POST 请求到:

    POST http://localhost:8080/device/amt/toggleMock
    

使用模拟模式

启用模拟模式后:

  1. 在设备列表点击"新增设备"
  2. 选择"AMT 自动添加"
  3. 输入任意 IP 地址(如 192.168.1.100
  4. 用户名:admin
  5. 密码:admin
  6. 点击"测试连接"
  7. 应该会成功并自动填充设备信息

模拟模式说明

  • 模拟模式仅用于测试界面和流程
  • 不会真正连接到 AMT 设备
  • 测试账号admin/admin
  • 会生成模拟的设备信息

步骤 3配置真实 AMT 设备

3.1 启用 AMT

  1. 进入 BIOS/UEFI

    • 重启设备
    • 按 F2 或 Del 进入 BIOS
  2. 进入 Intel ME 配置

    • 在 BIOS 中找到 Intel ME 或 AMT 选项
    • 或者在开机时按 Ctrl+P 直接进入 MEBx
  3. 启用 AMT

    • Intel(R) ME Configuration
    • Intel(R) AMT Configuration
    • Manageability Feature Selection
    • 选择 "Intel AMT"
  4. 配置网络

    • Network Setup
    • TCP/IP Settings
    • 选择 DHCP 或配置静态 IP
  5. 设置管理员密码

    • MEBx Password
    • 设置强密码(至少 8 位,包含大小写字母、数字和特殊字符)
    • 记住这个密码!
  6. 激活 AMT

    • Activate Network Access
    • 选择激活方式(通常选择 "Host Based"
  7. 保存并退出

    • 保存设置
    • 退出并重启

3.2 验证 AMT 配置

在 Windows 上验证 AMT 是否正常运行:

# 检查 LMS 服务状态
sc query LMS

# 如果服务未运行,启动它
net start LMS

# 检查端口是否监听
netstat -ano | findstr 16992

3.3 测试 AMT 连接

使用 PowerShell 测试:

# 替换为你的 AMT 设备 IP
$amtIP = "192.168.1.100"

# 测试端口
Test-NetConnection -ComputerName $amtIP -Port 16992

# 如果端口开放,尝试连接
$username = "admin"
$password = "your_amt_password"
$base64 = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes("${username}:${password}"))

$headers = @{
    "Authorization" = "Basic $base64"
    "Content-Type" = "application/soap+xml;charset=UTF-8"
}

$body = @"
<?xml version="1.0" encoding="UTF-8"?>
<s:Envelope xmlns:s="http://www.w3.org/2003/05/soap-envelope" 
            xmlns:wsmid="http://schemas.dmtf.org/wbem/wsman/identity/1/wsmanidentity.xsd">
    <s:Header/>
    <s:Body>
        <wsmid:Identify/>
    </s:Body>
</s:Envelope>
"@

try {
    $response = Invoke-WebRequest -Uri "http://${amtIP}:16992/wsman" -Method POST -Headers $headers -Body $body
    Write-Host "连接成功!" -ForegroundColor Green
    Write-Host $response.Content
} catch {
    Write-Host "连接失败:$($_.Exception.Message)" -ForegroundColor Red
}

步骤 4在系统中使用

4.1 保存 AMT 凭证(推荐)

  1. 进入"系统设置" > "AMT 设置"
  2. 点击"新增凭证"
  3. 输入凭证名称、用户名和密码
  4. 保存

4.2 添加 AMT 设备

  1. 进入"设备管理" > "设备列表"
  2. 点击"新增设备"
  3. 选择"AMT 自动添加"
  4. 输入 IP 地址
  5. 选择认证方式:
    • 使用已保存凭证:从下拉框选择
    • 手动输入:填写用户名和密码
  6. 点击"测试连接"
  7. 连接成功后,确认设备信息
  8. 点击"确定"保存

常见问题

Q1: 超时错误怎么办?

A: 运行 quick_amt_test.bat 诊断网络连接问题。

Q2: 401 认证失败怎么办?

A: 检查用户名和密码是否正确,确认 AMT 已正确配置。

Q3: 没有真实 AMT 设备怎么测试?

A: 启用模拟模式,使用 admin/admin 测试。

Q4: 如何知道 AMT 是否已启用?

A:

Q5: 支持哪些 AMT 版本?

A: 支持 AMT 6.0 及以上版本。

下一步

  • 查看 AMT_TROUBLESHOOTING.md 了解详细的故障排除
  • 查看 AMT_DEVICE_ADD_FEATURE.md 了解完整功能说明
  • 配置更多 AMT 设备
  • 探索远程控制功能

获取帮助

如果遇到问题:

  1. 查看错误信息
  2. 运行诊断工具
  3. 查阅故障排除文档
  4. 检查 AMT 设备配置
  5. 查看系统日志

重要提示

⚠️ 安全警告

  • 使用强密码
  • 限制网络访问
  • 定期更新固件
  • 不要在生产环境使用模拟模式