NetApp ONTAP 9.xに長らく存在していた diagアカウントをロックしていても、lsなどのコマンドを実行できる、という技があった。
例
ontap98::> set diag
Warning: These diagnostic commands are for use by NetApp personnel only.
Do you want to continue? {y|n}: y
ontap98::*> systemshell -node localhost -command ls /
(system node systemshell)
BUILD mroot_late
COMPAT.TXT mroot_late.tgz
COPYRIGHT netapp_nodar_build_check
INSTALL nfsroot
README.TXT ontap
VERSION ovl
bin partner
boot platform
cap.xml proc
cfcard root
clus sbin
dev sim
etc sldiag
fw tmp
kmip usr
lib var
libexec varfs.tgz
mnt vs_conf_files.tgz
mroot webjail
mroot.tgz
ontap98::*>
ONTAP 9.10.1でも使えていたのだが、Active Directory暗号化問題パッチを適用したONTAP 9.10.1P12で試したところ、実行できなくなっていた。
netapp9101::> set diag
Warning: These diagnostic commands are for use by NetApp personnel only.
Do you want to continue? {y|n}: y
netapp9101::*> systemshell -node localhost -command ls /
(system node systemshell)
Error: command failed: Error: Account currently locked. Contact the storage
administrator to unlock it.
netapp9101::*>
え!?と調べたら ONTAP 9.12.1リリースのころからのパッチバージョンから使えなくなっていた模様。
diagアカウントがロックされている場合は、systemshellを禁止します
以降のバージョンが対象
9.7P22
9.8P15
9.9.1P13
9.10.1P9
9.11.1P5.
9.12.1.
9.13.0
9.13.1.
ということで、いまのONTAPだとdiag モードのロックを解除しないと実行できなくなっていました。
公式の解除手順 SystemShell diagユーザアカウントのロックを解除する方法
上記手順だと、diagユーザアカウントにパスワードを設定していますが、「systemshell -node localhost -command コマンド」で実行する場合はパスワード設定は必須ではありません。
現在のdiagユーザのロック状況を確認「security login show -username diag」(バージョンによっては security login show -user-or-group-name diag)
netapp9101::> security login show -username diag
Vserver: netapp9101
Second
User/Group Authentication Acct Authentication
Name Application Method Role Name Locked Method
-------------- ----------- ------------- ---------------- ------ --------------
diag console password admin yes none
netapp9101::>
「Acct Locked: yes」だとロックされている
「security login unlock -username diag」を実行して、ロック解除する
netapp9101::> security login unlock -username diag
netapp9101::> security login show -username diag
Vserver: netapp9101
Second
User/Group Authentication Acct Authentication
Name Application Method Role Name Locked Method
-------------- ----------- ------------- ---------------- ------ --------------
diag console password admin no none
netapp9101::>
ロック解除したあとであれば従来通り実行できた
netapp9101::> set diag
Warning: These diagnostic commands are for use by NetApp personnel only.
Do you want to continue? {y|n}: y
netapp9101::*> systemshell -node localhost -command ls /
(system node systemshell)
BUILD mroot_late
COMPAT.TXT mroot_late.tgz
COPYRIGHT netapp_nodar_build_check
INSTALL nfsroot
README.TXT ontap
VERSION ovl
bin partner
boot platform
cap.xml proc
cfcard root
clus sbin
dev sim
etc sldiag
fw tmp
kmip usr
lib var
libexec varfs.tgz
mnt vs_conf_files.tgz
mroot webjail
mroot.tgz
netapp9101::*>
なお、ONTAP OSの標準値が変わっていますので、利用が終わったら「security login lock -username diag」を実行してロック状態を戻しておきましょう
netapp9101::*> set admin
netapp9101::> security login lock -username diag
netapp9101::> security login show -username diag
Vserver: netapp9101
Second
User/Group Authentication Acct Authentication
Name Application Method Role Name Locked Method
-------------- ----------- ------------- ---------------- ------ --------------
diag console password admin yes none
netapp9101::>