Monday, September 18, 2023

ipmitool not working on Supermicro server with Debian 12

I have a server with a Supermicro X7SBI motherboard. It has a dedicated IPMI port but I could no do anything with it, as this was a second hand server and the IPMI had a fixed IP address in the 83... range and the admin password was unknown to me. I thought that resetting it was straightforward, but ran into a few issues:

First issue: Could not open device at /dev/ipmi0 or /dev/ipmi/0 or /dev/ipmidev/0: No such file or directory

So at first, I thought that the device itself was broken. I unplugged it, checked it, but I could see the IP address and the webserver was accessible, so that seems ok. So I tried to factory reset the BIOS, still no help. Then, after some Googling, I found out that 2 fixes were needed.

1. Adapt the GRUB boot parameters for this type of board

1
//add logs

These articles explain what needs to be done: different ipmi_si port address and add kernel boot parameter

Run everything as root:

vi /etc/default/grub and change GRUB_CMDLINE_LINUX_DEFAULT="quiet" to

1
GRUB_CMDLINE_LINUX_DEFAULT="quiet ipmi_si.type=kcs ipmi_si.ports=0xca2"

Save and exit, then update your GRUB

1
update-grub

Reboot your sever, now the device should be found under /dev/ipmi0

Second issue: Still, there is a second problem with this version of ipmitool for Debian 12

1
2
3
4
5
6
7
8
9
root@debian:~# ipmitool raw 0x6 0x46 0x02
IANA PEN registry open failed: No such file or directory
 61 64 6d 69 6e 00 00 00 00 00 00 00 00 00 00 00
root@debian:~# lsmod | grep ipmi
ipmi_si                73728  0
ipmi_devintf           20480  0
ipmi_msghandler        77824  2 ipmi_devintf,ipmi_si
root@debian:~# ipmitool lan set 1 ipsrc static
IANA PEN registry open failed: No such file or directory

2. Copy missing enterprise numbers

After some Googling, I found out there is some config missing for ipmitool. This command will solve that:

1
wget -O /usr/share/misc/enterprise-numbers.txt https://jff.email/cgit/ipmitool.git/plain/debian/enterprise-numbers.txt?h=debian/1.8.19-5


After which I could reset the ipmi ADMIN password and set the static IP address. Yeehaa!

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
root@debian:~# ipmitool user set name 2 ADMIN
root@debian:~# ipmitool user set password 2
Password for user 2:
Password for user 2:
Set User Password command successful (user 2)
root@debian:~# ipmitool lan set 1 ipsrc static
root@debian:~# ipmitool lan set 1 ipaddr 192.168.0.199
Setting LAN IP Address to 192.168.0.199
root@debian:~# ipmitool lan set 1 defgw ipaddr 192.168.0.1
Setting LAN Default Gateway IP to 192.168.0.1
root@debian:~# ipmitool lan print
Set in Progress         : Set Complete
Auth Type Support       : NONE MD2 MD5 PASSWORD
Auth Type Enable        : Callback :
                        : User     : MD5
                        : Operator : MD5
                        : Admin    : MD5
                        : OEM      : MD5
IP Address Source       : Static Address
IP Address              : 192.168.0.199
Subnet Mask             : 255.255.255.0
MAC Address             : 00:30:48:95:76:55
SNMP Community String   : public
IP Header               : TTL=0x40 Flags=0x40 Precedence=0x00 TOS=0x10
BMC ARP Control         : ARP Responses Enabled, Gratuitous ARP Enabled
Gratituous ARP Intrvl   : 2.0 seconds
Default Gateway IP      : 192.168.0.1
Default Gateway MAC     : 00:00:00:00:00:00
Backup Gateway IP       : 0.0.0.0
Backup Gateway MAC      : 00:00:00:00:00:00
RMCP+ Cipher Suites     : 0,1,2,3,6,7,8,11,12
Cipher Suite Priv Max   : uuuOXXuuOXXuOXX
                        :     X=Cipher Suite Unused
                        :     c=CALLBACK
                        :     u=USER
                        :     o=OPERATOR
                        :     a=ADMIN
                        :     O=OEM

No comments:

Post a Comment