No hay manera de estar seguro de que alguien con acceso físico a su servidor no pueda obtener sus datos. Pero puedes tomar ciertas precauciones:
En primer lugar, si el atacante obtiene acceso a su servidor mientras está en su estado de "ejecución", por lo tanto, ya sea a través de la consola, a través del escritorio remoto, SSH, etc., no hay mucho que pueda hacer. Confía en las protecciones de su sistema operativo para salvarlo mientras el servidor está operativo. No hay mucho más que puedas hacer aparte de lo que la gente habla todos los días.
Pero normalmente un atacante puede burlar su sistema operativo apagando el sistema y activándolo en "modo de rescate" montando sus unidades en otra máquina. Usted protege contra que ataque usando cifrado.
Hay varios sistemas de encriptación de disco completo por ahí. TrueCrypt es bien conocido, y LUKS / FreeOFTE es otro confiable. BitLocker y otros sistemas cerrados pueden o no ser seguros; realmente no sabes porque no sabes lo que hay en ellos.
Obviamente, si usa un sistema como este, entonces su servidor arranca en un estado inutilizable. Ese es más bien el punto. Por lo tanto, debe iniciar sesión para poner el servidor en línea. Si puede obtener una consola remota de bajo nivel (por ejemplo, IPMI), puede ingresar la contraseña en el arranque para desbloquear la unidad.
Alternativamente, puede colocar sus datos confidenciales en una unidad de datos o una partición separadas que desbloquee después de iniciar.
O, una tercera opción es ejecutar su hardware simplemente como un hipervisor de máquina virtual, y ejecutar su software sensible en una máquina virtual encriptada.
Todos estos tres sufren la debilidad de que si el atacante toma el control de su servidor pero lo deja funcionando donde está, puede modificar el entorno para que lo capture escribiendo su contraseña. cuando traigas el servidor en línea. No hay otra manera de evitar este defecto que no sea sacar al servidor de la posesión de su atacante.
Pero podría decirse que es mejor que nada.