In order configure and orchestrate servers, Otter needs to be able to communicate with those servers in an fast and secure manner.
Communication with Windows servers is generally accomplished using a lightweight agent that's installed on the remote server. This agent uses a highly-optimized and resilient protocol built solely for this purpose, and is quite easy to install.
Alternatively, Otter can use PowerShell Remoting to communicate with Windows servers; however, this is generally slower and less resilient than the Inedo Agent protocol. You can connect using integrated authentication (i.e. whatever account the service is running under), or with a username & password resource credential. See Enable-PSRemoting to configures a server to receive remote commands.
To communicate with Linux servers, Otter uses the lightweight, highly-optimized, and resilient protocol already enabled on nearly every Linux box: SSH and SFTP. You can connect with a private key or username & password resource credential.
If you're using Otter to interact with the server it's installed on, you can just set it up using a local agent. This uses the same process/identity that the service is hosted as, and doesn't have very many privileges by default.