blog.monophile.net

コンピュータのこととかのメモ。

Takaaki Yamamoto

東京工業大学において計算機科学と応用数学を学び、 情報科学芸術大学院大学[IAMAS] においてメディア表現を専攻し修了。 現在は digitiminimi Inc. において、インフラエンジニアとして生計をたててている。

work

各種システム構築と管理を承ります。

Cloud Platform Openstack, GCP, AWS, Azure, ...
Openstack keystone, glance, cinder, swift, neutron, nova, ...
Virtualization QEMU+KVM, LXD/LXC, Docker, ...
OS Debian GNU/Linux, Ubuntu, CentOS, ...
Networks IPSec, L2TP, VXLAN, WirelessAP, ...
WebApps WordPress, GitLab, Redmine, ...
Configuration Management Ansible, Terraform, ...
Monitoring Nagios, Munin, ...

posts

IntelAMTをLinuxで使ってみる

概要

vPro対応のThinkPadを持っていたので、IntelAMTを使って、SOLをやってみた。 BIOSの設定も可能。 2017年になってIntelAMTの脆弱性が発見されたので、IntelAMTのファームウェアのアップデートは必須。 (おそらく、同じセグメントに信頼できるホストしか居ない場合は問題ない。) IntelAMTのファームウェアのアップデートはWindowsじゃないとできなさそう。

IntelAMTの設定

起動時のThinkPadロゴマーク表示しているときににEnterを押してからCtrl-Pを押してから以下のように設定する。 (今回はSOLのみの設定。)

Linux側の設定

pciの[VendorID:DeviceID]を確認する。

$ lspci -nn | grep -i "serial controller"
00:16.3 Serial controller [0700]: Intel Corporation 7 Series/C210 Series Chipset Family KT Controller [8086:1e3d] (rev 04)

/etc/udev/rules.d/z25_sol.rules に上で確認したIDでttySOLへのシンボリックリンクを作成するように設定する。

KERNEL!="ttyS[0-9]", GOTO="no_serial"
ATTRS{vendor}!="0x8086", GOTO="vendor_not_intel"
ATTRS{device}=="0x1e3d", SYMLINK+="ttySOL", ENV{COMMENT}="Serial-Over-Lan $attr{vendor}:$attr{device}"
GOTO="vendor_not_intel"
LABEL="no_serial"

再起動すると以下のようにシンボリックリンクが作成されることが確認できる。

$ ls -l /dev/ttySOL
lrwxrwxrwx 1 root root 5 Aug  4 22:04 /dev/ttySOL -> ttyS4

この状態でgettyを起動することによって、ttySOLが使えるようになる。

$ sudo /sbin/getty -L ttySOL 115200 vt100-nav

ブート時にgettyが立ち上がるように設定するために、 /etc/default/grubでカーネルの起動パラメータを以下のように変更しupdate-grubする。

GRUB_CMDLINE_LINUX="console=tty0 console=ttyS4,115200n8"
GRUB_TERMINAL=serial
GRUB_SERIAL_COMMAND="serial --speed=115200 --port=0xf0e0 --word=8 --parity=no --stop=1"

確認

192.168.xx.xx/255.255.255.0 と同じセグメントから http://192.168.xx.xx:16992/ にアクセスするとIntelAMTの画面が見れる。

また、以下でIntel AMTの情報を確認することも可能。

$ sudo apt install amtterm
$ export AMT_PASSWORD=P@assw0rd
$ amttool -h 192.168.xx.xx info
### AMT info on machine '192.168.xx.xx' ###
AMT version:  8.1.71
Hostname:     your-hostname
Powerstate:   S0
Remote Control Capabilities:
    IanaOemNumber                   0
    OemDefinedCapabilities          IDER SOL BiosSetup BiosPause
    SpecialCommandsSupported        PXE-boot HD-boot cd-boot
    SystemCapabilitiesSupported     powercycle powerdown powerup reset
    SystemFirmwareCapabilities      f800

Serial Over LAN

別ホストからIntelAMTのIPアドレスを指定することによってSerial Over LANができた。

$ export AMT_PASSWORD=P@assw0rd
$ amtterm 192.168.xx.xx
amtterm: NONE -> CONNECT (connection to host)
ipv4 192.168.xx.xx [192.168.xx.xx] 16994 open
amtterm: CONNECT -> INIT (redirection initialization)
amtterm: INIT -> AUTH (session authentication)
amtterm: AUTH -> INIT_SOL (serial-over-lan initialization)
amtterm: INIT_SOL -> RUN_SOL (serial-over-lan active)
serial-over-lan redirection ok
connected now, use ^] to escape

Ubuntu 17.04 your-hostname ttyS4

your-hostname login:

BIOSの設定

IntelAMT経由でBIOSの設定をリモートでするには、 予めBIOSで下記のようにConsole TypeをVT100にしておかなければならない。

上記のように設定した状態で下記のように再起動するとBIOSの設定画面を操作することができる。

$ export AMT_PASSWORD=P@assw0rd
$ gamt 192.168.xx.xx &
$ amttool -h 192.168.xx.xx reset bios

refs