zsrv/supermicro-product-key

Applied but no effect on X10DRU

sotasyl opened this issue · 25 comments

Thanks for the tool, tried it for X10 with corrupted bios yet responsible IPMI
./supermicro-product-key nonjson encode --sku SFT-DCMS-SINGLE --software-version ABC123 --invoice-number 0123456789 --creation-date 2020-12-30T12:00:00Z --expiration-date 1970-01-01T00:00:00Z --property 01AA02FF mac

Got response:

.\sum.exe -i 192.168.3.26 -u user -p pwd -c ActivateProductKey --key actual_key
Supermicro Update Manager (for UEFI BIOS) 2.10.0 (2022/12/09) (x86_64)
Copyright(C) 2013-2022 Super Micro Computer, Inc. All rights reserved.

Node product key (SFT-DCMS-SINGLE) is activated for 192.168.3.26.
.\sum.exe -i 192.168.3.26 -u user -p pwd-c CheckOOBSupport
Supermicro Update Manager (for UEFI BIOS) 2.10.0 (2022/12/09) (x86_64)
Copyright(C) 2013-2022 Super Micro Computer, Inc. All rights reserved.

[KEY]
Node Product Key Format..........Non-JSON
Node Product Key Activated.......SFT-DCMS-SINGLE
    SFT-DCMS-SVC-KEY Activated...No
    SFT-SDDC-SINGLE Activated....No
Feature Toggled On...............Yes

[BMC]
BMC FW Version...................03.94.00
BMC Supports OOB BIOS Config.....Yes
BMC Supports OOB DMI Edit........Yes

[BIOS]
Board ID.........................0844
BIOS Build Date..................N/A
BIOS Supports OOB BIOS Config....No
    [download DAT file] [download BIN file]  not supported.
BIOS Supports OOB DMI Edit.......No
    [download DMI file] not supported.

[SYSTEM]
System Supports RoT Feature......No

But when trying to flash getting:

.\sum.exe -i 192.168.3.26 -u user -p pwd -c UpdateBios --file .\X10DRU2.427 --force_update --reboot
Supermicro Update Manager (for UEFI BIOS) 2.10.0 (2022/12/09) (x86_64)
Copyright(C) 2013-2022 Super Micro Computer, Inc. All rights reserved.

********************************<<<<<ERROR>>>>>*********************************

ExitCode                = 149
Description             = IPMI execution failed
Program Error Code      = 406.6
Error message:
        Failed to send http GET.
        HTTP code: 403 (Forbidden)
        1. Not licensed to perform this request. The following licenses DCMS
    were needed
Instruction:
        1. Please activate at least one license in above message.

********************************************************************************

What may be the problem?

zsrv commented

Hi, thank you for using the tool. I just tested on my own system and found that setting the "property" value causes the DCMS key not to be considered valid. In the samples I have found, the "property" has never been set, but I included the ability to set the value for experimentation purposes. I will update the README with better usage instructions soon, so other people don't run into this problem.

Steps to fix:

Remove the key that was installed. SUM version 2.4.0 is the last version to include the ClearProductKey command which lets you remove keys. If you have trouble finding this version, please let me know.

SUM version 2.4.0 commands to remove the keys:

> ./sum -i 1.2.3.4 -u user -p password -c QueryProductKey
Supermicro Update Manager (for UEFI BIOS) 2.4.0 (2019/12/06) (x86_64)
Copyright(C) 2013-2019 Super Micro Computer, Inc. All rights reserved.

[1] SFT-DCMS-Single, version: ABC123, invoice: 0123456789, creation date: 2020/12/30 12:00:00(Key is good.)
Number of product keys: 1

> ./sum -i 1.2.3.4 -u user -p password -c ClearProductKey --key_index 1
Supermicro Update Manager (for UEFI BIOS) 2.4.0 (2019/12/06) (x86_64)
Copyright(C) 2013-2019 Super Micro Computer, Inc. All rights reserved.

Node product key is deactivated for 1.2.3.4.

Generate a new DCMS key without setting the "property" value (the other values will be set to safe default values if they are left unspecified):
./supermicro-product-key nonjson encode --sku SFT-DCMS-SINGLE mac

Activate the new key as usual.

Please let me know how it goes.

Thanks, man, you saved the day!
That worked and by the way was the only effective method - it was impossible to do anything through web IPMI or SMCIPMITool (just timed out), nor SUPER.ROM worked. Now I’ve successfully recovered 2 boards. Such basic tools or at least flashing bios shouldn’t be under any license, they’re no way extras but required!

Hi and thanks for the dicussion. Ran into the same trouble, but not able to find SUM 2.4, just 2.10 available. Any advice? Thanks and regards!

zsrv commented

Hi and thanks for the dicussion. Ran into the same trouble, but not able to find SUM 2.4, just 2.10 available. Any advice? Thanks and regards!

@aleho11 I was able to find a copy here: http://update.shared.it/SUPERMICRO/X11DDW-NT/X11DDW_3_3_AS17117_SUM240/X11DDW_3.3_AS17117_SUM240/

It is not an official source (SUM 2.4.0 is no longer available on Supermicro's website as you have found). I have no reason to believe these archives have been altered, but use at your own risk!

Perfect, many thanks! Was able to de-register the key! :-)

@aleho11 I was able to find a copy here: http://update.shared.it/SUPERMICRO/X11DDW-NT/X11DDW_3_3_AS17117_SUM240/X11DDW_3.3_AS17117_SUM240/

It is not an official source (SUM 2.4.0 is no longer available on Supermicro's website as you have found). I have no reason to believe these archives have been altered, but use at your own risk!

It might make sense to add a hint about SUM 2.4.0 for removing unwanted license keys to the readme file or a wiki page. The authenticity of sum_2.4.0_Linux_x86_64_20191206.tar.gz can be corroborated by comparing its hashes with various sources or historic records.

SHA256: d0d7203913334e02d4ea1c8493834c5a0e7236040380447e22697b816dc614c7:
https://aur.archlinux.org/cgit/aur.git/commit/?h=supermicro-update-manager&id=a1a30db1c126a476c0d92339256259ef94adac67

BLAKE2B: 4c0c25ab5d3a8b533487287676efe38df164ab80327016172da76539081b90bb4a1de5a043609f35800a82651335f862ea08aeaa867270a7e21b309372facc81
https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=73b34b917afda7cf2eea1644cb70f1fa2a64d0ac

zsrv commented

@aleho11 I was able to find a copy here: http://update.shared.it/SUPERMICRO/X11DDW-NT/X11DDW_3_3_AS17117_SUM240/X11DDW_3.3_AS17117_SUM240/
It is not an official source (SUM 2.4.0 is no longer available on Supermicro's website as you have found). I have no reason to believe these archives have been altered, but use at your own risk!

It might make sense to add a hint about SUM 2.4.0 for removing unwanted license keys to the readme file or a wiki page. The authenticity of sum_2.4.0_Linux_x86_64_20191206.tar.gz can be corroborated by comparing its hashes with various sources or historic records.

SHA256: d0d7203913334e02d4ea1c8493834c5a0e7236040380447e22697b816dc614c7: https://aur.archlinux.org/cgit/aur.git/commit/?h=supermicro-update-manager&id=a1a30db1c126a476c0d92339256259ef94adac67

BLAKE2B: 4c0c25ab5d3a8b533487287676efe38df164ab80327016172da76539081b90bb4a1de5a043609f35800a82651335f862ea08aeaa867270a7e21b309372facc81 https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=73b34b917afda7cf2eea1644cb70f1fa2a64d0ac

I've added a troubleshooting section to the README with this information, thank you!

Hello @zsrv I have been pulling my hair with this problem for about two days now(without sleep). I generated the keys using your awesome tool. I was able to enter the keys too. I ran into issues like Virtual Media still not working. So I had to remove the keys. Not reading your article completely was a lesson and my trials in fixing this was in itself a feat.

Finally, I was able to find a copy of SUMv2.4.0 from SuperMicros site, to successfully remove the keys. I checked the "Troubleshooting" option too. On the motherboard to see if would offer some data. But, it just threw the system start and end time in a text file.

The SUM v2.4.0 is available from SuperMicro directly in a firmware bundle package -> Here

Maybe this could be downloaded by you to be provided to the needy, or hosted somewhere for people to download. Not sure for how long that firmware bundle will be hosted by SM.

With that aside. Please help me understand that is causing the issue. I have tried everything - Generating key with --property value, omitting --property value, generated a key with nothing more than ./supermicro-product-key nonjson encode --sku SFT-DCMS-SINGLE <$MAC>

But, the Virtual Media feature still doesn't work in iKVM/HTML5 window, and strangely mounting ISOs don't work with SMB shares too.

The Virtual Media feature is supported. I inspected the browser code, and it is loaded, and hidden beneath. Commented out <-- / --> to be precise. This means that the feature is supported and it exists. But, the machine is somehow able to figure out that this is not a code generated by Supermicro?

Do you think they made any changes in the new BIOS/BMC versions to mitigate activating the licenses this way?

Please help!!

zsrv commented

Finally, I was able to find a copy of SUMv2.4.0 from SuperMicros site, to successfully remove the keys. I checked the "Troubleshooting" option too. On the motherboard to see if would offer some data. But, it just threw the system start and end time in a text file.

The SUM v2.4.0 is available from SuperMicro directly in a firmware bundle package -> Here

Maybe this could be downloaded by you to be provided to the needy, or hosted somewhere for people to download. Not sure for how long that firmware bundle will be hosted by SM.

Great find, thank you! I have added this link to the README. If the file disappears from the Supermicro website, I will upload it.

With that aside. Please help me understand that is causing the issue. I have tried everything - Generating key with --property value, omitting --property value, generated a key with nothing more than ./supermicro-product-key nonjson encode --sku SFT-DCMS-SINGLE <$MAC>

But, the Virtual Media feature still doesn't work in iKVM/HTML5 window, and strangely mounting ISOs don't work with SMB shares too.

The Virtual Media feature is supported. I inspected the browser code, and it is loaded, and hidden beneath. Commented out <-- / --> to be precise. This means that the feature is supported and it exists. But, the machine is somehow able to figure out that this is not a code generated by Supermicro?

Do you think they made any changes in the new BIOS/BMC versions to mitigate activating the licenses this way?

Please help!!

Which motherboard do you have, and which BMC firmware version is loaded?

Finally, I was able to find a copy of SUMv2.4.0 from SuperMicros site, to successfully remove the keys. I checked the "Troubleshooting" option too. On the motherboard to see if would offer some data. But, it just threw the system start and end time in a text file.
The SUM v2.4.0 is available from SuperMicro directly in a firmware bundle package -> Here
Maybe this could be downloaded by you to be provided to the needy, or hosted somewhere for people to download. Not sure for how long that firmware bundle will be hosted by SM.

Great find, thank you! I have added this link to the README. If the file disappears from the Supermicro website, I will upload it.

With that aside. Please help me understand that is causing the issue. I have tried everything - Generating key with --property value, omitting --property value, generated a key with nothing more than ./supermicro-product-key nonjson encode --sku SFT-DCMS-SINGLE <$MAC>
But, the Virtual Media feature still doesn't work in iKVM/HTML5 window, and strangely mounting ISOs don't work with SMB shares too.
The Virtual Media feature is supported. I inspected the browser code, and it is loaded, and hidden beneath. Commented out <-- / --> to be precise. This means that the feature is supported and it exists. But, the machine is somehow able to figure out that this is not a code generated by Supermicro?
Do you think they made any changes in the new BIOS/BMC versions to mitigate activating the licenses this way?
Please help!!

Which motherboard do you have, and which BMC firmware version is loaded?

Hi there,

I know this thread is a few months old, but I'm experiencing the same issue. The motherboard I'm using is an X10DRU-i+ with BMC firmware version 3.94.
thanks.

zsrv commented

Hi there,

I know this thread is a few months old, but I'm experiencing the same issue. The motherboard I'm using is an X10DRU-i+ with BMC firmware version 3.94. thanks.

@terryverma the person who originally submitted this issue activated a key on an X10DRU (not sure which model exactly, but it was board ID 0844. I thought I had come across a mapping of board IDs to board names once, but I can't find it now) using BMC firmware version 3.94. Are you generating the key using the BMC MAC address (and not one of the LAN MAC addresses)?

Hi there,
I know this thread is a few months old, but I'm experiencing the same issue. The motherboard I'm using is an X10DRU-i+ with BMC firmware version 3.94. thanks.

@terryverma the person who originally submitted this issue activated a key on an X10DRU (not sure which model exactly, but it was board ID 0844. I thought I had come across a mapping of board IDs to board names once, but I can't find it now) using BMC firmware version 3.94. Are you generating the key using the BMC MAC address (and not one of the LAN MAC addresses)?

Thanks for replying @zsrv i'm faceing the same issue the virtual media is not showing up in ikvm and in the code it is greyed out like @prudhvi435 was facing. Bios update through IPMI is working fine.
Yes I used MAC address of BMC otherwise I think licence activation won't show licence "Active" and Bios update through IPMI is working fine, but, virtual media is not working for ikvm.
Thanks.

zsrv commented

Hi there,
I know this thread is a few months old, but I'm experiencing the same issue. The motherboard I'm using is an X10DRU-i+ with BMC firmware version 3.94. thanks.

@terryverma the person who originally submitted this issue activated a key on an X10DRU (not sure which model exactly, but it was board ID 0844. I thought I had come across a mapping of board IDs to board names once, but I can't find it now) using BMC firmware version 3.94. Are you generating the key using the BMC MAC address (and not one of the LAN MAC addresses)?

Thanks for replying @zsrv i'm faceing the same issue the virtual media is not showing up in ikvm and in the code it is greyed out like @prudhvi435 was facing. Bios update through IPMI is working fine. Yes I used MAC address of BMC otherwise I think licence activation won't show licence "Active" and Bios update through IPMI is working fine, but, virtual media is not working for ikvm. Thanks.

@terryverma could you download SUM (any version, latest version is ok) and post the output of these commands?

./sum -i <IPMI_ADDRESS> -u <USERNAME> -p <PASSWORD> -c QueryProductKey
./sum -i <IPMI_ADDRESS> -u <USERNAME< -p <PASSWORD> -c CheckOOBSupport

Also, could you paste the product key utility command(s) you used to generate the key(s) you applied, with your BMC MAC address masked?

Also, have you tried restarting the BMC?

thanks for your replay @zsrv

./sum -i <IPMI_ADDRESS> -u <USERNAME> -p <PASSWORD> -c QueryProductKey

[1] SFT-DCMS-Single, version: none, invoice: none, creation date: 2024/07/03 08: 59:32(Key is good.)
Number of product keys: 1

./sum -i <IPMI_ADDRESS> -u <USERNAME< -p  -c CheckOOBSupport

[KEY]
Node Product Key Activated.......SFT-DCMS-Single
Feature Toggled On...............Yes

[BMC]
BMC FW Version...................04.00.00
BMC Supports OOB BIOS Config.....Yes
BMC Supports OOB DMI Edit........Yes

[BIOS]
Board ID.........................0844
BIOS Build Date..................2022/04/27
BIOS Supports OOB BIOS Config....Yes
BIOS Supports OOB DMI Edit.......Yes

Last night while trying to find what is wrong i updated my firmware to 4.0. (but with same result, no ikvm virtual media) if you want i can downgrade

Also, could you paste the product key utility command(s) you used to generate the key(s) you applied, with your BMC MAC address masked?

./supermicro-product-key nonjson encode --sku SFT-DCMS-SINGLE mac

Also, have you tried restarting the BMC?

yes i have restarted BMC and powercycle my system aswell.

@zsrv

I spent additional time troubleshooting and downgraded the IPMI firmware through versions 4.0 -> 3.94 -> 3.91 -> 3.89. Virtual media began to appear at version 3.91 but did not function properly. When I hover the mouse pointer over it, a brief description shows "$(TAG_DISABLE_VM_ACK_MSG)". Downgrading further to version 3.89 yielded the same result.

I also tried toggling the virtual media port settings (under configuration) off and back on, but this did not resolve the issue. For your reference, my virtual media port number is 623. Should I change this? Do you know if this is a firmware-related problem, and if so, which firmware version is known to work correctly?

@zsrv, have you had a chance to look into this matter?

zsrv commented

I don't have an X10DRU to test myself, but is the date and time set correctly on the BMC? The key has a creation time, and I'm not sure if the BMC makes sure the current time is after the creation time.

If the date and time are correct, you could still try removing the current key and then activate a new one generated like this:
./supermicro-product-key nonjson encode --sku SFT-DCMS-SINGLE --creation-date 1970-01-01T00:00:00Z MAC

Though I think it's unlikely, maybe the board has a problem with the default expiration date of "zero" (no expiration). You could try this next:
./supermicro-product-key nonjson encode --sku SFT-DCMS-SINGLE --creation-date 1970-01-01T00:00:00Z --expiration-date 2035-12-31T00:00:00Z MAC

Another thing to try is to generate and install an OOB key if one isn't already installed, just in case:
./supermicro-product-key oob encode MAC

If none of this works, I'm out of ideas.

Hi, I'm having this issue with X10DRW-i(T), trying all methods from above, will report back if it works

So:

  1. Setting creation date to 1970-01-01 (other properties are unset, so default):
    Does't help, still this $(TAG_DISABLE_VM_ACK_MSG) issue
  2. Setting expiration date (other properties are unset, so default):
Supermicro Update Manager (for UEFI BIOS) 2.14.0 (2024/02/15) (x86_64)
Copyright(C) 2013-2024 Super Micro Computer, Inc. All rights reserved.

********************************<<<<<ERROR>>>>>*********************************

ExitCode                = 11
Description             = Invalid command line data
Program Error Code      = 278.3
Error message:
        Invalid Node Product Key: Secret data does not match.

********************************************************************************

CheckOOBSupport:

Supermicro Update Manager (for UEFI BIOS) 2.14.0 (2024/02/15) (x86_64)
Copyright(C) 2013-2024 Super Micro Computer, Inc. All rights reserved.

[KEY]
Node Product Key Format..........Non-JSON
Node Product Key Activated.......SFT-DCMS-SINGLE
    SFT-DCMS-SVC-KEY Activated...No
    SFT-SDDC-SINGLE Activated....No
Feature Toggled On...............Yes

[BMC]
BMC FW Version...................03.89.00
BMC Supports OOB BIOS Config.....Yes
BMC Supports OOB DMI Edit........Yes

[BIOS]
Board ID.........................0821
BIOS Build Date..................2019/11/22
BIOS Version.....................3.2
BIOS Supports OOB BIOS Config....Yes
BIOS Supports OOB DMI Edit.......Yes

[SYSTEM]
System Supports RoT Feature......No

QueryProductKey:

Supermicro Update Manager (for UEFI BIOS) 2.14.0 (2024/02/15) (x86_64)
Copyright(C) 2013-2024 Super Micro Computer, Inc. All rights reserved.


SFT-DCMS-SINGLE , invoice: none, creation date: N/A
Number of product keys: 1


@jeffangelion: You need SUM 2.4.0, that's the last version that supports removing license keys. You're trying to use SUM 2.14.0, which is too new.

A download link and a SHA-256 checksum for SUM 2.4.0 can be found in here:
#2 (comment)

@hardfalcon thanks for your comment

unfortunately, I already read how to remove license keys, my problem is same as topic starter: even with activated SFT-DCMS-SINGLE, X10DRW-i(T) IPMI (version 3.89, by the way) is unable to display Virtual Media modal window and thus mount any .ISO file

X10DRI/T has the same problem, Virtual Media not working in iKVM/HTML5 (IPMI v3.91) even with SFT-DCMS-SINGLE license

zsrv commented

X10DRI/T has the same problem, Virtual Media not working in iKVM/HTML5 (IPMI v3.91) even with SFT-DCMS-SINGLE license

@jeffangelion you could try adding SFT-OOB-LIC in case the feature is looking for this license too, but I found this:

https://www.supermicro.com/support/faqs/faq.cfm?faq=35874

Do X10 motherboards support HTML5 Virtual Media Mount?

X10 motherboards do NOT support HTML5 Virtual Media Mount.
HTML5 Virtual Media Mount feature is for X11 or newer version motherboards.

@zsrv thanks for your answer

I think this information could be added in README for other users that didn't read this FAQ 😅

https://www.supermicro.com/support/faqs/faq.cfm?faq=35874

Do X10 motherboards support HTML5 Virtual Media Mount?

X10 motherboards do NOT support HTML5 Virtual Media Mount.
HTML5 Virtual Media Mount feature is for X11 or newer version motherboards.

Wish I saw this sooner, would've saved me an hour of troubleshooting. 😂 Oh well, thanks.