[TOC]
0x00 前言
戴尔远程访问控制器(DRAC-Integrated Dell Remote Access Controller6 )控制台是管理站软件,旨在提供适用于戴尔系统的远程管理功能, 是一种系统管理硬件和软件解决方案,
iDRAC6 Express/Enterprise 作用:
- 用于为 Dell PowerEdge 系统提供远程管理功能、崩溃系统恢复和电源控制功能。
- 您可以使用网页浏览器或RACADM命令行界面(CLI),远程连接DRAC硬件并访问DRAC功能。
注意:操作之前请确保服务器已经安装 iDRAC6 Express/Enterprise 硬件
- iDRAC6 Express 没有虚拟控制台 ,而 iDRAC6 Enterprise 包含虚拟控制台功能。
0x01 iDRAC远程管理
默认账号为 root,密码为 calvin,默认的静态IP:192.168.0.120;
- 首先我们需要开启iDRAC的支持,在开机界面输入
Ctrl E
进入配置界面;
image-20191226160334739
- 将服务器的远程管理卡接入网络或服务器的iDRAC连接口直连笔记本电脑,
- 若是iDRAC Express License 只能使用网卡第一个网口进行共享,
- 若是iDRAC Enterprise License则可以使用独立的专属口
image-20191225150409251
- 在DELL服务器R710的前面板的显示屏上查阅iDRAC的IP地址;
按打钩键——>View——>iDRAC I——>IPV4-IP
, 原始默认的IP192.168.0.120 255.255.255.0
, 如果笔记本想直连它设置为同一网段即可;
- BIOS中设置静态或动态的iDRAC的IP地址
- 在前面板中设置静态或动态的iDRAC的IP地址
image-20191225111548857
如果是像R210服务器一样没有界面,您需要在第一部中进行设置NIC Selection 它的参数如下:
- “Dedicated”(专用)— 选择此选项可以使远程访问设备能够使用 iDRAC Enterprise 上的专用网络接口
- 此接口不与主机操作系统共享并会将管理通信路由到单独的物理网络,从而能够与应用程序通信分开;(需要安装 Enterprise 卡)
- “Shared”(共享)— 选择此选项可以与主机操作系统共享网络接口。远程访问设备通过 NIC 1 和 NIC 2 接收数据,但是只通过 NIC 1 发送数据。如果 NIC 1 出现故障,远程访问设备将不可访问。
- “Shared with Failover LOM2”(与故障转移 LOM2 共享)— 选择此选项可以与主机操作系统共享网络接口
- 远程访问设备通过 NIC 1 和 NIC 2 接收数据,但是只通过 NIC 1 发送数据。如果 NIC 1 出现故障,远程访问设备会故障转移到 NIC 2 进行所有数据发送。同样当NIC2 出现问题的时候远程访问设备会转回到恢复正常的NIC 1接口进行数据发送
- “Shared with Failover All LOMs”(与故障转移所有 LOM 共享)— 选择此选项可以与主机操作系统共享网络接口;
- 当主机操作系统针对 NIC 组配置后,远程访问设备网络接口将具有全部功能。远程访问设备通过 NIC 1、NIC 2、NIC 3 和 NIC 4 接收数据,但是只通过 NIC 1 发送数据。
image-20191226160611165
- 在IE浏览器(该页面会安装并调用IE控件)中输入iDRAC的IP地址,如果是用IE需要将该地址加入
兼容性视图和信任网站列表
,并且将该iDRAC的IP地址加入”受信任的站点”中;
image-20191225112000091
- 登录成功后的页面
image-20191225112054746
1.基础修改
首次登录需要修改登录密码,在界面左侧,点击“iDRAC设置”–“用户验证”,点击用户的ID号码;选择“配置用户”,然后点击“下一步”;在“更改密码”后面勾选,然后输入两遍密码,拉到最下面点击“应用”即可。
如果需要添加idrac用户可以才有控制台建立或者采用RACADM工具进行管理;与上面的步骤大致相同不同的是选择未启用的用户ID
image-20191225113633675
设置用户名及其IPMI用户权限,有四种权限可以选择,在最下面配置iDRAC用户权限,需要给予的权限勾选上就可以了,然后点击“应用”,用户就创建完成了。
image-20191225114057395
2.许可导入下载
DRAC 7/8/9 许可试用下载地址(https://www.dell.com/support/article/zh-cn/sln309292/idrac-cmc-openmanage-enterprise-openmanage-integration-with-microsoft-windows-admin-center-openmanage-integration-with-servicenow-and-dpat-trial-licenses?lang=en)
例如:iDRAC8 许可导入后需要重新注销登陆然后头部会变成(Enterprise)
- iDRAC8 Enterprise Trial License (30 days):https://dell.app.box.com/public/static/42koqyu6vz3f0ruw3br1pc1fw7nz1wii.zip
- iDRAC8 Enterprise Extended Trial License (240 days):https://dell.app.box.com/public/static/29mkl6c216pqkhs57zxiwdu2883yixsj.zip
WeiyiGeek.许可导入
2.远程安装系统
方式1.JAVA 控制台 步骤:导航栏选择控制台/介质,启动虚拟介质将状态设置成为虚拟介质;
image-20191226162129600
可远程挂载ISO文件;先选择需要挂载的ISO文件,再勾选相应的映射,
image-20191225115332450
然后退出在虚拟控制台中按F11进入引导菜单后第一次选择启动设备需要选择选择”虚拟CD”
image-20191225122116080
方式2.HTML 控制台 描述: 虚拟控制台 -> 插件类型选择(HTML) -> 应用 -> 然后启动虚拟控制台- 启动控制台;
WeiyiGeek.HTML安装
注意事项:
- iDRAC控制台管理可能需要Java的支持;
0x02 Racadm 命令工具
描述:RACADM CLI是DRAC的命令行用户界面。
RACADM 下载地址:https://www.dell.com/support/home/cn/zh/cnbsd1/Drivers/DriversDetails?driverId=K7F2N
语法实例:
代码语言:javascript复制racadm -r <RAC IP address> -u <username> -p <password> <subcommand> <options> #常规方式
racadm -r <RAC IP address> -i <subcommand> <options> # 交互式输入密码
racadm -r <RAC IP address> -u <username> -p <password> help <subcommand> #命令帮助
#实际案例
racadm -r 192.168.12.230 -u root -p calvin getsysinfo
racadm常用子命令: 硬件资源:
- 获取内存大小:racadm get BIOS.memSettings.SysMemSize
- 获取内存工作速率:racadm get BIOS.MemSettings.SysMemSpeed
- 获取内存类型:racadm get BIOS.MemSettings.SysMemType
BIOS相关:
- 错误提示状态:racadm get BIOS.MiscSettings.ErrPrompt
- 关闭错误提示:racadm set BIOS.MiscSettings.ErrPrompt Disabled
- BIOS启动模式:racadm get BIOS.BiosBootSettings.BootMode(默认BIOS,另有UEFI)
- 系统启动顺序:racadm get BIOS.BiosBootSettings.BootSeq
- 更改系统启动顺序:racadm set BIOS.BiosBootSettings.BootSeq NIC.Integrated.1-1-1,HardDisk.List.1-1,Optical.SATAEmbedded.E-1
- 提交BIOS objects job:jobqueue create BIOS.Setup.1-1
- 获取sn:racadm get BIOS.SysInformation.SystemServiceTag
- 获取型号:racadm get BIOS.SysInformation. SystemModelName
- 获取bios版本:racadm get BIOS.SysInformation. SystemBiosVersion
网卡相关:
- 获取网卡mac:racadm getsysinfo -s ( racadm nicstatistics | racadm racdump )
- 获取网卡3是否开启pxe:racadm get nic.NICConfig.3.LegacyBootProto
- 启用网卡pxe:racadm set nic.NICConfig.3.LegacyBootProto PXE
- PXE配置应用生效:racadm jobqueue create NIC.Integrated.1-3-1
- 提交NIC objects job:racadm jobqueue create NIC.Integrated.1-1 -r pwrcycle -s TIME_NOW -e 20120501100000
磁盘相关:
- 获取物理磁盘:racadm storage get pdisks
- 获取虚拟磁盘信息:storage get vdisks -o [ -p status,size,layout,state ]
raid相关:
- 获取raid控制器:racadm storage get controllers
- 获取raid控制器属性name、status:racadm storage get controllers -o -p name,status
- 删除所有raid:racadm storage resetconfig:RAID.Integrated.1-1
- 提交storage作业:racadm jobqueue create RAID.Integrated.1-1 -s TIME_NOW -r none ( forced | pwrcycle | graceful) [ –realtime ]
- 创建raid5,分配300G做系统:racadm storage createvd:RAID.Integrated.1-1 -rl r5 -size 300g -pdkey:Disk.Bay.0:Enclosure.Internal.0-1:RAID.Integrated.1-1,Disk.Bay.1:Enclosure.Internal.0-1:RAID.Integrated.1-1,Disk.Bay.2:Enclosure.Internal.0-1:RAID.Integrated.1-1
- 创建raid5:racadm storage createvd:RAID.Integrated.1-1 -rl r5 -pdkey:Disk.Bay.0:Enclosure.Internal.0-1:RAID.Integrated.1-1,Disk.Bay.1:Enclosure.Internal.0-1:RAID.Integrated.1-1,Disk.Bay.2:Enclosure.Internal.0-1:RAID.Integrated.1-1
用户相关:注数字2、15为用户ID。
- 查看用户信息:racadm get idrac.users.2
- 添加用户:racadm set idrac.users.15.username chenss
- 设置密码:racadm set idrac.users.15.password wuyancs
- 设置为idrac管理员:racadm set idrac.users.15.Privilege 0x1ff
- 启用用户:racadm set idrac.users.15.enable enabled
IP相关:
- 获取idrac ip info:racadm get iDRAC.IPv4[ Address | Static | Gateway ]
日志相关:
- 获取前置面板LCD显示信息:racadm get System.LCD.CurrentDisplay
系统相关:
- 开机:racadm serveraction powerup
- 关机:racadm serveraction powerdown
- 重启:racadm serveraction powercycle
- 状态:racadm serveraction powerstatus
- 获取idrac snap info快照:racadm get iDRAC.SNMP
基础实例:
(1)通过命令行开启iDRAC6的WEB 服务
- 在客户端安装PUTTY 工具, 登陆主机iDRAC,输入iDRAC 的IP 地址,点击open,
- 出现命令行模式,输入iDRAC6 的用户名和密码,
- 在命令行提示符后,敲入以下命令
racadm getconfig -g cfgracTuning
,查看当前iDRAC 服务的开启状态 (cfgRacTuneWebServerEnable=0
表明该iDRAC 卡的WEB 服务未启动,0:表示未启动;1: 表示启动) - 再次输入命令
racadm config -g cfgRacTuning -o cfgRacTuneWebServerEnable 1
服务开启成功。
(2) 修改和查看用户
代码语言:javascript复制#通过命令行修改root用户的密码,其中user2为root的用户ID。
> racadm -r 192.168.92.38 -u root -p Oldpass set idrac.users.2.password Newpass
Security Alert: Certificate is invalid - Certificate is not signed by Trusted Third Party
Continuing execution. Use -S option for racadm to stop execution on certificate-related errors.
[Key=idrac.Embedded.1#Users.2]
Object value modified successfully
#查看用户信息
> racadm get idrac.users.2
WeiyiGeek.
(3) iDRAC证书替换 Dell iDRAC团队的Shine KA和Florin Dragan。
现在,您可使用最新版本的iDRAC (iDRAC7 1.30.30)将自定义签名证书上传到iDRAC。利用该功能,iDRAC将自动为每个签署有上传的签名证书的iDRAC创建唯一的SSL证书。此功能还有以下优点:
- 组织中的每个iDRAC都有唯一证书
- 您可以将签名证书上传到客户端,而且在访问组织中的所有iDRAC时,系统都不会提示任何与证书相关的警告。
要使用此功能,您需将签名证书上传到iDRAC。签名证书上传后,iDRAC将会为自身生成一个证书,此证书将使用上传的签名证书签署。该证书的有效期为7年。已签署证书的公用名将依据iDRAC的DNS DRAC名称和iDRAC的DNS域名(iDRAC的DNS DRAC名称。iDRAC的DNS域名)命名。如果iDRAC没有配置DNS名称,iDRAC的IPv4或IPv6(如果IPv4地址不可用)地址将用作证书的公用名。iDRAC创建的证书将有2048字节的加密密钥。 签名证书需要封装为PKCS#12格式,才能上传到iDRAC。该PKCS#12文件应有签名证书和对应的私钥。iDRAC将支持带或不带密码的PKCS#12文件。作为PKCS#12文件的一部分的私钥,将被安全地存储于iDRAC中,但系统不提供从iDRAC下载私钥的选项。即使是iDRAC管理员,也不能下载私钥。 您可以使用iDRAC GUI或Racadm界面上传(PKCS#12文件)、下载或删除自定义签名证书。自定义签名证书上传后,iDRAC将自动重新启动。这样即会使用上传的签名证书创建SSL证书,并将其应用到IDRAC。当您从iDRAC删除签名证书时,iDRAC也将重新启动。当您从iDRAC下载签名证书时,证书将被下载但不包含私钥。 对于这一功能,您也可继续使用现有的将证书上传到iDRAC的方式(使用CSR和证书或私钥和证书)。
描述:为 Dell iDRAC8 上传 SSL 证书流程步骤, WEB 界面只能上传证书不能上传私钥,所以需要使用 racadm 命令行工具来上传首先得安装 racadm上面我们已经介绍了Windows的安装方法:
代码语言:javascript复制# 1.Windows 参考上面的地址
# 2.Linux - CentOS7:
- https://www.dell.com/support/home/zh-cn/drivers/driversdetails?driverid=0992n&oscode=rhe70
- https://dl.dell.com/FOLDER05920767M/1/DellEMC-iDRACTools-Web-LX-9.4.0-3732_A00.tar.gz
# 3.Linux - Ubuntu
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key 1285491434D8786F
sudo sh -c "echo deb http://linux.dell.com/repo/community/openmanage/910/xenial xenial main > /etc/apt/sources.list.d/linux.dell.com.sources.list"
sudo apt-get update
sudo apt-get install srvadmin-idracadm8
此处以CentOS7安装为示例进行以下是我的实验环境:
代码语言:javascript复制测试环境:
- CentOS-7-x86_64-Minimal-1908
- DellEMC-iDRACTools-Web-LX-9.4.0-3732_A00.tar.gz
流程步骤:
1) racadm 工具进行远程管理iDRAC
代码语言:javascript复制cd /root
wget http://d.rc.it/Drivers/Server/iDRACTools/DellEMC-iDRACTools-Web-LX-9.4.0-3732_A00.tar.gz
tar zxvf DellEMC-iDRACTools-Web-LX-9.4.0-3732_A00.tar.gz
cd iDRACTools/racadm/
bash ./install_racadm.sh
2) 为了方便使用,我建议创建一个软链接(非必须)
代码语言:javascript复制ln -s /opt/dell/srvadmin/sbin/racadm /usr/sbin/racadm
3) 解决libssl.so错误即ERROR:RAC1170 Unable to find the SSL library in default path
#去 /usr/lib64 找找你的libssl库文件,然后向dell的lib64目录创建一个软链接即可
ln -s /usr/lib64/libssl.so.1.0.2k /opt/dell/srvadmin/lib64/libssl.so
4) 安装后进行测试iDRAC连接
代码语言:javascript复制# 语法
$ racadm -r <idrac管理地址> -u <idrac用户名> -p <idrac密码> <命令> <选项>
$ racadm -r xx.xx.xx.xx -i sslcertupload -t 1 -f xxx.crt
$ racadm -r 192.168.0.120 -u racuser1 -p aygqt12a getsysinfo
# 安全警告:证书无效-证书不是由继续执行的受信任的第三方签署的。
# 使用racadm的-S选项在证书相关错误时停止执行。
WeiyiGeek.
5) 使用的软件是XCA一个功能强大的Windows 证书管理器 官方地址: http://hohnstaedt.de/xca 下载地址: https://github.com/chris2511/xca/releases/tag/RELEASE.2.3.0
代码语言:javascript复制# 1.IDRAC -> 网络 -> SSL 证书 (注意服务器证书 、自定义(客户端)证书)
# 2.生成证书签名请求 (CSR)
# 3.下载 SSL 证书 (csr.txt)
# 4.根据证书请求文件与密钥生成证书
openssl x509 -req -days 365 -in csr.txt -out server.crt -signkey server.key
Signature ok
subject=/C=CN/ST=ChongQing/L=ChongQing/O=192.168.12.230/OU=DELL/CN=192.168.12.230/emailAddress=test@test.com
Getting Private key
Enter pass phrase for server.key:
# 5.指令:选择符合公钥加密标准 #12 (PKCS #12) 的证书;如果密码受保护,请在“PKCS#12 密码”字段中输入密码,然后单击“应用”以开始传输。
openssl pkcs12 -export -in server.crt -inkey server.key -out certificate.pfx
Enter pass phrase for server.key:
Enter Export Password:
Verifying - Enter Export Password:
# 6.上载自定义 SSL 证书签名证书(选择文件并输入导出密码)
6) 替换证书请先把证书文件可私钥文件上传到服务器.
代码语言:javascript复制#第一行,上传key文件
racadm -r 10.170.135.125 -u idrac_username -p idrac_password sslkeyupload -t 1 -f /root/10.170.135.125.key
# SSL key successfully uploaded to the RAC.
#第二行,上传证书文件
racadm -r 10.170.135.125 -u idrac_username -p idrac_password sslcertupload -t 1 -f /root/10.170.135.125.crt
#第三行,重启idrac
racadm -r 10.170.135.125 -u idrac_username -p idrac_password racreset
WeiyiGeek.
7) 效果展示
代码语言:javascript复制上图测试的服务器是戴尔R720,iDrac7,因为iDrac7使用的是TLS1.0,因此google浏览器提示不安全。
下图为戴尔R730,iDrac8,使用TLS1.2通信,小锁头出来了
WeiyiGeek.效果测试
注意事项:
(1) 对于iDrac7的服务器,输入第一行和第二行,iDrac就自动重启了, 对于iDrac8 的服务器,需要手动输入第三行,才会执行重启操作。
(2) 脚本整理
代码语言:javascript复制ip=10.0.0.1
idrac_username=root
idrac_password=idrac_password
racadm -r $ip -u $idrac_username -p $idrac_password sslkeyupload -t 1 -f /root/$ip.key
racadm -r $ip -u $idrac_username -p $idrac_password sslcertupload -t 1 -f /root/$ip.crt
racadm -r $ip -u $idrac_username -p $idrac_password racreset
戴尔服务器iDRAC SSL配置失败解决办法
1.SSH登录到服务器,使用idrac的账号和密码登陆
2./admin1-> racadm
3.删除自定义ssl证书
代码语言:javascript复制racadm>>sslcertdelete -t 3
racadm>>racadm racreset
参考地址:
- https://www.tutugreen.com/wordpress/2020-06-04-idrac-upload-wildcard-ssl-cert/
- https://blog.nanpuyue.com/2018/039.html
(4) iDRAC lisence替换和导出
代码语言:javascript复制具体操作方法如下:
0、前置要求:服务器上必须有iDRAC硬件(iDRAC7或更高),当前的许可至少是Express;
1、按服务器的Service TAG购买iDRAC的enterprise许可,收到一个xml文件;
2、下载安装Open Manager RACADMIN软件(或Open Manager SrvAdmin加iDRAC的服务模块插件);
3、racadm license import -f "d:backupr720 driversxxxxxxx.xml" -c idrac.embedded.1
注:如果绝对路径中的名称有空格,就需要加双引号。反之,不需要加双引号。(不能使用单引号,会提示语法错误)
4、观察程序显示,如果成功会提示“The License Manager action succeeded”;
5、升级完成后,用racadm racreset soft命令重启iDRAC。
$racadm -r 192.168.0.1 -u admin -p calvin license import -f C:MylicdirLicense.xml -c idrac.embedded.1
racadm -r 192.168.12.230 -u root -p calvin license import -f "C:UsersAdministratorDesktopiDRAC8.xml" -c idrac.embedded.1 -o-
racadm -r 192.168.12.230 -u root -p calvin license export -f License.xml -l 192.168.12.216:/mnt/nfs/k8slog -t 1
> racadm -r 192.168.12.230 -u root -p calvin license import -f "C:UsersAdministratorDesktopiDRAC8.xml" -c idrac.embedded.1 -o
Security Alert: Certificate is invalid - Name on Certificate is invalid or does not match site name
Continuing execution. Use -S option for racadm to stop execution on certificate-related errors.
LIC009 : The license upgrade was unsuccessful.
下面是一些可能需要用到的racadm命令。
查看网络配置:racadm getniccfg
设置ipv4静态地址:racadm setniccfg -s 172.27.7.27 255.255.252.0 172.27.4.1
软重启:racadm racreset soft
帮助:racadm help
参考: https://blog.csdn.net/weixin_33875564/article/details/91469647
https://juejin.cn/post/6844903815909638151
0x03 ipmitool 工具
DELL 服务器风扇转速调整 PS:家用,个人使用可以调整。企业、IDC就不要调整了。 设备参数:
代码语言:javascript复制型号:dell r720xd 3.5 12盘位
cpu:e5-2650 * 2
memory:64GB
disk:3TB HDD (RAID5)
iDRAC:version 7
实践流程:
Step 1.下载ipmitool工具https://dl.dell.com/FOLDER04161746M/1/OM-BMC-Dell-Web-WIN-8.5.0-2372_A00.exe
Step 2.配置风扇转速
代码语言:javascript复制# 1.首先要关闭风扇自动调速功能,否则我们手动设置的转速是不会生效的。
# 最后的0x00表示关闭自动调速,0x01表示开启自动调速
ipmitool -I lanplus -H iDRAC地址 -U iDRAC用户名 -P iDRAC用户密码 raw 0x30 0x30 0x02 0xff 0x00
# 2.其次关闭自动调速之后,我们就可以按照我们自己的意愿来调整转速了,我这边设置为10%。
# 最后的0x0a表示转速的百分比的十六进制,0a表示10%,0f表示15%。
ipmitool -I lanplus -H iDRAC地址 -U iDRAC用户名 -P iDRAC用户密码 raw 0x30 0x30 0x02 0xff 0x0a
3.确认配置设置完成后我们可以通过iDRAC管理页面查看设置的结果。 调整发现,转速确实低了,之前一直稳定在20%-25%(5000 转)左右,功耗大概在170w。通过调低风扇转速,不仅静音了还降低了功耗。
WeiyiGeek.
0x04 iDRAC监控
描述:采用Zabbix监控Dell服务器硬件(iDRAC) 基础环境:
代码语言:javascript复制服务器型号:Dell PowerEdge R730xd
iDRAC地址:10.10.10.2
监控方式:SNMP
Dell服务器端
代码语言:javascript复制#登录iDRAC
浏览器登录https://10.10.10.2
#启用SNMP
点击“iDRAC”——“网络”——“服务”——“SNMP代理”
勾选“已启用”,然后点击“应用”
zabbix web端
代码语言:javascript复制#下载模板
地址:https://share.zabbix.com/cat-server-hardware/dell/dell-idrac
#导入模板
主机配置SNMP interfaces,IP为10.10.10.2
主机添加模板Dell iDRAC
0x05 入坑出坑
1.Dell IDRAC 控制台“网络连接中断”错误解决方法
描述:iDRAC是Dell服务器的远程管理面板,在安装Java软件后,面板里点击连接控制台就可以用图形化界面操作,今天使用遇到一个问题,连接老提示“查看器已终止,网络连接中断”错误
,Java安全设置里添加“站点例外”、关闭防火墙软件,检查Java高级设置还是不行,后来装回Java 7旧版使用就正常了。
问题原因: 1.java版本 2.idrac未设置共享即同一时间段只能一人访问;
解决流程:
# 1.安装JDK7.x版本
# 2.在cmd > Control 控制面板设置 java 安全将当前访问站点进行加入;
# 3.勾上TLS/1.X的步骤 控制面板-->搜索java-->打开java-->高级-->勾选TLS/1.X
2.Dell IDRAC 控制台未发现可用证书,导致登陆失败,并出现无法访问错误
问题截图:
WeiyiGeek.登陆失败,并出现无法访问错误
解决办法: 编辑主机hosts文件将idrac的IP与idrac name进行绑定,并访问https://idrac-8M0M6H2
进行设置本地或者java登陆控制台,并在JAVA控制面板设置支持TLS 1.0
192.168.1.30 idrac-8M0M6H2