How to use pre-booth SSH feature on macOS Tahoe for unlocking Mac with FileVault remotely
12:34 31 Jan 2026

I have a Mac mini I want to use as a headless server. The Mac has FileVault enabled and I'd like to keep it on. I'd like to make use of the pre-boot SSH feature in macOS Tahoe so I can unlock the drive remotely without connecting a physical monitor and keyboard to the Mac.

The machine is wired into the network over Ethernet, and Wi-Fi is disabled.

When I try to ssh into the machine, I get an error:

>> ssh user@192.168.0.8

kex_exchange_identification: read: Connection reset by peer

Connection reset by 192.168.0.8 port 22

But the machine does respond to pings:

>> ping 192.168.0.8

PING 192.168.0.8 (192.168.0.8): 56 data bytes

64 bytes from 192.168.0.8: icmp_seq=0 ttl=64 time=0.708 ms

64 bytes from 192.168.0.8: icmp_seq=1 ttl=64 time=0.715 ms

64 bytes from 192.168.0.8: icmp_seq=2 ttl=64 time=0.900 ms

^C

--- 192.168.0.8 ping statistics ---

3 packets transmitted, 3 packets received, 0.0% packet loss

round-trip min/avg/max/stddev = 0.708/0.774/0.900/0.089 ms

I tried adding verbose output and ignoring key mismatch in case the pre-boot SSH environment uses a different fingerprint, still no dice:

>> ssh -v -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null user@192.168.0.8

debug1: OpenSSH_10.0p2, LibreSSL 3.3.6

debug1: Reading configuration data /etc/ssh/ssh_config

debug1: Reading configuration data /etc/ssh/ssh_config.d/100-macos.conf

debug1: /etc/ssh/ssh_config.d/100-macos.conf line 1: Applying options for *

debug1: Reading configuration data /etc/ssh/crypto.conf

debug1: Authenticator provider $SSH_SK_PROVIDER did not resolve; disabling

debug1: Connecting to 192.168.0.8 [192.168.0.8] port 22.

debug1: Connection established.

debug1: identity file /Users/user/.ssh/id_rsa type -1

debug1: identity file /Users/user/.ssh/id_rsa-cert type -1

debug1: identity file /Users/user/.ssh/id_ecdsa type -1

debug1: identity file /Users/user/.ssh/id_ecdsa-cert type -1

debug1: identity file /Users/user/.ssh/id_ecdsa_sk type -1

debug1: identity file /Users/user/.ssh/id_ecdsa_sk-cert type -1

debug1: identity file /Users/user/.ssh/id_ed25519 type -1

debug1: identity file /Users/user/.ssh/id_ed25519-cert type -1

debug1: identity file /Users/user/.ssh/id_ed25519_sk type -1

debug1: identity file /Users/user/.ssh/id_ed25519_sk-cert type -1

debug1: identity file /Users/user/.ssh/id_xmss type -1

debug1: identity file /Users/user/.ssh/id_xmss-cert type -1

debug1: Local version string SSH-2.0-OpenSSH_10.0

kex_exchange_identification: read: Connection reset by peer

Connection reset by 192.168.0.8 port 22

Is there a different way to set this up, or does the pre-boot SSH feature just not work reliably?

macos macos-tahoe filevault