2 Intern
•
311 メッセージ
1
6993
Unityへのコマンド実行(SSHとUEMCLI)
Unityに対してコマンドを実行する方法は、SSHログインとUEMCILインストール環境からのコマンド実行の2通りあると思います。それぞれ作業できるユーザを確認したいのですが、
・SSHログインしてuemcliを実行する場合:serviceユーザ
・UEMCLIをインストールした環境から直接コマンド実行する場合:adminユーザ
という認識で合ってますでしょうか・・・?(以下のFAQページも参考にしています)
ayas
Moderator
Moderator
•
6.7K メッセージ
0
2019年2月5日 22:00
hirachさん
返信ありがとうございます。
・SSHログインできるユーザ=serviceユーザのみ
⇒その通りです。
確かにCLIガイドの該当部分はManage SSH access のみにだけ適応,という記載ですよね。例が悪くてごめんなさい。テクニカルガイドには以下の文言があるのでSSHではservice user credentialが必要、であることには変わりないです。Access system via Putty over SSH for command-line login with “service” user account, use UEMCLi or svc_ service scripts
・serviceユーザは使用できるuemcliコマンドに制限がある
⇒はい。コマンドによってAdminとの使い分けが必要です。そのためログインがserviceでもadminユーザ権限が必要な場合には明示的に-u admin -p を指定する必要があります。
ちなみにserviceユーザ権限が必要なコマンド(/service/system ,/service/ssh,/service/spなど)はCLIガイドにその旨注記されています。『This command must be executed with service user credentials』
例)https://www.dell.com/community/%E3%82%B9%E3%83%88%E3%83%AC%E3%83%BC%E3%82%B8-%E3%82%B3%E3%83%9F%E3%83%A5%E3%83%8B%E3%83%86%E3%82%A3/svc-shutdown%E3%82%B3%E3%83%9E%E3%83%B3%E3%83%89%E3%82%92Windows%E3%81%AE%E3%82%BF%E3%82%B9%E3%82%AF%E3%82%B9%E3%82%B1%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%A9%E3%81%A7%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95/td-p/7179355
(uemcli shutdownコマンドはserviceユーザでの実行が必須。)
・たとえばユーザへの権限付与など、SSHログインですべてのコマンドを実行可能にするための必要な設定が不足していることがあれば、ご教授いただけるとありがたいです。
⇒それぞれのコマンドでの必要なユーザ権限を使い分けることになります。前述したようにService権限が必要なコマンドはその旨記載があり、そのほかはAdmin が必要になるので明示的に指定する形になります。
・Unityに関してお客様によるCLI操作を実行したい場合、原則、UEMCLIがインストールされた環境でUEMCLIを実行する、という認識で良いでしょうか?(SSHアクセスでもどちらでも使いやすい方を選べる、というような認識でいました…)
⇒両者ともに同じなので運用にあった形での選択をしてください。
ayas
Moderator
Moderator
•
6.7K メッセージ
0
2019年2月4日 21:00
hirachさん
おっしゃる通り、SSHアクセスでのUemcli発行はservice userが必要です。(後述資料Page662)しかしUemcliがインストールされた端末からのUemcli発行はUnityシステムへのログインの許されたUser /Pwdであれば発行ができます。そのリストは/user/account show にて確認可能です。(資料Page21)
資料:https://www.emc.com/collateral/TechnicalDocument/docu69330.pdf
試しにやってみました
C:\Program Files (x86)\EMC\Unisphere CLI>uemcli -d 10.xxx.xxx.xxx -u aya -p Password1234# /user/account show
Storage system address: 10.xxx.xxx.xxx
Storage system port: 443
HTTPS connection
Remote certificate:
Issuer: CN=Unity450
Subject: CN=Unity450
Valid from: 2019-01-17 16:18:47 Z
Valid to: 2022-01-16 16:18:47 Z
Would you like to:
[1] Accept the certificate for this session
[2] Reject the certificate
[3] Accept and store
Please input your selection (The default selection is [1]): 1
1: ID = user_admin
Name = admin
Role = administrator
Type = local
5: ID = user_aya
Name = aya
Role = administrator
Type = local
hirach
2 Intern
2 Intern
•
311 メッセージ
0
2019年2月4日 23:00
ayasさん、
ご返信ありがとうございます。
さっそく確認して、以下の疑問が残ってしまいました。。。
・CLIガイドp.662の記載は、Manage SSH accessコマンドを実行する場合に限定の説明のように見えますので、今回の疑問の解消にはあまりつながらない認識です。
──それはそれとして、SSHログインできるユーザ=serviceユーザのみ、という理解で正しいでしょうか?
・/user/account show コマンドは、serviceユーザでログインしたSSH経由のコマンド実行ではAccess is deniedされてしまいました。(Error Code:0x6000002)
serviceユーザは使用できるuemcliコマンドに制限がある、という理解で良いでしょうか?
・もし、SSHログインできるのはserviceユーザだけで、serviceユーザが実行できるuemcliコマンドには制限がある、となりますと、「SSHログインして実行できるコマンドには制限がある」という理解で正しいでしょうか?
たとえばユーザへの権限付与など、SSHログインですべてのコマンドを実行可能にするための必要な設定が不足していることがあれば、ご教授いただけるとありがたいです。
・Unityに関してお客様によるCLI操作を実行したい場合、原則、UEMCLIがインストールされた環境でUEMCLIを実行する、という認識で良いでしょうか?(SSHアクセスでもどちらでも使いやすい方を選べる、というような認識でいました…)
hirach
2 Intern
2 Intern
•
311 メッセージ
1
2019年2月5日 23:00
ayasさん、
詳細な説明ありがとうございます。おかげでよく理解できました。
・SSH接続ログインはserviceアカウントのみ可能であること
・ログイン後のコマンド実行でservice以外のユーザを指定(-u, -p)すればserviceアカウント以外のコマンドも実行可能であること
・adminアカウントとserviceアカウントそれぞれに使用できるコマンドというのが決められていること
・実施したい作業内容と作業環境にあわせて運用の形を検討すること