PD1HBL-7 is based on Jnos 2.0 (c) Maiko Langelaar, running on a Raspberry PI 3+ with Rasbian v4.1.6-v7. The Jnos server version that is running as part of PD1HBL services is modified on many aspects. I am working on making my own releases for personal use based on the previous works of many people, most notable are *Phil Karn (KA9Q), Johan Reinalda (WG7J), Gerard van der Grinten (PA0GRI), *Anders Klemets (SM0RGV), Kevin Hill (G1EMM), James Dugal (N5KNX), Brandon *Allbery (KF8NH), Barry Siegfried (K2MF) and Brian Lantz (KO4KS). All Jnos 2.0 additions, enhancements, extensions, code restructuring, fixes are Copyright (C) 2004-2019 by Maiko Langelaar [VE4KLM]
PD1HBL-7 Jnos server is running various services that are for internal use only. PD1HBL-7 can be connected through the
PD1HBL-8 and PD1HBL-9 nodes (just type JNOS at the prompt)
Well, quite simply, JNOS is the "Swiss Army Knife" of Packet Radioi!!! Because it can do just about anything. It's a TCP/IP router, firewall, BBS, SMTP/FTP/WEB server, and talks AX.25, NetROM, and TCP/IP protocols. And it does APRS and WINLINK. Jnos is an "Operating System" *NOT* an Application. It acts as a Digipeater and/or a cross-band Digipeater. You can uplink and downlink with it using plain old AX.25 It contains a BBS "Bulletin Board System" It can have any number of radio ports It can act as a File Server (using the "Upload" and "Download" BBS commands, of FTP) It supports the complete TCP/IP protocol suite (Telnet, Finger, FTP, Ping, ARP, SMTP email, POP3 for Email, HTTP web, and anything than will run atop IP) It supports an Ethernet port(s) and can be connected to your LAN or to the Internet It supports NetROM/Knet protocol and can link with NetROM nodes/networks It supports AXUDP links to other systems (such as BPQ nodes) It supports a WINLINK interface to exchange Email with that network. It can be an APRS Digi as well as an Igate. It supports RLI/FBB "Heirarchical" email forwarding. It supports a Network-Wide CONVerse Bridge that supports over 32,000 individual CHAT channels (911 for Emergencies, 411 for Weather events, individual County channels (81), individual District channels (222), and even links to bridges throughout the World) It supports TCP/IP over the top of the AX.25 Link Layer protocol. It supports TCP/IP over the top of the NetROM networks. It supports TCP/IP routing using conventional "ifconfig" and "route" commands It supports IPIP ENCAP (Protocol-4) for easy linking across non-Amateur networks such as the Internet or microwave/mesh networks. It contains IP ACCESS and TCP ACCESS firewall. It has built-in detailed HELP files SMTP Email can have multiple recipients SMTP Email can have MIME Attachements It has very robust daily Logging of all logins, actions, logout, and SMTP/FTP transactions. It has Remote management access and rebooting capability. It supports SNMP network management and monitoring tools. And it can be configured to do ALL OF THE ABOVE at the same time! Have I missed anything?
Jnos2 on Raspberry Pi
If you desire to run JNOS on a Raspberry Pi, Jim Smith N8AVX has produced this excellent HOWTO that walks you through the entire process, step-by-step, to having a running JNOS application running on a Pi.
You start with a Pi with the Linux OS already loaded, follow these steps, and you will have a (minimal - autoexec.nos and a couple support files will need additional configuration) JNOS that can talk through either a USB or Serial port to your KISS TNC. Enjoy!!!
Install Jnos2 on Raspberry Pi
The purpose of this mini howto is to get a working Jnos configuration on a Raspberry Pi. This is the most simple methode to install and configure Jnos on your Raspberry Pi
Full instructions can be found on the VE4KLM website at:
https://www.langelaar.net
Make directory and download Jnos:
>> sudo mkdir ./Jnos
>> sudo rsync -a www.langelaar.net::official ./Jnos
Install ncurses development package:
>> sudo apt-get install libncurses5-dev libncursesw5-dev
Configure script Jnos:
>> cd Jnos
>> sudo ./configure
Build the Jnos executable:
>> sudo make
Make jnos executable:
>> sudo chmod a+x jnos
Run Jnos:
>> sudo ./jnos
Jnos2 - Latest official version
>> sudo rsync -a www.langelaar.net::official < official src area >
>> cd < official src area >
>> sudo make clean
>> sudo ./configure
>> sudo make
Jnos2 - Latest development version
>> sudo rsync -a www.langelaar.net::development < dev. src area >
>> cd < official src area >
>> sudo make clean
>> sudo ./configure
>> sudo make
Solution bring Jnos colors back
add : -fsigned-char to the CFLAGS in the makefile.
CFLAGS = -DUNIX $(DEBUG) $(PATCHES) $(WARNINGS) -fsigned-char
Web BBS Access
Configuring Jnos2
The following files will need to be edited and configured for your JNOS station to operate properly. Each of these Example files contain a working configuration and contain instructions how to edit each section to customize the config for your particular station.
1) AUTOEXEC.NOS /jnos
This is the main configuration file. This is where we set the CALLSIGN, Hostname, IP Address, any SSID assignments, Aliases, and enable the services.
AUTOEXEC.NOS Example
2) FTPUSERS /jnos
This is a Password file. Here we create special priviledged accounts such as the root administration (those that can access special mainenance functions), and the UNIVPERM account which determines what services anyone without a specific account can do on the system. This file also determines who is a BBS and who is a human user. Change " /jnos 0x4407f" to reflect your callsign and your password. This account can use the "@" command to log into the JNOS Shell at the /jnos directory. From there this user can issue JNOS commands to change routes, clear mail queues, etc.
FTPUSERS Example
3) DOMAIN.TXT /jnos
This is the DNS CACHE file. All DNS lookups get stored here. However, certain entries need to be made here so that a new JNOS node does not have "amnesia". A node *MUST KNOW* its own Hostname and IP Address in this file so that it can identify itself (oftentimes a problem when attempting to send SMTP email to a user on the box). Change the "YOUR-HOSTNAME-HERE.ampr.org." to reflect your Hostname or callsign. Change the "44.102.x.y" to match your IP address.
YOUR-HOSTNAME-HERE.ampr.org. 0 IN A 44.102.x.y
DOMAIN.TXT Example
4) MAIL.CFG
(helps with amnesia)
MAIL.CFG Example
5) LOCAL.RTE /jnos
This is the static route table. Here we define the DEFAULT route and any SUBNET routes and which Interfaces traffic to them will be routed. Change all SUBNET and INTERFACES to match your system.
LOCAL.RTE Example
6) INFO.HLP /jnos/spool/help/
This file contains the text that will be delivered to a user who types "I"nfo on the command line. This file SHOULD be brief but explain what and where this JNOS box is located. Adjust the text as you feel meets your needs.
INFO.HLP Example
7) AREAS /jnos/spool/
This file contains the mail area groups and are configurated in the rewrite file
AREAS Example
8) REWRITE /jnos/spool/
The rewrite file is used to perform a one-to-one mapping between destination addresses as received by NOS and destination addresses as actually used by NOS. Each record within the rewrite file comprises a single line, containing either two or three entries separated by spaces. The first field is the template field; if a destination address matches the template, it is replaced by the second field. The third field, which is optional, is the single letter "r", which, if present, tells NOS to rescan the rewrite file, using the new destination address to attempt to match against the templates.
REWRITE Example
Download/Install Jnos
Jnos is still being developed, and is a complex TCP/IP packet program with lots of possibilities. Below are some items that deal with some of the possibilities.