Essa é uma pergunta muito ampla, na qual você não terá um único tamanho para cada solução e, com bastante frequência, poderá empilhar várias abordagens.
Você pode proteger e autenticar principalmente na camada de rede, executando seus serviços apenas em um segmento de rede específico. A exigência de uma conexão VPN ou IPSec também se enquadra nessa abordagem.
Os firewalls são sempre uma boa ideia, negue tudo por padrão, abra somente o que é explicitamente permitido. Os servidores geralmente têm endereços IP estáticos, permitindo ACLs muito mais restritivas em comparação com os serviços públicos.
Você pode querer proteger e autenticar na camada de protocolo, https e nome de usuário / senha simples (ou outra autenticação) ou HTTPS e autenticação mútua com certificados de cliente.
Você pode querer proteger e autenticar as mensagens que são transmitidas e considerar algo como o HMAC.
E provavelmente muito mais, dependendo também de quanto do ambiente você controla.