commit 610ddc0aaf6429823e49908c26a330b8a34fb89c from: smytht via: GitHub date: Sun Sep 03 16:33:18 2023 UTC Update and rename README to README.md convert README to markdown and add quick start install / update insructions and a brief how to to complete nsh installation so that it controls the setup of the OpenBSD system. commit - b05505961b0b0e16484787ffbcbf5e39cac8f9d4 commit + 610ddc0aaf6429823e49908c26a330b8a34fb89c blob - 5e86783637b685a1185858f43235998bd3428999 (mode 644) blob + /dev/null --- README +++ /dev/null @@ -1,30 +0,0 @@ -nsh//network config shell//Chris Cappuccio version 1.1 - -NSH is a CLI intended for OpenBSD-based network appliances. It replaces -ifconfig, sysctl and route with its own simple command language, and -encapsulates configuration for other daemons into one place, effectively -replacing /etc/netstart and parts of /etc/rc for appliance-style usage. - -Daemons and services encapsulated by nsh: - -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 freely licensed, in the BSD style. - -In conjunction with the OpenBSD kernel and the daemons you wish to control, -you have a fully functioning network appliance type of system. - -See https://github.com/yellowman/nsh/wiki/NSH-Manual-page or -nsh.8 manual for detailed installation instructions and command set. - -See the to-do list on https://github.com/users/yellowman/projects/1 for -details on implementation status and future ideas. - -See http://github.com/yellowman/nsh/ for current source code repository. -See http://www.nmedia.net/nsh/ for example configurations and mailing -list. - -See https://www.youtube.com/watch?v=WMKxIHaWaG0 for an EurobsdCon 2022 -Presentation on NSH for network administrators. blob - /dev/null blob + a41833b68acc4269113b47507e937bab1e8b188f (mode 644) --- /dev/null +++ README.md @@ -0,0 +1,103 @@ +# nsh + +## network shell + +--- +Chris Cappuccio version 1.1 + + +NSH is a CLI intended for OpenBSD-based network appliances. It replaces +ifconfig, sysctl and route with its own simple command language, and +encapsulates configuration for other daemons into one place, effectively +replacing /etc/netstart and parts of /etc/rc for appliance-style usage. + +## Daemons and services encapsulated by nsh: + +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. + +--- + +## License + +NSH is freely licensed, in the BSD style. + +In conjunction with the OpenBSD kernel and the daemons you wish to control, +you have a fully functioning network appliance type of system. + +--- + +## NSH Manual + +See https://github.com/yellowman/nsh/wiki/NSH-Manual-page or +nsh.8 manual for detailed installation instructions and command set. + +See the to-do list on https://github.com/users/yellowman/projects/1 for +details on implementation status and future ideas. + +See http://github.com/yellowman/nsh/ for current source code repository. +See http://www.nmedia.net/nsh/ for example configurations and mailing +list. + +See https://www.youtube.com/watch?v=WMKxIHaWaG0 for an EurobsdCon 2022 +Presentation on NSH for network administrators. + +--- + +## Quickstart Guide for installing and building **nsh** on an OpenBSD system + +1. Install OpenBSD on your system + +2. Install the OpenBSD port of nsh on your system -(this will install the latest nsh release version) + +```shell +pkg_add nsh +``` + +3. Install git on your system to allow fetching more recent versions of nsh from github + +```shell +pkg_add git +``` + +4. to download the latest development of nsh use git to download the latest nsh repository + +```shell +git clone https://github.com/yellowman/nsh +``` + +5. change directory to the downloaded nsh directory + +```shell +cd nsh +``` + +6. to build the nsh sources follow the steps below + +6a. make objects + +```shell +make obj +``` + +6b. make / compile the sources + +```shell +make +``` + +6c. Install the compiled nsh binaries and supporting files (you will need root privileges to do this). + +```shell +make install +``` + +7. to let nsh take over the configuration of a system a number of steps that need to be carried out such as +7a. importing the configuration of te + + + + + +