For customers who have a requirement to configure an SSH login banner and/or message of the day (MOTD) for ESXi or vCenter Server, this usually meant manually editing the /etc/issues (login banner) and /etc/motd (MOTD) configuration files. In vSphere 6.0, this has now been simplified by providing vSphere APIs to allow administrators to easily view and configure SSH login banner and MOTD for both ESXi and VCSA (this does not apply to vCenter Server for Windows).
For ESXi, there are two new ESXi Advanced properties called Config.Etc.issue and Config.Etc.motd and this can also be viewed and edited using the vSphere Web/C# Client as seen in the screenshot below:
For vCenter Server, there are also two new Advanced Options called etc.issue and etc.motd which can also be viewed and edited using the vSphere Web/C# Client as seen in the screenshot below:
What's Displayed
The /etc/issues displays a banner during an SSH login session, this means that you will see the message during the login as highlighted in the screenshot below:
The /etc/motd displays a banner after a successful SSH login as highlighted in the screenshot below:
How to Automate
You can use both the vSphere API/CLI to modify the issues and motd configurations. In the examples below, I will be using PowerCLI to demonstrate retrieving and setting the two properties.
Retrieve /etc/issues for VCSA
Get-AdvancedSetting -Entity $vc -Name "etc.issue" | Format-List
Set /etc/issues for VCSA
$msg = "
beware
you
are
entering
the
house
of
Cormac
the
grey
"
Get-AdvancedSetting -Entity $vc -Name "etc.issue" | Set-AdvancedSetting -Value $msg
Retrieve /etc/motd for VCSA
Get-AdvancedSetting -Entity $vc -Name "etc.motd" | Format-List
Set /etc/motd for VCSA
Get-AdvancedSetting -Entity $vc -Name "etc.motd" | Set-AdvancedSetting -Value $msg
Retrieve /etc/issues for ESXi
Get-VmHostAdvancedConfiguration -Name "Config.Etc.issue"
Set /etc/issues for ESXi
$msg = "
beware
you
are
entering
the
house
of
Cormac
the
grey
"
Set-VMHostAdvancedConfiguration -Name "Config.Etc.issue" -Value $msg
Retrieve /etc/motd for ESXi
Get-VmHostAdvancedConfiguration -Name "Config.Etc.issue"
Set /etc/motd for ESXi
Set-VMHostAdvancedConfiguration -Name "Config.Etc.motd" -Value $msg
Totie Bash says
I'm getting "The value of the specified advanced setting 'vpxd.motd' is read only." after running
Get-AdvancedSetting -Entity 10.10.25.101 -Name "vpxd.motd" | Set-AdvancedSetting -Value $msg
ShaneVB says
I wanted to close the loop on this comment as I hit the same issue and it lead me here. Hoping it will save time for others. I was able to set vpxd motd through session manager
$si = Get-View ServiceInstance -Server $session
$sm = Get-View $si.Content.SessionManager -Server $session
$sm.UpdateServiceMessage($msg)
yuri says
hi guys!
has anyone faced the issue with adv setting etc.motd when creating host profile - html5 client does not allow to enter newlines and as a result motd banner ends with system prompt in the same line?
is there any way to put newlines into that text field?