上回说到为了找代码,老板从仓库帮出来了年底久远的华为服务器,第一台是安装的CentOS系统,但是启动会卡住;另外一台是ESXi,已经被我们破解并可以继续使用。这次让我们使用新式方法解锁这台服务器。
一、情报搜集
这台服务器直接安装了操作系统CentOS6.4,里面跑了很多项目,各种代码和二进制文件。
需要对BMC和操作系统进行密码重置、做好磁盘镜像、重装系统。
在此过程中,对于带外管理的各种方法可以得到验证。
二、带外连接与控制
2.1 连接maxcent设备
使用maxcent设备进行相关连线,包括电源线、VGA线缆、网线等。
本来以为可以顺畅的使用maxcent作为华为服务器的带外管理,并且进行各种BIOS级别的操作,为修复该centos起到重要的作用。没想到,会由于分辨率问题,导致某些关键节点无法看到服务器视频输出。
正常显示
异常显示。当maxcent第一次显示服务器的视频出时,其分辨率为720x400,而随着服务器运行后画面的变动,分辨率会变成640x480或者1024x768等,而这个时候maxcent远端的客户端展示的就是蓝屏了。
查看显示器分辨率的方法。
按1下Menu,然后按几下FUNC一直到最底下的下一页,然后按1下AOTO就可以看当前画面的分辨率了。
但是呢,如果蓝屏时通过WEB页面将maxcent设备重启,有可能会得到正常的画面哦。突然想起来,第一次使用maxcent设备配合8口KVM并使用快捷键进行切换的时候,如果一个画面感觉有异常,就使用快捷键进行切换就好了。明天再试下。
2.2 测试ez2pc
以为是maxcent的问题,后来使用了ez2pc进行测试。
首先遇到了一个问题就是供电问题。
如果显示红灯,那么就拔插下USB线可能就好了。
后来,又遇到一个问题,可以看,但是无法控制。
2.3 尝试使用华为BMC软件连接
从网上下载了华为的KVM软件,无需浏览器各种配置安全策略等,直接运行exe,且适用于mac、linux、windows等系统。
还是BMC靠谱呀。
- 华为FusionServer V3/V5 服务器 BIOS 密码
华为服务器 V3 服务器BIOS默认密码为:Huawei12#$ 或者:uniBIOS123
华为服务器 V5 服务器BIOS默认密码为:Admin@9000
华为服务器 TaiShan 100(XR320)和 200 BIOS 密码
华为 TaiShan 100(型号XR320)和TaiShan 200服务器
BIOS默认密码为:Admin@9000
华为其他型号 TaiShan 100服务器的BIOS默认密码为:Huawei12#$
密码输入错误3次将锁定,只能通过重启服务器来恢复。 - 华为服务器MGMT网口,即BMC(iBMC/iMana)的默认IP地址与子网掩码如下:
默认IP地址:192.168.2.100
默认子网掩码:255.255.255.0 - 华为V2/V3机架服务器BMC(iBMC/iMana)默认用户名和密码
默认用户:root
默认密码:Huawei12#$
老版本iMana默认密码可能为:root
V5机架服务器BMC(iBMC)默认用户名和密码如下:
默认用户:Administrator
默认密码:Admin@9000
2.4 测试ez2pc+maxcent
现场照片
逻辑示意图
形成的结果就是,无论是使用BMC、maxcent client 、ez2pc vnc都可以访问,而且ez2pc vnc可以看的很好。
都可以正常访问
ez2pc的vnc同样有很好的表现
三、服务器系统修复
3.1 按住F11,进入从U盘启动
3.2 启动systemrecuecd
3.3 开启systemrecuecd的sshd
passwd root
systemctl restart sshd
iptables -t filter -F
iptables -t filter -P ACCEPT
chroot切到服务器centos系统
mkdir -p /mnt/centos
mount /dev/sdb5 /mnt/centos
mkdir -p /mnt/centos/sys
mkdir -p /mnt/centos/dev
mkdir -p /mnt/centos/proc
mount -t proc none /mnt/centos/proc
mount --bind /dev /mnt/centos/dev
mount --bind /sys /mnt/centos/sys
chroot /mnt/centos /bin/bash
#cat /etc/fstab
mount /boot
mount /home
mount /opt
mount /tmp
mount /usr
mount /var
3.4 关闭可能有问题的服务
[root@sysrescue /]# chkconfig --list | grep 3:on
(off)NetworkManager 0:off 1:off 2:on 3:on 4:on 5:on 6:off
abrt-ccpp 0:off 1:off 2:off 3:on 4:off 5:on 6:off
abrtd 0:off 1:off 2:off 3:on 4:off 5:on 6:off
acpid 0:off 1:off 2:on 3:on 4:on 5:on 6:off
atd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
auditd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
autofs 0:off 1:off 2:off 3:on 4:on 5:on 6:off
blk-availability 0:off 1:on 2:on 3:on 4:on 5:on 6:off
bluetooth 0:off 1:off 2:off 3:on 4:on 5:on 6:off
(off)certmonger 0:off 1:off 2:off 3:on 4:on 5:on 6:off
cgconfig 0:off 1:off 2:on 3:on 4:on 5:on 6:off
cpuspeed 0:off 1:on 2:on 3:on 4:on 5:on 6:off
crond 0:off 1:off 2:on 3:on 4:on 5:on 6:off
cups 0:off 1:off 2:on 3:on 4:on 5:on 6:off
firstboot 0:off 1:off 2:off 3:on 4:off 5:on 6:off
haldaemon 0:off 1:off 2:off 3:on 4:on 5:on 6:off
(off)influxdb 0:off 1:off 2:on 3:on 4:on 5:on 6:off
ip6tables 0:off 1:off 2:on 3:on 4:on 5:on 6:off
irqbalance 0:off 1:off 2:off 3:on 4:on 5:on 6:off
iscsi 0:off 1:off 2:off 3:on 4:on 5:on 6:off
iscsid 0:off 1:off 2:off 3:on 4:on 5:on 6:off
(off)jexec 0:off 1:on 2:on 3:on 4:on 5:on 6:off
kdump 0:off 1:off 2:off 3:on 4:on 5:on 6:off
(off)keepalived 0:off 1:off 2:on 3:on 4:on 5:on 6:off
lm_sensors 0:off 1:off 2:on 3:on 4:on 5:on 6:off
lvm2-monitor 0:off 1:on 2:on 3:on 4:on 5:on 6:off
mdmonitor 0:off 1:off 2:on 3:on 4:on 5:on 6:off
(off)messagebus 0:off 1:off 2:on 3:on 4:on 5:on 6:off
netcf-transaction 0:off 1:off 2:on 3:on 4:on 5:on 6:off
(off)netfs 0:off 1:off 2:off 3:on 4:on 5:on 6:off
network 0:off 1:off 2:on 3:on 4:on 5:on 6:off
nfslock 0:off 1:off 2:off 3:on 4:on 5:on 6:off
ntpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
(off)openvpn 0:off 1:off 2:on 3:on 4:on 5:on 6:off
portreserve 0:off 1:off 2:on 3:on 4:on 5:on 6:off
postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:off
rpcbind 0:off 1:off 2:on 3:on 4:on 5:on 6:off
rpcgssd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
rpcidmapd 0:off 1:off 2:off 3:on 4:on 5:on 6:off
rsyslog 0:off 1:off 2:on 3:on 4:on 5:on 6:off
sshd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
sysstat 0:off 1:on 2:on 3:on 4:on 5:on 6:off
udev-post 0:off 1:on 2:on 3:on 4:on 5:on 6:off
chkconfig monitorix off
chkconfig jenkins off
chkconfig messagebus off
chkconfig nginx off
chkconfig nginx-debug off
chkconfig nginx-debug off
chkconfig certmonger off
chkconfig postfix off
chkconfig NetworkManager off
chkconfig network off
chkconfig firstboot off
3.5 检查/etc/rc.local
3.6 最后还是不行
虽然不行,但是经过修改ip地址已经可以正常远程登录了。
至此,该服务器的优化工作就到这里了。
尝试将该服务器的硬盘做好镜像,然后给服务器直接安装ESXi。
四、经验总结
- 常见的带外管理方式有板载BMC,还有第三方模拟设备(maxcent或者ez2pc)
- 对于BIOS底层级别的服务器操作,还是BMC靠谱
- 对于系统已经安装,需要带外远程使用,maxcent或者ez2pc可能会好一些