vCenter 어플라이언스 ssh 접속하여 sso 계정 비밀번호 변경.

VMware 6.0의 웹 cli 접속은 어도비 플래시의 EOL(End of Life) 때문에 현재는 사용이 거의 불가능하다. 물론, vSphere client를 사용하면 되지만 몇몇 기능은 web cli에서만 사용 가능하다.

얼마전 추가한 사용자가 로그인이 안되는 현상 – 비밀번호가 일치하지 않음 – 이 발생하여, 비밀번호를 변경하려 web cli에 접속했으나, 플래시 문제로 작업이 불가능한 상황이 발생했다.
이런 경우, vCenter 서버에 ssh 접속하여 비밀번호 변경이 가능했다.

1. vCenter 서버 어플라이언스의 ssh 접속 설정.
vsphere client에 접속하여, vCenter 서버를 선택하고 콘솔을 열면 아래와 같은 화면을 볼 수 있다.

F2를 누르고 root 계정으로 로그인 한다.

로그인 후 Troubleshooting Mode Options 를 선택한다.

Enable SSH를 선택하면 ssh 접속 가능상태가 된다.

2. ssh 접속하고 shell 사용.
ssh 접속하면 아래 처럼 command> 프롬프트가 보인다.

ssh root@172.16.10.47

VMware vCenter Server Appliance 6.0.0

Type: vCenter Server with an embedded Platform Services Controller

root@172.16.10.47's password:
X11 forwarding request failed on channel 0
Last login: Mon Jul 18 07:10:40 UTC 2022 from 172.30.192.121 on ssh
Last login: Tue Jul 19 02:08:26 2022 from 172.30.192.121
Connected to service

    * List APIs: "help api list"
    * List Plugins: "help pi list"
    * Enable BASH access: "shell.set --enabled True"
    * Launch BASH: "shell"

Command>

bash 쉘을 사용하기위해 shell 명령을 입력하면 사용할 수 없다.

Command> shell
Shell is disabled.

이 상태에서 bash쉘을 사용하려면 shell.set –enabled True 명령을 입력하고 다시 shell 명령을 내린다.

ommand> shell.set --enabled True
Command> shell
    ---------- !!!! WARNING WARNING WARNING !!!! ----------

Your use of "pi shell" has been logged!

The "pi shell" is intended for advanced troubleshooting operations and while
supported in this release, is a deprecated interface, and may be removed in a
future version of the product.  For alternative commands, exit the "pi shell"
and run the "help" command.

The "pi shell" command launches a root bash shell.  Commands within the shell
are not audited, and improper use of this command can severely harm the
system.

Help us improve the product!  If your scenario requires "pi shell," please
submit a Service Request, or post your scenario to the
https://communities.vmware.com/community/vmtn/vcenter/vc forum and add
"appliance" tag.

3. dir-cli 명령으로 사용자 비밀번호 변경하기.
dir-cli 명령으로 sso 사용자를 추가, 삭제, 변경 할 수 있다. dir-cli 명령을 사용하기위해 명령어가 있는 디렉토리로 이동한다.

localhost:/root # cd /usr/lib/vmware-vmafd/bin

사용자 계정이 존재 하는지 확인한다.

localhost:/usr/lib/vmware-vmafd/bin # ./dir-cli user find-by-name --account snowfox
Enter password for administrator@vcenter.local:
Account: snowfox
UPN: snowfox@vcenter.local

계정이 존재하므로, 비밀변호를 변경하여 준다.

localhost:/usr/lib/vmware-vmafd/bin # ./dir-cli password reset --account snowfox --new 'new password'
Enter password for administrator@vcenter.local:
Password was reset successfully for [snowfox]

변경 후 해당 계정으로 vsphere client 정상 접속 확인.

마지막으로 계정이 잠기지 않도록, 비밀번호가 파기되지 않도록 변경한다.

localhost:/usr/lib/vmware-vmafd/bin # ./dir-cli user modify --account snowfox --password-never-expires
Enter password for administrator@vcenter.local:
Password set to never expire for [snowfox].

4. dir-cli 명령을 sso 계정 등록 – 오류남. 해결방안을 모르겠다.
아래와 같이 sso 계정을 만들려고 했으나 오류가 발생했다. 혹시 해결 방안을 아시는 분 댓글 부탁드립니다.

localhost:/usr/lib/vmware-vmafd/bin # ./dir-cli user create --account snowwolf --first-name snow --last-name wolf --user-password
Enter password for administrator@vcenter.local:
Enter password for snowwolf@vcenter.local:
dir-cli failed. Error 9232: Possible errors:
LDAP error: Constraint violation
Win Error: Operation failed with error ERROR_WRITE_PROTECT (19)

참고문서:
https://docs.vmware.com/en/VMware-vSphere/6.7/com.vmware.psc.doc/GUID-4FBEA58E-9492-409B-B584-C18477F041D8.html
https://williamlam.com/2015/05/vcenter-server-6-0-tidbits-part-9-creating-managing-sso-users-using-dir-cli.html

답글 남기기

Your email address will not be published.