NSH is a CLI intended for OpenBSD-based network appliances. It replaces ifconfig, sysctl and route with its own simple command language, and consolidates configuration for other daemons into one place, effectively replacing /etc/netstart and parts of /etc/rc for appliance-style usage.

NSH presents the user with a vaguely cisco-like interface with all configuration in one easy to read text list. It also gives the user access to system information and diagnostics. NSH replaces the userland commands which handle these functions, and talks directly to the OpenBSD kernel or control utility for daemon functionality.

Supported external utilities: tftpd, npppd, inetd, smtpd, ldapd, ifstated bgpd, dhcpd, dhcpleased, dhcrelay, dvmrpd, eigrpd, ftp-proxy, ifstated, inetd, iked, ipsecctl, ldapd, ldpd, npppd, ntpd, ospfd, ospf6d, pf, rad, relayd, resolvd, ripd, sasyncd, slaacd, smtpd, snmpd, sshd, tftpd, tftp-proxy.


NSH is completely free, it only incorporates code with BSD-style licenses.


Follow OpenBSD ports (shells/nsh) or the github repository for updates. NSH 1.2 is the latest release.

New in 1.2:

New in 1.1:


Check out examples for example NSH configurations.