Non c'è modo di certo che qualcuno con accesso fisico al tuo server non possa accedere ai tuoi dati. Ma puoi prendere certe precauzioni:
Prima di tutto, se l'attaccante accede al tuo server mentre è in stato "in esecuzione", quindi tramite la console, tramite desktop remoto, SSH, ecc., non c'è molto che tu possa fare. Stai facendo affidamento sulle protezioni del tuo sistema operativo per salvarti mentre il server è operativo. Non molto di più puoi farlo lì oltre a quello di cui la gente parla ogni giorno.
Normalmente un utente malintenzionato può aggirare il sistema operativo spegnendo il sistema e portandolo in "modalità ripristino" montando le unità in un'altra macchina. Proteggi contro quel attacco usando la crittografia.
Esistono diversi sistemi di crittografia dell'intero disco. TrueCrypt è ben noto e LUKS / FreeOFTE è un altro affidabile. BitLocker e altri sistemi chiusi potrebbero essere o meno protetti; non lo sai davvero perché non sai cosa c'è in loro.
Ovviamente se si utilizza un sistema come questo, il server si avvia in uno stato inutilizzabile. Questo è piuttosto il punto. Quindi devi essere loggato per portare il server online. Se riesci a ottenere una console remota di basso livello (ad es. IPMI), puoi inserire la password all'avvio per sbloccare l'unità.
In alternativa, puoi mettere i tuoi dati sensibili su un'unità dati o una partizione separata che sblocchi dopo l'avvio.
Oppure, una terza opzione è quella di eseguire il tuo hardware semplicemente come un hypervisor VM ed eseguire il tuo software sensibile su una macchina virtuale crittografata.
Tutti e tre di questi soffrono della debolezza che se l'attaccante prende il controllo del tuo server ma lo lascia in esecuzione dov'è, può modificare l'ambiente in catturare digitando la tua password quando porti il server online. Non c'è modo di aggirare questo difetto se non quello di togliere il server al possessore dell'attaccante.
Ma è probabilmente meglio di niente.