1ipmiconsole(8)                  System Commands                 ipmiconsole(8)
2
3
4

NAME

6       ipmiconsole - IPMI console utility
7

SYNOPSIS

9       ipmiconsole [OPTION...]
10

DESCRIPTION

12       ipmiconsole  is a Serial-over-LAN (SOL) console utility. It can be used
13       to establish console sessions to remote machines using the IPMI 2.0 SOL
14       protocol.
15
16       Ipmiconsole  communicates  with a remote machine's Baseboard Management
17       Controller (BMC) to establish a console session. Before any SOL  commu‐
18       nication  can  take  place, the remote machine's BMC must be configured
19       properly.  The FreeIPMI tool bmc-config(1) may be used to do this  con‐
20       figuration.
21
22       Often  (although  not always), console redirection must be also be con‐
23       figured properly in the BIOS and/or operating system. Both must be con‐
24       figured to redirect console traffic out the appropriate COM port.
25
26       Listed  below  are general IPMI options, tool specific options, trouble
27       shooting  information,  workaround  information,  examples,  and  known
28       issues. For a general introduction to FreeIPMI please see freeipmi(7).
29

GENERAL OPTIONS

31       The following options are general options for configuring IPMI communi‐
32       cation and executing general tool commands.
33
34       -h, --hostname=IPMIHOST
35              Specify the remote host to communicate with.
36
37       -u, --username=USERNAME
38              Specify the username to use when authenticating with the  remote
39              host.   If  not  specified,  a null (i.e. anonymous) username is
40              assumed. The user must a high enough privilege  to  establish  a
41              SOL session and have SOL session abilities.
42
43       -p, --password=PASSWORD
44              Specify the password to use when authenticationg with the remote
45              host.  If not specified, a null  password  is  assumed.  Maximum
46              password length is 16 for IPMI 1.5 and 20 for IPMI 2.0.
47
48       -P, --password-prompt
49              Prompt  for  password  to  avoid  possibility  of  listing it in
50              process lists.
51
52       -k, --k-g=K_G
53              Specify the K_g BMC key to  use  when  authenticating  with  the
54              remote  host  for  IPMI  2.0.  If  not  specified, a null key is
55              assumed. To input the key in hexadecimal form, prefix the string
56              with  '0x'.  E.g.,  the key 'abc' can be entered with the either
57              the string 'abc' or the string '0x616263'
58
59       -K, --k-g-prompt
60              Prompt for k-g to avoid possibility of  listing  it  in  process
61              lists.
62
63       --session-timeout=MILLISECONDS
64              Specify  the  session timeout in milliseconds. Defaults to 60000
65              milliseconds (60 seconds) if not specified.
66
67       --retransmission-timeout=MILLISECONDS
68              Specify  the  packet  retransmission  timeout  in  milliseconds.
69              Defaults to 500 milliseconds (0.5 seconds) if not specified.
70
71       -I, --cipher-suite-id=CIPHER-SUITE-ID
72              Specify the IPMI 2.0 cipher suite ID to use. The Cipher Suite ID
73              identifies a set of authentication, integrity, and confidential‐
74              ity  algorithms to use for IPMI 2.0 communication. The authenti‐
75              cation algorithm identifies the algorithm  to  use  for  session
76              setup,  the  integrity algorithm identifies the algorithm to use
77              for session packet signatures, and the confidentiality algorithm
78              identifies the algorithm to use for payload encryption. Defaults
79              to cipher suite ID 3 if not specified. The user should be  aware
80              that  only  cipher  suite  ids 3, 8, and 12 encrypt console pay‐
81              loads. Console information will be sent in the clear  an  alter‐
82              nate cipher suite id is selected. The following cipher suite ids
83              are currently supported:
84
85              0 - Authentication Algorithm = None; Integrity Algorithm = None;
86              Confidentiality Algorithm = None
87
88              1  - Authentication Algorithm = HMAC-SHA1; Integrity Algorithm =
89              None; Confidentiality Algorithm = None
90
91              2 - Authentication Algorithm = HMAC-SHA1; Integrity Algorithm  =
92              HMAC-SHA1-96; Confidentiality Algorithm = None
93
94              3  - Authentication Algorithm = HMAC-SHA1; Integrity Algorithm =
95              HMAC-SHA1-96; Confidentiality Algorithm = AES-CBC-128
96
97              6 - Authentication Algorithm = HMAC-MD5; Integrity  Algorithm  =
98              None; Confidentiality Algorithm = None
99
100              7  -  Authentication Algorithm = HMAC-MD5; Integrity Algorithm =
101              HMAC-MD5-128; Confidentiality Algorithm = None
102
103              8 - Authentication Algorithm = HMAC-MD5; Integrity  Algorithm  =
104              HMAC-MD5-128; Confidentiality Algorithm = AES-CBC-128
105
106              11  - Authentication Algorithm = HMAC-MD5; Integrity Algorithm =
107              MD5-128; Confidentiality Algorithm = None
108
109              12 - Authentication Algorithm = HMAC-MD5; Integrity Algorithm  =
110              MD5-128; Confidentiality Algorithm = AES-CBC-128
111
112       -l, --privilege-level=PRIVILEGE-LEVEL
113              Specify  the privilege level to be used. The currently available
114              privilege levels are USER,  OPERATOR,  and  ADMIN.  Defaults  to
115              ADMIN if not specified.
116
117       --config-file=FILE
118              Specify an alternate configuration file.
119
120       -W, --workaround-flags=WORKAROUNDS
121              Specify  workarounds to vendor compliance issues. Multiple work‐
122              arounds can be specified separated by  commas.  See  WORKAROUNDS
123              below for a list of available workarounds.
124
125       --debug
126              Turn on debugging.
127
128       -?, --help
129              Output a help list and exit.
130
131       --usage
132              Output a usage message and exit.
133
134       -V, --version
135              Output the program version and exit.
136

IPMICONSOLE OPTIONS

138       The following options are specific to Ipmiconsole.
139
140       -e, --escape-char=CHAR
141              Specify an alternate escape character (default char '&').
142
143       --dont-steal
144              Do  not steal an SOL session if one is already detected as being
145              in use. Under most circumstances, if SOL is detected as being in
146              use, ipmiconsole will attempt to steal the SOL session away from
147              the previous session.  This default behavior exists for  several
148              reasons,  most  notably  that  earlier SOL sessions may have not
149              been able to be deactivate properly.
150
151       --deactivate
152              Deactivate a SOL session if one is detected as being in use  and
153              exit.
154
155       --lock-memory
156              Lock  sensitive information (such as usernames and passwords) in
157              memory.
158

ESCAPE CHARACTERS

160       The following escape sequences are  supported.  The  default  supported
161       escape character is '&', but can be changed with the -e option.
162
163       &?     Display a list of currently available escape sequences.
164
165       &.     Terminate the connection.
166
167       &B     Send a "serial-break" to the remote console.
168
169       &D     Send a DEL character.
170
171       &&     Send a single escape character.
172

GENERAL TROUBLESHOOTING

174       Most  often,  IPMI  over LAN problems involve a misconfiguration of the
175       remote machine's BMC.  Double check to make sure the following are con‐
176       figured  properly in the remote machine's BMC: IP address, MAC address,
177       subnet mask, username, user enablement, user privilege,  password,  LAN
178       privilege, LAN enablement, and allowed authentication type(s). For IPMI
179       2.0 connections, double check to make  sure  the  cipher  suite  privi‐
180       lege(s) and K_g key are configured properly. The bmc-config(8) tool can
181       be used to check and/or change these configuration settings.
182
183       The following are common issues for given error messages:
184
185       "username invalid" - The username entered (or a NULL username  if  none
186       was  entered)  is  not  available on the remote machine. It may also be
187       possible the remote BMC's username configuration is incorrect.
188
189       "password invalid" - The password entered (or a NULL password  if  none
190       was  entered)  is not correct. It may also be possible the password for
191       the user is not correctly configured on the remote BMC.
192
193       "password verification timeout" - Password verification has timed  out.
194       A  "password  invalid"  error  (described  above) or a generic "session
195       timeout" (described below) occurred.  During this point in the protocol
196       it cannot be differentiated which occurred.
197
198       "k_g  invalid"  -  The  K_g  key entered (or a NULL K_g key if none was
199       entered) is not correct. It may also be possible the  K_g  key  is  not
200       correctly configured on the remote BMC.
201
202       "privilege level insufficient" - An IPMI command requires a higher user
203       privilege than the one authenticated with. Please try  to  authenticate
204       with a higher privilege. This may require authenticating to a different
205       user which has a higher maximum privilege.
206
207       "privilege level cannot be obtained for  this  user"  -  The  privilege
208       level  you are attempting to authenticate with is higher than the maxi‐
209       mum allowed for this user. Please try again with a lower privilege.  It
210       may  also be possible the maximum privilege level allowed for a user is
211       not configured properly on the remote BMC.
212
213       "authentication type unavailable for attempted privilege level"  -  The
214       authentication  type you wish to authenticate with is not available for
215       this privilege level. Please try again with an alternate authentication
216       type  or  alternate privilege level. It may also be possible the avail‐
217       able authentication types you can authenticate with are  not  correctly
218       configured on the remote BMC.
219
220       "cipher suite id unavailable" - The cipher suite id you wish to authen‐
221       ticate with is not available on the remote BMC. Please try  again  with
222       an  alternate  cipher  suite  id. It may also be possible the available
223       cipher suite ids are not correctly configured on the remote BMC.
224
225       "ipmi 2.0 unavailable" - IPMI 2.0 was  not  discovered  on  the  remote
226       machine. Please try to use IPMI 1.5 instead.
227
228       "connection  timeout"  - Initial IPMI communication failed. A number of
229       potential errors are possible, including an invalid hostname specified,
230       an  IPMI  IP  address  cannot  be  resolved, IPMI is not enabled on the
231       remote server, the network connection is bad, etc. Please  verify  con‐
232       figuration and connectivity.
233
234       "session  timeout"  - The IPMI session has timed out. Please reconnect.
235       If IPMI over LAN continually times out, you may wish  to  increase  the
236       retransmission  timeout.  Some remote BMCs are considerably slower than
237       others.
238
239       Please see WORKAROUNDS below to also if there are any  vendor  specific
240       bugs that have been discovered and worked around.
241

IPMICONSOLE TROUBLESHOOTING

243       The  following  are common issues for given error messages specifically
244       for ipmiconsole.
245
246       "SOL unavailable" - SOL is not configured for use on  the  remote  BMC.
247       It may be not configured in general or for the specific user specified.
248       Authenticating with a different user may  be  sufficient,  however  the
249       IPMI  protocol  does not reveal detail on what is not configured on the
250       remote BMC.
251
252       "SOL in use" - SOL is already in use on the remote BMC. If you  do  not
253       specify  the --dont-steal option, ipmiconsole will attempt to steal the
254       SOL session away from the other session.
255
256       "SOL session stolen" - Your SOL session has been stolen by another ses‐
257       sion. You may wish to try and steal the session back by reconnecting.
258
259       "SOL  requires  encryption"  -  SOL  requires  a  cipher  suite id that
260       includes encryption. Please try to use cipher suite id 3, 8, or 12.  It
261       may  also  be  possible  the encryption requirements are not configured
262       correctly on the remote BMC.
263
264       "SOL requires no encryption" - SOL requires a cipher suite id that does
265       not use encryption. Please try to use cipher suite id 0, 1, 2, 6, 7, or
266       11. It may also be possible the encryption requirements are not config‐
267       ured correctly on the remote BMC.
268
269       "BMC Implementation" - The BMC on the remote machine has a severe prob‐
270       lem in its implementation. Please see the WORKAROUNDS section below for
271       possible  workarounds.  If  additional vendor workarounds are required,
272       please contact the authors.
273
274       "excess retransmissions sent" - An excessive number of  retransmissions
275       of  SOL  packets has occurred and ipmiconsole has given up. This may be
276       due to network issues or SOL issues. Some of the same  issues  involved
277       with  "connection timeout" or "session timeout" errors may be involved.
278       Please try to reconnect.
279
280       "excess errors received" - An excessive number of SOL packet errors has
281       occurred  and  ipmiconsole  has  given  up.  This may be due to network
282       issues or SOL issues.  Please try to reconnect.
283
284       "BMC Error" - This error usually  means  a  vendor  SOL  implementation
285       requires  a  combination of authentication, encryption, privilege, etc.
286       that have not been met by the user's choices.  Please try a combination
287       of  different  cipher  suites, privileges, etc. to resolve the problem.
288       Please see the WORKAROUNDS section below for possible workarounds too.
289

WORKAROUNDS

291       With so many different vendors implementing their own  IPMI  solutions,
292       different  vendors  may implement their IPMI protocols incorrectly. The
293       following lists the workarounds currently available to  handle  discov‐
294       ered compliance issues.
295
296       When possible, workarounds have been implemented so they will be trans‐
297       parent to the user. However, some will require the user  to  specify  a
298       workaround be used via the -W option.
299
300       The hardware listed below may only indicate the hardware that a problem
301       was discovered on. Newer versions of  hardware  may  fix  the  problems
302       indicated  below.  Similar machines from vendors may or may not exhibit
303       the same problems. Different vendors may license  their  firmware  from
304       the  same IPMI firmware developer, so it may be worthwhile to try work‐
305       arounds listed below even if your motherboard is not listed.
306
307       "authcap" - This workaround option will skip early checks for  username
308       capabilities,  authentication  capabilities,  and K_g support and allow
309       IPMI authentication to succeed. It  works  around  multiple  issues  in
310       which the remote system does not properly report username capabilities,
311       authentication capabilities, or K_g status. Those  hitting  this  issue
312       may  see  "username  invalid",  "authentication  type  unavailable  for
313       attempted privilege level", or "k_g invalid" errors.  Issue observed on
314       Asus  P5M2/P5MT-R/RS162-E4/RX4,  Intel  SR1520ML/X38ML,  and  Sun  Fire
315       2200/4150/4450 with ELOM.
316
317       "intel20" - This workaround option will work around several Intel  IPMI
318       2.0  authentication issues. The issues covered include padding of user‐
319       names, automatic acceptance of a RAKP 4 response integrity  check  when
320       using  the  integrity algorithm MD5-128, and password truncation if the
321       authentication algorithm is HMAC-MD5-128. Those hitting this issue  may
322       see  "username  invalid",  "password invalid", or "k_g invalid" errors.
323       Issue observed on Intel SE7520AF2 with Intel Server  Management  Module
324       (Professional Edition).
325
326       "supermicro20" - This workaround option will work around several Super‐
327       micro IPMI 2.0 authentication issues on motherboards w/ Peppercon  IPMI
328       firmware.  The issues covered include handling invalid length authenti‐
329       cation codes. Those hitting  this  issue  may  see  "password  invalid"
330       errors.   Issue  observed on Supermicro H8QME with SIMSO daughter card.
331       Confirmed fixed on newerver firmware.
332
333       "sun20" - This workaround option will work work around several Sun IPMI
334       2.0  authentication issues. The issues covered include invalid lengthed
335       hash keys, improperly hashed keys, and invalid  cipher  suite  records.
336       Those  hitting  this  issue  may  see "password invalid" or "bmc error"
337       errors.  Issue observed on Sun Fire  4100/4200/4500  with  ILOM.   This
338       workaround automatically includes the "opensesspriv" workaround.
339
340       "opensesspriv"  - This workaround option will slightly alter FreeIPMI's
341       IPMI 2.0 connection protocol to workaround an invalid hashing algorithm
342       used  by  the  remote  system. The privilege level sent during the Open
343       Session stage of an IPMI 2.0 connection is sometimes invalid  and  used
344       for  hashing  keys instead of the privilege level sent during the RAKP1
345       connection stage. Those hitting this issue may see "password  invalid",
346       "k_g  invalid",  "bad rmcpplus status code", or "privilege level cannot
347       be obtained for  this  user  "  errors.  Issue  observed  on  Sun  Fire
348       4100/4200/4500  with  ILOM,  Inventec  5441/Dell  Xanadu II, Supermicro
349       X8DTH, Supermicro X8DTG, Supermicro X8DTU, and  Intel  S5500WBV/Penguin
350       Relion 700. This workaround is automatically triggered with the "sun20"
351       workaround.
352
353       "integritycheckvalue" - This workaround  option  will  work  around  an
354       invalid  integrity check value during an IPMI 2.0 session establishment
355       when using Cipher Suite ID 0. The integrity check  value  should  be  0
356       length, however the remote motherboard responds with a non-empty field.
357       Those hitting this issue may see "k_g invalid" errors.  Issue  observed
358       on  Supermicro  X8DTG,  Supermicro  X8DTU,  and  Intel S5500WBV/Penguin
359       Relion 700.
360
361       "solpayloadsize" - This workaround option will not check for valid  SOL
362       payload  sizes  and assume a proper set. It works around remote systems
363       that report invalid IPMI 2.0 SOL  payload  sizes.  Those  hitting  this
364       issue  may  see  "BMC  Implementation"  errors.  Issue observed on Asus
365       P5M2/RS162-E4/RX4, Intel SR1520ML/X38ML, Inventec 5441/Dell Xanadu  II,
366       Sun x4100, Supermicro X8DTH, Supermicro X8DTG, and Supermicro X8DTU.
367
368       "solport"  -  This  workaround  option  will ignore alternate SOL ports
369       specified during the protocol. It  works  around  remote  systems  that
370       report  invalid  alternate  SOL ports. Those hitting this issue may see
371       "connection timeout" errors. Issue observed on Asus P5MT-R and Supermi‐
372       cro X8DTH-iF.
373
374       "solstatus" - This workaround option will not check the current activa‐
375       tion status of SOL during the protocol setup. It  works  around  remote
376       systems  that  do not properly support this command. Those hitting this
377       issue may see "BMC Error" errors. Issue observed on Supermicro X8SIL-F.
378

KNOWN ISSUES

380       On older operating systems, if you input your username,  password,  and
381       other  potentially  security  relevant information on the command line,
382       this information may be discovered by other users when using tools like
383       the  ps(1) command or looking in the /proc file system. It is generally
384       more secure to input password information with options like the  -P  or
385       -K  options.  Configuring security relevant information in the FreeIPMI
386       configuration file would also be an appropriate way to hide this infor‐
387       mation.
388
389       In  order  to  prevent  brute force attacks, some BMCs will temporarily
390       "lock up" after a number of remote authentication errors. You may  need
391       to  wait awhile in order to this temporary "lock up" to pass before you
392       may authenticate again.
393
394       Some motherboards define an OEM SOL inactivity  timeout  for  SOL  ses‐
395       sions. If SOL sessions stay inactive for long periods of time, ipmicon‐
396       sole sessions may be abruptly closed, most likely resulting in  session
397       timeout  errors. Please see OEM notes for information on modifying this
398       parameter if you wish for sessions to stay active longer.
399

SPECIFIC HARDWARE NOTES

401       Intel SR1520ML/X38ML: After a reboot, the SOL session appears to  "dis‐
402       connect"  from  the  motherboard  but stay alive.  Character data input
403       from the ipmiconsole client is accepted by the remote machine,  but  no
404       character  data  or  console  data  is  ever  sent back from the remote
405       machine. The SOL session is subsequently useless. There is currently no
406       workaround  in  place  to  handle  this. The session must be closed and
407       restarted.
408

EXAMPLES

410       # ipmiconsole -h ahost -u myusername -p mypassword
411
412       Establish a console sesssion with a remote host.
413

KNOWN ISSUES

415       On older operating systems, if you input your username,  password,  and
416       other  potentially  security  relevant information on the command line,
417       this information may be discovered by other users when using tools like
418       the  ps(1) command or looking in the /proc file system. It is generally
419       more secure to input password information with options like the  -P  or
420       -K  options.  Configuring security relevant information in the FreeIPMI
421       configuration file would also be an appropriate way to hide this infor‐
422       mation.
423
424       In  order  to  prevent  brute force attacks, some BMCs will temporarily
425       "lock up" after a number of remote authentication errors. You may  need
426       to  wait awhile in order to this temporary "lock up" to pass before you
427       may authenticate again.
428

REPORTING BUGS

430       Report bugs to <freeipmi-users@gnu.org> or <freeipmi-devel@gnu.org>.
431
433       Copyright (C) 2007-2010 Lawrence Livermore National Security, LLC.
434       Copyright (C) 2006-2007 The Regents of the University of California.
435
436       This program is free software; you can redistribute it and/or modify it
437       under  the  terms of the GNU General Public License as published by the
438       Free Software Foundation; either version 2 of the License, or (at  your
439       option) any later version.
440

SEE ALSO

442       freeipmi.conf(5), freeipmi(7), bmc-config(8)
443
444       http://www.gnu.org/software/freeipmi/
445
446
447
448ipmiconsole 0.8.8                 2010-07-21                    ipmiconsole(8)
Impressum