<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Networking and Remote Access on OpenBSD Handbook</title><link>https://www.openbsdhandbook.com/howto/networking/</link><description>Recent content in Networking and Remote Access on OpenBSD Handbook</description><generator>Hugo</generator><language>en</language><atom:link href="https://www.openbsdhandbook.com/howto/networking/index.xml" rel="self" type="application/rss+xml"/><item><title>Create an Administrator Account with doas and SSH Keys</title><link>https://www.openbsdhandbook.com/admin-account/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.openbsdhandbook.com/admin-account/</guid><description>&lt;h2 id="synopsis"&gt;
 Synopsis
 &lt;a class="anchor" href="#synopsis"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Routine administration should use a regular account and &lt;a href="https://man.openbsdhandbook.com/man.cgi?page=doas&amp;amp;section=1" target="_blank" rel="noopener noreferrer"&gt;doas(1)&lt;/a&gt;

, not a persistent root login. This guide creates an administrator, installs an SSH public key, validates privilege escalation, and preserves a recovery path until the replacement access method has been tested.&lt;/p&gt;
&lt;p&gt;Complete this procedure from the local console or a provider console. Keep the existing root session open throughout the final access tests.&lt;/p&gt;
&lt;h2 id="create-the-account"&gt;
 Create the Account
 &lt;a class="anchor" href="#create-the-account"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;The installer can create a regular account and place it in the &lt;code&gt;wheel&lt;/code&gt; group. If no suitable account exists, run &lt;a href="https://man.openbsdhandbook.com/man.cgi?page=adduser&amp;amp;section=8" target="_blank" rel="noopener noreferrer"&gt;adduser(8)&lt;/a&gt;

 as root:&lt;/p&gt;</description></item><item><title>Configure Secure Remote Access with OpenSSH</title><link>https://www.openbsdhandbook.com/secure-openssh/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.openbsdhandbook.com/secure-openssh/</guid><description>&lt;h2 id="synopsis"&gt;
 Synopsis
 &lt;a class="anchor" href="#synopsis"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;OpenBSD includes OpenSSH in the base system. Its defaults are maintained with the operating system and should not be replaced by copied cipher lists or generic hardening templates. A conservative remote-access setup uses a tested administrator account, public-key authentication, deliberate forwarding policy, Packet Filter exposure, configuration validation, and an independent recovery console.&lt;/p&gt;
&lt;p&gt;This guide changes authentication only after a key-based administrator session succeeds. Keep the original session and console access available until a second connection works under the final policy.&lt;/p&gt;</description></item><item><title>Use FIDO Security Keys with OpenSSH</title><link>https://www.openbsdhandbook.com/openssh-fido-keys/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.openbsdhandbook.com/openssh-fido-keys/</guid><description>&lt;h2 id="synopsis"&gt;
 Synopsis
 &lt;a class="anchor" href="#synopsis"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;&lt;a href="https://man.openbsdhandbook.com/man.cgi?page=ssh-keygen&amp;amp;section=1" target="_blank" rel="noopener noreferrer"&gt;ssh-keygen(1)&lt;/a&gt;

 can create FIDO authenticator-backed SSH keys. The authenticator retains private key material and normally requires a physical touch for each signature. OpenSSH supports &lt;code&gt;ecdsa-sk&lt;/code&gt; and &lt;code&gt;ed25519-sk&lt;/code&gt; key types.&lt;/p&gt;
&lt;p&gt;A non-resident credential stores a key handle in the local private-key file. Both that file and the authenticator are required. A resident credential stores the key handle on a FIDO2 authenticator and can be recovered to another client, but a stolen authenticator may expose more usable credential material.&lt;/p&gt;</description></item><item><title>Configure Wi-Fi Roaming and Wired Failover</title><link>https://www.openbsdhandbook.com/wifi-roaming-failover/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.openbsdhandbook.com/wifi-roaming-failover/</guid><description>&lt;h2 id="synopsis"&gt;
 Synopsis
 &lt;a class="anchor" href="#synopsis"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;OpenBSD can maintain an auto-join list of wireless networks and select an available access point automatically. A &lt;a href="https://man.openbsdhandbook.com/man.cgi?page=trunk&amp;amp;section=4" target="_blank" rel="noopener noreferrer"&gt;trunk(4)&lt;/a&gt;

 interface can combine Ethernet and Wi-Fi in &lt;code&gt;failover&lt;/code&gt; mode so that Ethernet is preferred whenever it has link.&lt;/p&gt;
&lt;p&gt;The wired and wireless connections in this procedure must reach the same Layer 2 network. Do not use a failover trunk when the two interfaces connect to different IP networks, different security zones, or unrelated Internet services.&lt;/p&gt;</description></item><item><title>Troubleshoot PF, NAT, and Routing</title><link>https://www.openbsdhandbook.com/troubleshoot-pf-networking/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.openbsdhandbook.com/troubleshoot-pf-networking/</guid><description>&lt;h2 id="synopsis"&gt;
 Synopsis
 &lt;a class="anchor" href="#synopsis"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Routing and Packet Filter failures often involve several layers at once. A port forward can fail because the interface has no address, the route is wrong, forwarding is disabled, PF loaded a different rule, an old state remains, the service is not listening, or the test never crossed the external interface.&lt;/p&gt;
&lt;p&gt;This guide follows the packet path in order. It begins with read-only inspection and changes one variable at a time. It does not disable PF, flush every state, or replace the ruleset on an exposed remote host.&lt;/p&gt;</description></item><item><title>Route Multiple VLANs with PF</title><link>https://www.openbsdhandbook.com/vlan-router/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.openbsdhandbook.com/vlan-router/</guid><description>&lt;h2 id="synopsis"&gt;
 Synopsis
 &lt;a class="anchor" href="#synopsis"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;A virtual LAN (VLAN) separates one Ethernet link into tagged Layer 2 networks. OpenBSD represents each tagged network with a &lt;a href="https://man.openbsdhandbook.com/man.cgi?page=vlan&amp;amp;section=4" target="_blank" rel="noopener noreferrer"&gt;vlan(4)&lt;/a&gt;

 interface. This guide configures two VLANs on one trunk link, enables IPv4 routing, applies an explicit &lt;a href="https://man.openbsdhandbook.com/man.cgi?page=pf.conf&amp;amp;section=5" target="_blank" rel="noopener noreferrer"&gt;pf.conf(5)&lt;/a&gt;

 policy, and verifies traffic at each layer.&lt;/p&gt;
&lt;p&gt;The connected switch must already carry the selected VLAN identifiers as tagged traffic. Management access must not depend on the rules being changed. Keep a console or an established recovery session available until a new administrative session succeeds.&lt;/p&gt;</description></item><item><title>Configure a Road-Warrior WireGuard VPN</title><link>https://www.openbsdhandbook.com/wireguard-road-warrior/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.openbsdhandbook.com/wireguard-road-warrior/</guid><description>&lt;h2 id="synopsis"&gt;
 Synopsis
 &lt;a class="anchor" href="#synopsis"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;OpenBSD includes the &lt;a href="https://man.openbsdhandbook.com/man.cgi?page=wg&amp;amp;section=4" target="_blank" rel="noopener noreferrer"&gt;wg(4)&lt;/a&gt;

 WireGuard interface in the base system. This guide configures one OpenBSD gateway and one roaming OpenBSD client with a split tunnel. The client reaches a private LAN through the VPN while ordinary Internet traffic continues to use the client&amp;rsquo;s existing connection.&lt;/p&gt;
&lt;p&gt;WireGuard authenticates peers with public keys. It does not assign addresses, distribute routes, provide user authentication, or create firewall policy. Configure those functions separately.&lt;/p&gt;</description></item><item><title>Route IPv6 Networks without NAT</title><link>https://www.openbsdhandbook.com/ipv6-router/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.openbsdhandbook.com/ipv6-router/</guid><description>&lt;h2 id="synopsis"&gt;
 Synopsis
 &lt;a class="anchor" href="#synopsis"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Native IPv6 routing assigns a globally routed prefix to each internal network. It does not require network address translation. This guide configures one OpenBSD router with a static upstream, one internal &lt;code&gt;/64&lt;/code&gt;, &lt;a href="https://man.openbsdhandbook.com/rad.8/" target="_blank" rel="noopener noreferrer"&gt;rad(8)&lt;/a&gt;

 router advertisements, and an explicit Packet Filter policy.&lt;/p&gt;
&lt;p&gt;The upstream provider must route a prefix to the OpenBSD system. A single on-link address or one SLAAC address does not imply that an additional LAN prefix is available. Confirm the routed-prefix size, next hop, and reverse-routing behavior before making changes.&lt;/p&gt;</description></item><item><title>Test OpenBGPD with Two Providers</title><link>https://www.openbsdhandbook.com/openbgpd-dual-provider/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.openbsdhandbook.com/openbgpd-dual-provider/</guid><description>&lt;h2 id="synopsis"&gt;
 Synopsis
 &lt;a class="anchor" href="#synopsis"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;A BGP session can be established while traffic still fails because of forwarding, firewall policy, or a missing return route. This OpenBSD 8.0 lab connects a client to an HTTP server through two simulated providers. It separates route selection, actual packet delivery, export filtering, and recovery into observable steps.&lt;/p&gt;
&lt;p&gt;Use five disposable OpenBSD machines with console access. Connect them only to the four isolated Ethernet segments below. Do not attach these segments to a physical network, host gateway, NAT service, or Internet uplink. All addresses and autonomous system numbers are examples for this closed lab.&lt;/p&gt;</description></item><item><title>Unlock an Internal Service with an SSH Key</title><link>https://www.openbsdhandbook.com/authpf/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.openbsdhandbook.com/authpf/</guid><description>&lt;h2 id="synopsis"&gt;
 Synopsis
 &lt;a class="anchor" href="#synopsis"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Use &lt;a href="https://man.openbsdhandbook.com/authpf.8/" target="_blank" rel="noopener noreferrer"&gt;authpf(8)&lt;/a&gt;

 when a service should become reachable only after its user signs in to the gateway. SSH verifies the user&amp;rsquo;s key, and authpf loads a PF rule for the connecting IP address. The user keeps that SSH session open while using the service. Logout removes the rule and the associated connection states.&lt;/p&gt;
&lt;p&gt;This example grants access to one internal web service using the base OpenBSD tools.&lt;/p&gt;</description></item><item><title>Build a Simple Router and Firewall</title><link>https://www.openbsdhandbook.com/router-firewall/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://www.openbsdhandbook.com/router-firewall/</guid><description>&lt;h2 id="synopsis"&gt;
 Synopsis
 &lt;a class="anchor" href="#synopsis"&gt;#&lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;An OpenBSD router and firewall can use two network interfaces: one &lt;strong&gt;WAN&lt;/strong&gt; interface that connects to the Internet service provider and one &lt;strong&gt;LAN&lt;/strong&gt; interface that connects to the local network. The configuration enables IPv4 forwarding, network address translation (NAT), stateful firewalling, IPv4 address assignment with DHCP, and local DNS caching.&lt;/p&gt;
&lt;p&gt;A &lt;strong&gt;router&lt;/strong&gt; forwards IP packets between networks. A &lt;strong&gt;firewall&lt;/strong&gt; enforces a policy controlling which packets are permitted. &lt;strong&gt;NAT&lt;/strong&gt; translates addresses on egress to a public address, allowing multiple local hosts to share one public address. OpenBSD uses &lt;strong&gt;Packet Filter&lt;/strong&gt; &lt;strong&gt;pf(4)&lt;/strong&gt; for filtering, NAT, and traffic normalization. See &lt;a href="https://man.openbsdhandbook.com/man.cgi?page=pf&amp;amp;section=4" target="_blank" rel="noopener noreferrer"&gt;pf(4)&lt;/a&gt;

.&lt;/p&gt;</description></item></channel></rss>