NetXpress Internet Access BBS Door Administrator's Manual --------------------------------------------------------------------------- Copyright © 1996 Merlin Systems Inc. All rights reserved. This software product and this manual are copyrighted and all rights are reserved by Merlin Systems Inc. No part of the contents of this manual may be reproduced or transmitted in any form or by any means without the written permission of the publisher. Merlin Systems Inc. does not assume any liability arising out of the application or use of any products described herein. Merlin Systems Inc. further reserves the right to make changes in any products described herein without notice. This document is subject to change without notice. NetXpress Internet Access BBS Door, NetXpress Server and NetXpress Mail & News Gateway are copyrighted by Merlin Systems Inc. All other mentioned products are copyrighted by their respective authors. Merlin Systems Inc. P.O. Box 3043, Station C Ottawa, Ontario K1Y 4J3 Canada Fax/BBS: (613) 741-7583 info@merlinsys.com support@merlinsys.com sales@merlinsys.com http://www.merlinsys.com FidoNet: 1:163/509 --------------------------------------------------------------------------- Contents * Preface o Welcome to the World of the Internet o Conventions o Technical Support * Installation o Installation * Configuration o Syntax o Using Text Windows and your Mouse o General Configuration o TCP/IP o World-Wide-Web o Gopher , IRC & WhoIs o Telnet o Mail Configuration o Dial-up Door Configuration o Security Levels * Internet Access BBS Door o Syntax o Functions o Internal URLs o Form Variables * Dial-up IP Door o Syntax o Operation o User Configuration * Appendix o HTML o Error Messages o Display Files Format o Acknowledgments --------------------------------------------------------------------------- Preface --------------------------------------------------------------------------- WELCOME TO THE WORLD OF THE INTERNET The future is upon us. That mythical information superhighway is now in clear reach. Many estimates are floating around about the Internet's population and its increase in size. It is considered safe to say that it currently has around 50 million people and that it is doubling every couple of years. In fact lately, the population acceleration has frightened and overwhelmed many Internet old timers. All figures denote that the Internet has obtained 'critical mass' to be present for a very long time to come. No longer the realm of universities and big business, the Internet has begun to bring cyberspace to the masses. The Internet with its thousands of protocols, can be managed from well conceived software that takes care of all of the unruly elements of Internet connectivity. There will always be a learning curve due to terminology, but we hope that our software will provide one of the easiest in-roads on to the Internet. --------------------------------------------------------------------------- CONVENTIONS In this book, the following conventions are used: * Optional variables are placed within square brackets; for example, [ ] * Mandatory variables are placed within angled brackets; for example, * Whenever you may use more than one variation, a | character is used to denote the different possible values; for example, put | send | output * Input typed in by you is printed in italic; for example, cd \netxbbs --------------------------------------------------------------------------- TECHNICAL SUPPORT There are a number of places to receive technical support. Fax: 1-613-741-7583 BBS: 1-613-741-7583 E-mail: support@merlinsys.com Web: http://www.merlinsys.com FidoNet: Support 1:163/509 Installation --------------------------------------------------------------------------- INSTALLATION If you received a diskette, insert the diskette in one of your disk drives. Then enter INSTALL and press the key. Example: If you placed the disk in drive A:, you would type: a: INSTALL NetXpress Door Directory: C:\NETXBBS F10 - Ok Esc - Cancel The NetXpress Door Directory is where you would like to install the software. Press the F10 key to continue. If you received a compressed file containing the software programs, simply uncompress the file(s) into an empty directory. Example: md \netxbbs cd \netxbbs pkunzip NETXBBS After the INSTALL program finishes, you must go into the NXCFG program and alter the default settings, especially your network addresses. Configuration --------------------------------------------------------------------------- SYNTAX The syntax for the Setup program is as follows: NXCFG [configfile] Where [configfile] is the location and name of the configuration file. If you omit the [configfile] parameter, NXCFG will try to open the configuration file NXBBS.CFG in the current directory. --------------------------------------------------------------------------- USING TEXT WINDOWS AND YOUR MOUSE The NXCFG program uses a text window approach to displaying information for you. The top window is always the current one and only those fields within it are active. NXCFG also allows you to use a mouse or a pointing device to perform functions. All mouse-assessable functions can also be accessed through a keyboard command. To access a certain field or command by using the mouse, simply move the mouse cursor to the area occupied by the field or command and click on the left mouse button. Clicking on the right mouse button will usually get on-line help. --------------------------------------------------------------------------- GENERAL CONFIGURATION System Directory d:\dev\netsrv\bbs System Help HTML file:///help.htm Work Directory C:\TEMP Date Type MMDDYYYY Date Delimiter / F1 - Help Esc - Cancel F10 - Ok System Directory: The directory that includes the executable program and the configuration file. System Help HTML: This is an URL of general help available at the menu. Work Directory: A tempoary directory that is used to store temporary files. This may be a RAM disk or a local drive. All files written to this directory will be deleted by NXBBS. Date Type: The format of the displayed date. This is only used in the FTP client and in IRC for the log file. You have four options: o YYYYMMDD (1995-10-23) o MMDDYYYY (10-23-1995) o YYYYDDMM (1995-23-10) o DDMMYYYY (23-10-1995) Date Delimiter: The character that is displayed in-between the date fields. TCP/IP This window allows you to configure your TCP/IP connection parameters. These values are used with the Packet Driver software to connect the NetXpress BBS Door to the Internet. Most, if not all, of these values will come from your service provider This section does not provide any way to configure your Packet Driver. You must have it loaded and configured before running the NetXpress BBS Client software. The Packet Driver software may handle either Ethernet or SLIP classes. Please see the Appendix section on Packet Drivers for more information. For dial-up access, you will need to either have your modem connect and login in to your service provider before you load in your SLIP/PPP packet driver. BOOTP Gateways Enable 204.191.36.1 Server Timeout Addresses Name Servers IP 204.191.36.201 204.191.36.5 Net Mask 255.255.255.0 204.191.36.4 Host Name node1 Domain Name merlinsys.com Transmission Parameters Max. Segment Size 512 Name Lookup Timeout 30 TCP Connect Timeout 60 Inactivity Timeout F1 - Help Slip Ethernet Esc - Cancel F10 - Ok BOOTP Enable: If enabled, NetXpress will use the BOOTP protocol and connect up to the specified server to query the information in the two other windows. This means that your IP address is a temporary address, and that you may not give it out since it will always change. If disabled, then you must fill out the rest of the information in the next two windows, but you do not need to fill out any of the information in the BOOTP window. BOOTP Server: The IP address of a BOOTP server to contact upon startup to query your address information. You must not place a domain address in this field. BOOTP Timeout: The timeout in seconds for a connection to the BOOTP server to fail. IP Address: Your IP address. Net Mask: If you have more than one IP address for your network, then you must set the network mask for your local network. If not (which is usually the case), then just leave this entry blank or enter the default value of '255.255.254.0'. This value may never be '255.255.255.255'. Host Name: Some applications will wish to know your PC's name, a short textual name. This will be the machine's name and not your domain name. This name may contain only numeric digits and letters, and should be less than 9 characters. Domain Name: Your system's domain address. The domain and hostnames will be concatenated into one domain address for this machine. Example: node1.merlinsys.com Where: node1 is the hostname merlinsys.com is the domain name Gateway Address: The address of a local gateway. This value is always supplied by your network service provider and is usually the IP address of the machine that NetXpress will connect up to. Name Servers: The IP addresses of name servers (in order of importance). These name server will resolve domain addresses into IP addresses. Maximum Segment Size: This is the maximum segment size that NetXpress BBS Door can receive over the packet driver. The default value is 1400 for Ethernet. The maximum value should not exceed 4096. TCP Connect Timeout: This allows you to specify a specific amount of seconds that the NetXpress BBS Door will attempt to connect to a remote computer, wait for data from a remote computer, and wait to accomplish other miscellaneous networking tasks. The default is 30 seconds, but may be set longer if you have an especially slow connection. Name Lookup Timeout: The time needed to resolve a domain name into an IP address. Some name servers are very slow (very busy) and thus this value needs to be increased. Inactivity Timeout: The number of seconds of inactivity with a session before it timesout. This value usually will be set to 0 or left blank. --------------------------------------------------------------------------- WORLD-WIDE-WEB Home Page file:///homepage.htm Local Base Dir c:\nxbbs Mail HTML mail.htm New User HTML newuser.htm F1 - Help Esc - Cancel F10 - Ok Home Page: The default HTML file used as the home page. This file is displayed whenever the user does not specify an URL in the menu or whenever the menu is disabled. Local Base Directory: The directory that all WWW local file access will be relative from. Mail HTML: The HTML file used to gather information for a message. If empty, the message function will be disabled. New User HTML: The HTML file displayed to first-time users of the NetXpress BBS Client. --------------------------------------------------------------------------- GOPHER , IRC & WHOIS All three functions need the two pieces of information, the default server and the default port. Default Server: The address of the default server. This server is used whenever the user does not specify a server to contact. Defaults: Gopher: boombox.micro.umn.edu IRC: irc.bu.edu WhoIs: rs.internic.net You should never have to change the WhoIs default Server, but you should change the IRC server to one that is closer to you. For more information on IRC servers, look in the I.R.C. FAQ. Default Port: The port of the default server. This server is used whenever the user does not specify a port. You should never have to change these values. Defaults: Gopher: 70 IRC: 6667 WhoIs: 43 --------------------------------------------------------------------------- TELNET Terminal Emulation vt100 F1 - Help Esc - Cancel F10 - Help Terminal Emulation: The default terminal emulation used in Telnet. This should always be vt100, since ANSI is not usually recognized by Telnet servers. --------------------------------------------------------------------------- Mail Configuration Default SMTP Host mail.uunet.net Address Delimeter . UT Time Offset -300 Default POP3 Host mail.uunet.net UUCP Spool Dir \spool News Server news.uunet.net F1 - Help Esc - Cancel F10 - Ok Default SMTP Host: The address of a default SMTP mail host. If blank, then the mail function will be disabled. Example: mail.magmacom.com Address Delimiter: The character that replaces the space within user's name when their names get converted into an Internet address. This is only used in the FTP client and in IRC for the log file. UT Time Offset: The offset in minutes from Universal Time/Greenwich Meadian Time. Example: o EST = -300 (Eastern Standard Time - North America) o PST = -480 (Pacific Standard Time - North America) o CET = +60 (Central European Time - Europe) Default POP3 Host: This is the address of a POP3 server that all user's who have access to the mailbox functions will get as their default POP3 server. The user may wish to change their own value if they have an account on another POP3 server. UUCP Spool Directory: The location of your UUCP Spool directory. NXBBS will look inside this directory and its subdirectories for incoming UUCP messages addressed to the user. If you do not use UUCP, then leave this blank. News Server: The NNTP server to contact when requesting news. --------------------------------------------------------------------------- DIAL-UP DOOR CONFIGURATION Internal BOOTP Server When enabled, NXDIP will process all BOOTP requests and reply with its own IP address. You might wish to disable this feature if you have a BOOTP server on your network and wish to use it instead. Static IP Addresses: By matching user names to specific IP addresses, you can create static IP addresses for particular BBS accounts. --------------------------------------------------------------------------- SECURITY LEVELS The security levels settings control whether a user has access to certain functions. If the users has a greater or equal security level than required, then they are allowed to perform that function. If they do not have sufficient security access, then they will be displayed the HTML in the 'No Security HTML' field. If this field is empty, then a 'Not enough security' message is displayed. Internet Access BBS Door --------------------------------------------------------------------------- SYNTAX nxbbs [/G ] [/I ] [/B ] [/Q ] [/A ] [/C ] [/U ] [/ForceFOSSIL] [/H] [/?] [menu commands] /G Path and a filename to the configuration file to be used. If not specified, then NXBBS.CFG in the current directory will be used. /I The IP address to use instead of the one in the configuration file. The IP address may also be defined in an environmental variable named IP. The command line switch takes precedence over the environmental variable. /B Supported drop-files are: o DOOR.SYS o DORINFO?.DEF o PCBOARD.SYS o USERS.SYS o CHAIN.TXT o SFDOORS.DAT o XTRN.DAT o CALLINFO.BBS The can also be 'LOCAL' followed, optionally, by a colon and a user name. Example: /B "LOCAL:Joe Smith" You may state more than one drop-file by placing multiple /B commands Menu Commands Anything you can type in at the main menu can be included here. Commands can be partial or they can contain all needed information. --------------------------------------------------------------------------- FUNCTIONS The following is a list and descriptions of all the function in the NetXpress BBS Client: World-Wide-Web The World-Wide-Web protocols allows for the exchange of information in a extremely flexible and unstructured manner. The WWW server is just a file request server, the WWW client has most of the intelligence and makes decisions about how to obtain certain information. The important difference between the older Gopher protocol and the Web protocols are that the Web display formats are unstructured and can look like anything, while Gopher has a rigid menu structure. Also Web browsers possess knowledge of many more methods of accessing data than gopher clients do. The number of access methods available to Web browsers is bound to increase in the future. File Transfer Protocol The File Transfer Protocol (FTP) allows users to peruse the file system of another system on the Internet. One important fact concerning FTP, is that it tries to look like a file system and thus contains no file descriptions, although there are methods of displaying descriptive text to the user. Telnet Telnet allows people on the Internet to remotely login to another computers on the Internet. It is like using a terminal program with a modem over phone lines. Except that all communication is handled through the TCP/IP protocol over the Internet. Gopher The Internet Gopher protocol offers users the ability to browse through the Internet in a structured menued environment looking at user-friendly menu descriptions instead of service names, hosts and ports. The beauty of Gopher is that a menu entry may point anywhere on the Internet, and thus hoping from one Gopher to another is virtually seamless to the user. It also allows users to retrieve documents without the need to do it themselves interactively. Internet Relay Chat IRC stands for "Internet Relay Chat". It was originally written by Jarkko Oikarinen (jto@tolsun.oulu.fi) in 1988. Since starting in Finland, it has been used in over 60 countries around the world. IRC is a multi-user chat system, where people convene on channels (a virtual place, usually with a topic of conversation) to talk in groups, or privately. WhoIs WhoIs is used to look up names of users and corporations in a main database. The default action is to do a very broad search, looking for matches to your target in many fields: handle, name, nicknames, hostname, net address, etc., and finding all record types. WhoIs then shows the results in one of two ways: as a full, detailed display for a single match (with possible subdisplay), or as one- or two-line summaries for multiple matches. Finger Finger is a common Unix facility to examine the user login information on a system. Information retrieved can either be a text file or information about that user on that system. Ping Ping checks is valuable to check to see if a system is running and how long messages take to reach it and come back to your system. Simple Mail Transfer Protocol SMTP stands for Simple Mail Transfer Protocol and is defined in RFC821 and has been updated in other various RFCs. It is the standard way of transferring private mail between hosts directly connected to the Internet. The SMTP function will actually send the message right away on to the Internet via the SMTP Host defined below. The message will not be stored anywhere on the local system or on your BBS. The SMTP function cannot access incoming messages, you will need to use an Internet gateway for your BBS. Remote Login Remote Login is very similar to Telnet, except that it automatically logs in the user. ph ph is also known as qi and CSO. It is a phonebook protocol that allows searches to be made on various fields. Gopher uses CSO internally, thus we have made it available as a separate function. CSO will probably be used the least out of all of the functions. Remote Execution (Rexec) Rexec is used to execute programs on another computer. The software must reside on that computer and your login ID must have rights to it. Raw Telnet This is just Telnet without any Telnet control codes. This is a straight TCP/IP connection. Bookmarks A list of the user's permanent bookmarks of favorite places. Session History A list of the user's session history. --------------------------------------------------------------------------- INTERNAL URLS You can include special internal URLs (Universal Resource Locators) in your HTML documents that allow you to retrieve input from the user and then perform a certain function with that input. The following is a list of available URL codes and their associated FORM names: internal:///telnet ADDRESS PORT USER PASSWORD TERMINAL Terminal defaults to ANSI. The User and Password values are only displayed to the user and are not actually used in the Telnet routines. internal:///rawtcp ADDRESS PORT USER PASSWORD The User and Password values are only displayed to the user and are not actually used in the Raw Telnet routines. internal:///rlogin ADDRESS PORT USER PASSWORD TERMINAL Terminal defaults to ANSI. internal:///rexec ADDRESS PORT USER PASSWORD COMMAND internal:///finger ADDRESS PORT USER Port defaults to 79. internal:///whois ADDRESS PORT USER Port defaults to 43. Address defaults to rs.internic.net internal:///ping ADDRESS NUMBER Number defaults to 1. internal:///ftp ADDRESS USER PASSWORD PORT PATH User defaults to anonymous and Password defaults to the user's email address. Port defaults to 21. internal:///cso ADDRESS PORT Port defaults to 105. internal:///gopher ADDRESS PORT PATH TYPE Address and Port default to the values from the configuration file. Type defaults to '1' (menu). Path defaults to "" (nothing). internal:///http URL internal:///irc USER PASSWORD ADDRESS PORT PATH Address and Port default to the defaults from the configuration file. Password is rarely used. The PATH variable states the channel to automatically join. internal:///smtp_send USER SUBJECT TEXT NEWSGROUP If the USER variable is not empty, then the message will be sent to the default SMTP server for delivery. If the NEWSGROUP variable is not empty, then the message will be delivered to the default NNTP server for posting. internal:///config IRCNAME POP3SERVER POP3USERNAME POP3PASSWORD This URL actually causes the information sent back to be saved. Every time the user goes into IRC, their IRC userid is saved. internal:///bookmarks Brings up the user' bookmarks. internal:///history Brings up the user's current session visited documents/places. internal:///help Brings up the Help HTML. internal:///inbox Brings up the user's inbox. internal:///outboxbox Brings up the user's outbox. internal:///pop3_get Retrieves the user's mail from their POP3 server. internal:///mailbox Brings up the Mail main HTML document. From this document the user can select to fetch new mail or compose a new message. internal:///mail Brings up the 'Message Editor' HTML document. internal:///uucp_get Fetches new mail stored on your UUCP spool directory. --------------------------------------------------------------------------- FORM VARIABLES Variables are only used in the "VALUE" parameter of a INPUT FORM object. Example: #destination# Represents the message destination #subject# The current message's subject #msgtext# The current message's body text #gopher_server# Default gopher server #gopher_port# Default gopher port #whois_server# Default whois server #whois_port# Default whois port #irc_server# Default IRC server #irc_port# Default IRC port #homepage# Default Web home page #sendmail_html# Send a Message HTML #help_html# General Help HTML #user_irc_name# User's IRC name #user_address# User's Internet address #host_address# This host's domain name #new_user_html# New user's HTML #mailbox_html# The HTML document that brings up the Mail menu. #pop3_username# The user's POP3 name #pop3password# The user's POP3 password #pop3server# The user's POP3 server #newsgroup# The current message's newsgroup field Dial-up IP Door --------------------------------------------------------------------------- SYNTAX nxdip [/B ] [/I ] [/C ] [/Q ] [/A ] [/P] [/T ] [/ForceFOSSIL] [@PPP] Path and a filename to the configuration file to be used. If not specified, then NXBBS.CFG in the current directory will be used. /I The IP address to use instead of the one in the configuration file. The IP address may also be defined in an environmental variable named IP. The command line switch takes precedence over the environmental variable. Example: SET IP=142.55.23.123 /B Supported drop-files are: o DOOR.SYS o DORINFO?.DEF o PCBOARD.SYS o USERS.SYS, o CHAIN.TXT o SFDOORS.DAT o XTRN.DAT o CALLINFO.BBS /P Doesn't hangup the modem when the door exits /T Sets the maximum number of minutes that the user can be online /F Forces the use of non-standard FOSSIL drivers @PPP Sets NXDIP to use PPP instead of SLIP/CSLIP --------------------------------------------------------------------------- OPERATION This program is called as a door from the BBS and handles all SLIP, Compressed SLIP and PPP encoding and decoding of the communications link. It bridges the gap between the IP packets coming over the modem's lines to the packet driver. The user must have configured their IP address correctly on their end and it must be an address that is 'owned' by you. They can optionally use BOOTP to request their IP address since the SLIP door has an internal BOOTP server that will respond to their BOOTP request. If they use PPP, the PPP connection will set their IP Address automatically. Compressed IP Headers in SLIP are automatically switched on if any incoming packets are compressed. In PPP, they are negotiated at the begining. The software terminates when: * the sysop pressed on the local console * the user's daily time expired * the carrier is lost A packet driver must be load prior to the execution of NXDIP. --------------------------------------------------------------------------- USER CONFIGURATION The user must have configured their IP address correctly on their end. Their IP address must be one that is 'owned' by you. If they set their IP address to 0.0.0.0, then the internal BOOTP server in NXDIP will take care of their IP Address request and return this node's IP Address. PPP automatically sets the user's IP address at the begining negotiations. The user's netmask may be anything at all since they are using a dial-up connection. Usually , they can just set it to '255.255.255.0. Appendix --------------------------------------------------------------------------- HTML HyperText Markup Language is the standard document on the Web. It is out of this manual's scope to detail it's syntax. You may use any of the available HTML editors to create local web pages. Please note, that your user's will only see a text representation of the document, so inline images and image mappings will not be relevant. --------------------------------------------------------------------------- ERROR MESSAGES Could not allocate socket! Not enough memory was available to allocate the Internet socket (4k). No packet driver found! No packet driver software was found in the interrupt range of 0x60-0x80. NXBBS.KEY not found! Your serialized KEY file could not be found in the system directory. NXBBS.KEY is corrupt! Your serialized KEY file is damaged and should be replaced by contacting the source of purchase. --------------------------------------------------------------------------- DISPLAY FILES FORMAT Both the WELCOME and the MENU display files use the same PCBoard color macro format. This allows one file to be used by users with ANSI and users without ANSI. The color macros are formatted as: @Xbf Where b is the background color and f is the foreground color. Both f and b are hex digits that represent the color required. Hex Digit Foreground Color Background Color 0 Black Black 1 Blue Blue 2 Green Green 3 Cyan Cyan 4 Red Red 5 Magenta Magenta 6 Brown Brown 7 Light Gray Light Gray 8 Dark Gray Blinking Black 9 Light Blue Blinking Blue A Light Green Blinking Green B Light Cyan Blinking Cyan C Light Red Blinking Red D Light Magenta Blinking Magenta E Yellow Blinking Brown F White Blinking Light Gray Other than the color macros, you an also use @CLS@ to erase the screen, and @MORE@ to pause and display 'Press any key to continue'. You may also use two distinct display files; one for users with ANSI and one for users without ANSI. A display file with a file extension of .ANS will be used by users with ANSI. A display file with a file extension of .ASC will be used by users without ANSI. --------------------------------------------------------------------------- ACKNOWLEDGMENTS Special thanks to all of our beta testers for their time. We would also like to offer our gratitude to the following people: Ed Bercovitz, Michael Boettger, Brad Dameron, Peter Ellis, Erick Engelke, Ian Gerada, Anna Kalasznikow and Tony Rocha.