OpenBCM V1.07b11 (WIN32)

Packet Radio Mailbox

DBO595

[LAU JN59RM]

 Login: GAST





  

HB1PMS > JNOS     13.03.20 16:41l 430 Lines 15251 Bytes #999 (0) @ WW
BID : 2536HB1PMS
Read: GAST
Subj: Jnos update 2.0n (beta)
Path: DBO595<DBX320<FRB024<BBS645<NL3TD<NL3PRC<GY1BBS<HB1BBS
Sent: 200312/2354Z 8909@HB1BBS.ZL.NLD.EU BPQ6.0.19

Van: HB1PMS@HB1BBS.ZL.NLD.EU

 differences between 2.0n.beta and 2.0m - February 28, 2020
 ----------------------------------------------------------

 What started off as 2.0m.1 is now 2.0n.beta

 This is a radical change to the JNOS user password authentication, which 
instantly
 warrants a change to the version MAJOR - it most certainly is not a MINOR 
change.

 This is something I have been wanting to do for a long time. It is a bit 
technical
 and might be a handful for some. For that I apologize. Please contact me if 
you have
 any concerns or are struggling with it - BUT (respectfully asking) not 
before you've
 given it your all - I just don't have the time anymore, too many things 
going on.

 Highlights of this update are :

    No more ftpusers file, it's gone

    The BBS user passwords are now hashed (not encrypted), no more cleartext
     (however if MD5AUTHENTICATE is defined, we have no choice but to 
include
       the encrypted passwords as 'extra information' to the new system)
 
    The Winlink CMS password is properly encrypted again

    The AXHEARD list can now be saved to file or loaded from file, there are
    some notes on this towards the end of this section. Note, this required
    some restructuring of the console 'ax heard' commands, it made sense.

    I have enhanced the information shown by the 'mbox sid' console command

 Documentation -> 
"https://www.langelaar.net/jnos2/documents/jnos.2.0n.password.management.txt
"
 
 This update is only available as a patch, and must only be applied to the 
official 2.0m version.

 WARNING : do NOT use this on any earlier versions !!!

 Just change directory to your JNOS source and do something like this :

   wget 
"https://www.langelaar.net/jnos2/downloads/linux/2.0n.beta.update.tar.gz" --
no-check-certificate

 Now run these commands below :

   tar xvzf 2.0n.beta.update.tar.gz

   edit your config.h (or config.h.default if you don't have one yet), and 
make sure this entry exists :

     #define GET_PASSWORD_FROM_J2PWMGR

   make clean
   ./configure
   make

   NOTE : please MAKE SURE you create a new 'users' subdirectory in your 
JNOS root directory
           (a small oversite on my part, I will correct it later)

 The configure script now warns you if you have INP2011 defined - recommend 
you #undef INP2011
  (old code, my attempt @ supporting INP3 protocol long ago, some people are 
reporting JNOS crashing)

 The makefile now enforces the compiler option '-fsigned-char' so if you are 
running a PI or
 any ARM based system, you should be fine as far as that issue is concerned.

 I have tested this with gcc 6.3.1 (devtoolset-6), it compiles, the link 
will fail, BUT
 the solution is simple, edit your makefile to make sure 'LCURSES = -
lncurses -ltinfo'

 I have not tested convers, and done limited testing on ftp user logins.

 DO NOT use this update IF any of the following apply to your setup :

  1) This update breaks SMTP_VALIDATE_LOCAL_USERS - new function needs to be 
written

  2) This update breaks PPP - userlookup needs to be rewritten

 Save and Load ax25 Heard List

 The ax25 heard list can now be saved to a file or loaded (restored) from a 
file.

 Add '#define BACKUP_AXHEARD' to your config.h for this feature.

 Decided to also revamp the 'ax heard' command at the JNOS console, since 
there are
 now several commands available, all of which really should be categorized 
as being
 subcommands of 'ax heard' - so with this update, the new syntax is as 
follows :

     Usage : ax heard < show | dest > [<iface>]
             ax heard < save | load >

 The 'dest' and 'hearddest' commands are gone, absorbed by the above syntax.

 The heard data is kept in a new 'AxHeardFile' in the JNOS root directory.

 There might still be some issues with improper time stamps, please let me 
know.


 differences between 2.0m and 2.0k.3B - November 27, 2019
 --------------------------------------------------------

 NOTE : version bumped up to 2.0m (skipped the L since in lowercase it looks 
too
        much like the number one or the letter 'i'), call me mercurial (?)

 IMPORTANT : this started off as Beta release end of September, with 
additional mods
             added towards the end of October, and was made available 
through a new
             rsync module, 'jnos2NR' during that time. As of November 27, 
this code
             is now an official release, the Beta designation has been 
dropped, so
             please revert back to the standard rsync module 'jnos2' for 
download.

     cd <empty directory> ; rsync -av www.langelaar.net::jnos2 .

 WARNING : do NOT patch this version with ANY previous release updates !
            (in other words do not use tun.c fix, tnlink patch, whatever)


1) Some changes to the way JNOS is compiled - a new './configure' script

  After you download the release, if you try to run make, it will tell you 
to
  run './configure' first - this is new to version 2.0m and onwards. The 
script
  checks to see if the necessary linux development packages are installed - 
if
  they are missing, it will tell you that, and you won't be able to 
continue.

  The 'make' will only work if './configure' successfully makes it to the 
end.

  At present, the script only checks for ncurses, and open-ssl (only if the
  winlink secure login is defined in config.h) -  yes, it scans your 
config.h
  file. Also, if config.h does not exist, the script now puts in the 
default,
  not the makefile anymore as in past versions.

  You can run './configure' as many times as you want, but I suggest if you
  make changes to your existing config.h or whatever, then do a 'make clean'
  first, then run the './configure' script. You will have to anyways, since
  the 'make clean' forces you to run the script again.

  NOTE : the configure script is matched to the makefile, you must update
         both files or else './configure' will complain about it and stop.


2) The 'tun.c' compile issues are resolved, no more patching needed.

   Moved a couple of structure definitions out of the ax25.h and tcp.h
   header files, creating two new header files - ifax25.h and iftcp.h

   There is no longer any need for the tun_sp2l.c patch which I first put
   out back in June of 2017, for those trying to compile JNOS 2.0k.1 on a
   debian-stretch-DI-rc4-i386 distro at the time, the idea was to replace
   the existing tun.c with my patch version - was a kludge fix at best.


3) JNOS should (probably) be run as a non-root user, here is how to do it :

  This change was actually provided to me by KB8OJH (Ethan Blanton) back in
  January of 2018, and I have been running it on my development system, it's
  just that I completely forgot to put it into my rsync areas, till now. My
  profuse apologies for this 'terrible' oversight. Please visit his website
  at https://kb8ojh.net, there is some cool information on there.

  Very simple to implement, the procedure is as follows :

  NOTE : these are examples based on my system, most likely you will need
         to change these, or probably you just should change them to suite
         your JNOS runtime environment. Again - these are just examples.

  a) create a new JNOS user and group

       jnos:x:1001:1001::/home/jnos:/bin/bash
       jnos:x:1001:

  b) change ownership of the entire JNOS runtime area

       chown -R jnos:jnos /jnos/rte

  c) as root user, configure a tunN interface, and just leave it there 
forever.

       ip tuntap add mode tun dev tun4

       ifconfig tun4 192.168.200.200 pointopoint 192.168.200.201 mtu 1500 up

     WARNING : make sure you pick a number N that does not conflict with any
               other tun interfaces that might be running - OpenVPN comes to
               mind for example, some VM subsystems might use tun as well ?

   d) modify autoexec.nos, add an extra parameter to the 'attach tun' entry,
      and make sure to comment out the point to point ifconfig.

      So what was previously run as root, for example, below :

       attach tun tun0 1500 0

       shell ifconfig tun0 192.168.200.200 pointopoint 192.168.200.201 mtu 
1500 up

      will now just become a one line entry, below :

       attach tun tun0 1500 0 tun4


4) The '#define B2F' is now permanent in config.h - do NOT #undef it

   For now I have decided to make #define B2F a permanent define, which 
basically
   relegates the '#ifdef B2F' found all over the code to identifying the 
areas of
   code specific to B2F operation. If you #undef B2F, you will actually 
break the
   checksum processing in the B1F protocol, so it is best to leave it in 
place.

   Thanks to N6MEF (Michael Fox) for accidently discovering the B1F issue :)

   I might even remove the B2F definition in a future release, it does not 
hurt to
   leave this code in place, it's pretty well established by now, so this 
minimizes
   the risk of messing up any of the existing forwarding code.

   Which brings us to the next point below ...


5) Introducing the new '#define WINLINK_SECURE_LOGIN' in config.h

   The only reason the openssl developmenet package is required when 
compiling JNOS
   is because we need the md5 hash routines to support the 'Winlink Secure 
Login'.

   For those who want to pull mail off the CMS servers, you need to have 
this
   defined, or else the CMS servers will refuse to let you go any further. 
Yes,
   you can actually still 'kick wl2k' - search for December 15, 2017 further
   down in this file on how to setup for CMS forwarding - but it will fail.

   Previously '#define B2F' was used to encase the Winlink Secure Login 
code.
    (but now that it's permanent, we have this new define in place)


6) Bit of a surprise, recent versions of linux are no longer supporting the 
old
   setkey () and encryp () functions, which has presented me with the 
problem of
   not being able to encrypt my JNOS 2.0 password management database. 
Passwords
   are still mangled, that's not the issue, but for now I've had to comment 
out
   the part which encrypts the mangled values - don't want a 'rushed 
solution'.

   Looking for a replacement - basically libcrypt (-lcrypt) is no more ...

   IMPORTANT (if you forward with a Winlink CMS) :

    It just means you will have to wipe the /jnos/users directory and run
    the j2pwmgr utility again to recreate the Winlink Secure Login passwd
    information. Unfortunately the files in the directory from before are
    not going to be compatible with this newest version, sorry for that.


7) Support for RMS call (already available in previous release), BUT ...

   The only thing to note is that there is no more 'tnlink' subdirectory,
   the source is now part of the main release. Do NOT use the patch from
   previous version 2.0k.3B - do not use any patch on the new 2.0m !

   If you wish to support Packet Winlink users on your own JNOS, now you can 
:)

   Originally the define was going to be '#define RMSCALL', but I have 
decided
   to instead use '#define TNCALL' since the feature can be used with ANY 
telnet
   service for that matter, even another BBS (how I tested original 
prototype).

   Please check the release notes for 2.0k.3B (further down) on how to use 
this.


 8) New way to configure White Page (WP) processing, read carefully please

   The rewrite file is very important and gives the ultimate flexibility in 
defining
   what your specific JNOS system should process as far as White Page (WP) 
updates.

   Here is the portion of my rewrite file that I am currently testing with :

     #
     wp@ww                           whitepages
     wp@eu                           whitepages
     wp@ve4klm                       whitepages
     wp@ve4klm.#wpg.mb.can.noam      whitepages
     #
     *@ve4klm.#wpg.mb.can.noam ve4klm
     #

     Files : smtpserv.c, smtpcli.c, wpages.c

   Detailed Documentation for JNOS 2.0 white pages can be found here :

     https://www.langelaar.net/jnos2/archive/documents/practical/wpages


 9) A fix to wildmat.c, added on October 22, thanks to VE3CGR (Ron), who 
reported
    this long ago, any time he ran the expire command, JNOS would crash. 
Regarding
    his configuration, he uses NNTP services and his expire.dat is loaded 
with tons
    of NNTP group names, some with a '?' character as part of the name, 
triggering
    the crash.

    It's a simple fix, but quite honestly, any of the wildcard stuff turns 
my brain
    to jello. I still don't understand the changes made in 2014 for N6MEF 
(Michael),
    but I have been told it's still in use, and working for them - so that's 
good.


 10) Now checking for missing BID on ALL incoming S proposals - not just SB, 
but
     also SP, which folks mistakenly use sometimes when sending bulletins. A 
fix
     to mboxmail.c was provided by N1URO (Brian Rogers), added on October 
16.


 11) Fixed several potential string buffer overflows as reported by the 
compiler.


 12) Investigating removal of passwords from ftpusers and incorporating them 
into
     the same JNOS 2.0 Password Management Database as currently used for 
saving
     the Winlink password. At the same time, I am removing the encryption of 
any
     passwords and replacing them with hash:salt information instead, as per 
the
     recommendations of several high profile security institutions, meeting 
the
     need that nobody, not even the administrator, will be able to determine 
a
     users password (because HASH values only go in one direction).

     One could even consider multiple iterations, one could include the CPU 
id
     of the physical computer or some other identifier unique to the JNOS 
host
     setup, locking the password hashes to the specific server JNOS runs on.

     As much as I want to entertain the idea of using HMAC-SHA-256, PBKDF2, 
or
     whatever the flavour of the year, the code can get complex, so for a 
first
     time prototype, MD5 is fine - it's JNOS, not a financial institution :|


 13) Investigating the use of multiple REWRITE_TO (in rewrite file) for 
redundant
     message passing, in case a recipient handling host is down and we 
simply must
     get it passed some other way ? For example, my rewrite could be :

      *.usa.noam aa6hf#RDN#n1uro

     and have #RDN# processed by the smtp client and server within JNOS ?
      (nothing concrete, just a very intriguing idea at this time

73 Henk.

======================================================================
  _    _ ____  __ ____  ____   _____ 
 | |  | |  _ \/_ |  _ \|  _ \ / ____|  SYS: Henk (hb1nos@hb1bbs.com)
 | |__| | |_) || | |_) | |_) | (___    QTH: Ouwerkerk - JO11XO
 |  __  |  _ < | |  _ <|  _ < \___ \   BBS: HB1BBS.ZLD.NLD.EU
 | |  | | |_) || | |_) | |_) |____) |  QRV: 27.235 MHz (FM 1200bps)
 |_|  |_|____/ |_|____/|____/|_____/   WEB: www.hb1bbs.com

======================================================================

** Host of BPQ Netrom/Node NLDHUB::NL9HUB 85.214.163.10 UDP 93  

======================================================================
** This message is generated with Sally 7.2.033
----------------------------------------------------------------------
** Timed vrijdag 13 maart 2020  00:53 West-Europa (standaardtijd)
** BBS HB1PMS@HB1BBS.ZL.NLD.EU





Lese vorherige Mail | Lese naechste Mail


 14.07.2025 19:46:47lZurueck Nach oben