Two devices on a private LAN can exchange protected traffic with no uplink at all. What they cannot do is conjure the services their chosen security model expects. The work is therefore half selection and half inventory: choose the protection that matches the task, then list everything that would quietly reach for the internet.

The bench assumption for this walkthrough is that both devices hold approved addresses on the same private network. Do not infer reachability from the fact that both joined the same Wi-Fi; the attachment, routing and access rules still decide that.

Choose protection by the task, not by habit

A terminal session or a supported file-administration task fits SSH, whose architecture separates server authentication, user authentication and the channels carried inside the protected transport. None of those roles requires a commercial VPN provider, and none of them stops working because there is no default route to the internet.

One extra TCP service can travel through an authorized SSH forward when the server permits it: keep the local listener bound narrowly and the destination explicit, and remember that this forwards the one service rather than reproducing an Ethernet segment.

Routed access to several addresses or protocols is a different requirement, and a locally terminated VPN can supply it. The peer in that case is a reachable local gateway, not an endpoint somewhere on the internet, and the gateway still needs the intended routes, forwarding rules and service permissions. Where a single application already speaks TLS properly, letting it protect its own connection is often the smallest answer that works.

Inventory what would leave the LAN

Get the software, host identities and credentials in place before you depend on an isolated bench, or use whatever offline delivery process the organisation supports. A download command is not an installation plan for a machine that cannot reach the source, and finding that out during an outage is a poor time to learn it.

Make naming deliberate. Use the intended local DNS service or a documented address arrangement, because a configured public resolver does not create a path to itself. Changing a socket address is not a justification for skipping the application's identity checks either. If the answer is that the bench simply uses addresses, write that down too, so the next engineer does not spend an hour on a search domain that was never configured.

Then read the authentication and verification model for external dependencies: enrolment, an identity provider, a multifactor approval, certificate-status retrieval, a time source. Each one is a potential blocker on an isolated network. List them before the maintenance window, not during it, because a dependency you discover at the wrong moment turns a five-minute task into an afternoon. Provide an approved reachable arrangement or choose a model that works offline, and never silently disable a check because its service is missing.

Keep identity checks where they belong

Verify the expected host key or certificate through the provisioning process you trust, and keep the clock correct where the protocol validates certificate times. Sharing a switch with a device does not make that device the one you meant to reach, and assuming otherwise is exactly the mistake an attacker on the same segment would like you to make.

Time deserves its own line in the plan. Many protocols reject otherwise valid credentials when the clock has drifted far enough, and a Pi without a network time source can drift quietly for months before anything complains.

Test with the uplink actually absent

Unplug the uplink, then perform the exact maintenance operation you designed for: the terminal session, the file copy, the forwarded service, the routed connection. Confirm that a denied identity or a forbidden resource is still denied, because a design that only proves the happy path has not been tested at all. Read the logs while you do it, since the interesting failures are the ones that leave a trace without changing the outcome.

Record the local endpoint, the protection mechanism and every dependency the operation used. Egress to the internet and a secure path for local administration are two different requirements, and keeping them apart is what lets the second survive losing the first.

ተዛመድቲ ጽሑፋት