Многие из вас знают, что у VMware есть виртуальный модуль vCenter Server Appliance (vCSA), который можно использовать в качестве виртуального управляющего сервера для инфраструктуры vSphere. Для многих это просто "черный ящик", к которому можно подключиться с помощью vSphere Client или Web Client и рулить хостами и виртуальными машинами.
Давайте немного заглянем внутрь. Если мы откроем консоль vCSA, то увидим нечто подобное консоли VMware ESXi:
Не забывайте, что это не только сервер vCenter, но еще и Linux, в который можно залезть. Сделать это можно в локальной консоли, нажав комбинацию клавиш Alt+F1, но лучше нажать <F2> и включить доступ к vCSA по SSH. Также это можно сделать и в vSphere Web Client в следующем разделе:
System Configuration / Nodes / Manage / Settings / Access
Далее можно будет подключиться к хосту vCSA по SSH под аккаунтом root и смотреть, что там внутри:
Это оболочка виртуального модуля vCSA. Чтобы посмотреть API-функции, которые можно использовать для настройки модуля, введите команду:
help api list
Интерфейс vCSA содержит несколько стандартных плагинов (посмотреть их можно командой help pi list), реализующих стандартные средства, такие как ps, top или vimtop (это своего рода esxtop, но только для vCSA). Запустим, кстати, vimtop:
Здесь наглядно видно, какой сервис vCenter или самой ОС отъедает ресурсы. Более подробно об этом средстве написано вот тут.
Чтобы включить доступ к bash-консоли линукса нужно написать:
shell.set --enabled true
Далее просто запустите ее командой shell.
Кстати, тут есть хинт - по умолчанию для bash-консоли установлен таймаут 1 час, поэтому оттуда вас будет постоянно выбрасывать. Увеличить его можно следующей командой (отключить нельзя, поэтому указываем максимальное время в секундах на 68 лет - только учтите, что оно сохраняется после перезагрузки):
shell.set --enabled true --timeout 2147483647
Чтобы закинуть на vCSA какие-нибудь скрипты или другие файлы, воспользуемся утилитой WinSCP. Но при попытке соединения мы получим вот такой отлуп:
Все логично - WinSCP ожидает стандартный shell линукса, а не то, что показано на первом скрине. Поэтому надо сделать так: в настройках Win SCP выставить протокол SFTP (вместо SCP), а в Advanced Settings ввести "shell /usr/lib64/ssh/sftp-server" (без кавычек) для использования SFTP-сервера.
Также можно временно заменить дефолтный шел модуля на bash с помощью команды:
chsh -s /bin/bash
И потом можно просто соединяться через WinSCP в обычном режиме. Чтобы вернуть шел модуля, напечатайте:
chsh -s /bin/appliancesh
Также обратимся к настройке устаревания и сложности паролей. Многих эта тема волнует и бесит, когда заставляют создавать пароли, не соответствующие чьим-то мудацким правилам. Ну и, конечно же, по дефолту включено устаревание пароля в 90 дней.
Отключить все это можно через Web Client в разделе Administration / Single Sign-On / Configuration / Policies / Password Policy (не забудьте зайти под SSO админом):
Для отключения устаревания установите значение 0. Также это можно сделать командой:
chage -M -1 root
Для изменения политики сложности пароля вам нужно отредактировать следующий файл:
/etc/pam.d/common-password
Кстати, если вы все же решите оставить устаревание пароля, то с помощью следующей команды можно настроить отсылку предупреждения об устаревании пароля на электронную почту: