***************************************************************************** . . . ___ . _ /|\ / _ |_ _ _ -+- _ . . | _ ._ _ . _ ._ /| ' ) /-| X (_`| | (_`| |(_` | |_)|V| | \ /|_)| `(_`|/ \| | | < / |/ \._)| | ._)|_|._) |_|_,||| _|_ V |_,| ._)|\_/| | |o._) ._| 15-Mar-93 © Digital Design 1991-1993 ***************************************************************************** S y s t e m a d m i n i s t r a t o r ' s ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ r e f e r e n c e m a n u a l ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1.0 Getting started 1.1 Installing AXsh system 1.2 Using AXsh with other software 1.3 Adding and removing users 1.4 Security 1.5 Helping users 1.6 Manuals 1.7 Installing new software 1.8 Administrator's daily duties 1.9 Short introduction to the programs 1.10 Problems and answers, tips and tricks 2.0 Configuring and customizing AXsh 2.1 /etc/rc 2.2 /etc/rc.server 2.3 /etc/rc.ffe 2.4 /etc/rc.news 2.5 /etc/rc.mail 2.6 /etc/crontab 2.7 /etc/issue and /etc/motd 2.8 /etc/forbiddenvars 2.9 /etc/globallogin 2.10 /etc/nologin 2.11 /etc/adm/ directory 2.12 /etc/xprotos.tab 2.13 /etc/Questionnaire 2.14 /etc/adm/Answers 2.15 /etc/exampleuser/ directory 2.16 /etc/register.* 3.0 Networking under AXsh 3.1 Network installation 3.2 Creating a node 3.3 Creating a new network 3.4 Connecting to Internet 3.5 UUCP 3.6 AXnet mail 3.7 AXnet news 4.0 Registering stuff 4.1 Registering form 4.2 Bug report form 4.3 New application report form 4.4 Author 4.5 Copyright notices ***************************************************************************** 1.0 Getting started AXsh is a shell based local communication software, which allows remote users to connect to your machine. AXsh can also be run under UUCP, but you need to do some changes to some of the configuration files. AXsh consists of three main parts: the AXsh shell software, AX-sysghost, which holds information about users and AX-server, which takes incoming calls, starts AXsh etc. AXsh supports multiple users, multiple lines and different user levels. You can define allowed commands and directories for each user level. Command arguments can also be restricted to home directory or to allowed directories. AXsh is a SHAREWARE product and the REGISTRATION fee is about US$ 30, 150 FIM. We'll accept any other currency too, because that is more convinient for everybody, but US$ and FIM are preferred. The cheapest way to send the money is in cash in a letter. If you don't plan to register, but have an Internet mail address, you should still send some mail so I can keep you upto date about updates to the demo distribution. We are developing the system constantly and all comments and bug reports are welcomed. (See the addresses in the end of this document.) Before you start to install, you should check that your system is cabable of running AXsh. Here is a list of things you should have: - Amiga 500/600/1000/2000/2500/3000/3000T/4000 - at least 0.5 MB of memory (>1M recommended) - at least 5 MB of hard disk space for AXsh in a public system - Hayes standard modem connected to Amiga via RS-232 You also need: - KS2.0 OR arp.library v39 or newer IMPORTANT! 1.3 will be the last 1.3-compatible version. Next version will REQUIRE ks2.0 or later. To use network or file transfer: - xprzmodem.library 2.52 or newer - any other xprotocol library The disk space usage can be controlled by yourself. If you don't have 5 megs of disk space for AXsh, don't take Internet news or hundreds of users. Frankly, it's up to you. Kickstart 2.0 is recommended, but not currently needed. If you need to know about AXsh shell itself or about other programs, just read the appropriate man-files. This document discusses only the installation and configuration-related topics. This section is kind of abstract stuff, so if you're familiar with AmigaDOS and know how to unpack AXsh to the installation diskette and how to use WorkBench, skip this first section and concentrate on the second part of this manual. In this manual some of the paths are defined this way: /etc/adm/ . "/" means root directory, in this case the AXsh: assign. /etc/adm means AXsh:etc/adm. In AXsh they both work just fine. ***************************************************************************** 1.1 Installing AXsh system For automatic installation you need a formatted disk. You should use a FFS format floppy, otherwise everything wont fit into the disk. You cannot use a harddisk partition, it has to be a floppy! If you don't have possibilities to use an FFS format disk or you want to use a seperate partition for AXsh, you can install the system by hand. format drive df0: name AXshPack NOICONS FFS When you have a disk ready, unpack the AXsh packet to it: lha x InstallDisk df0: You can do the above also automatically with the MakeInstallDisk ICONX script. Now you can just double click the disk icon and select an appropriate install script for your system. The installer will ask you to select the right drawer and files to install. ***************************************************************************** 1.1.2 Installing by hand Create a new directory or a partition for AXsh and make an assign to point to that directory: assign AXsh: e.g. : assign AXsh: DH0:Communications/AXsh/ If you prefer a partition for AXsh, it's reasonable to label it `AXsh': relabel AXsh e.g. : relabel DH4: AXsh And now when you write the following command line: cd AXsh: ..you should be in your local AXsh directory. If any system requesters appear, you've done something wrong above. At this point, unpack the packet to the directory/disk: lha x InstallDisk AXsh: This will take a while to be executed. It unpacks the AXsh packet to your (hopefully) hard disk. After the shell prompt appears again, you should have all files unpacked. You should consult chapter 2.0 for customizing configuration files to fully use AXsh cababilities. Now, try this from any CLI or shell: path AXsh:bin/ AXsh -con AXsh version string and login prompt should appear. Give login name root and password root. Now you should notice if you have succeeded in the installation process. Use "exit" to terminate an AXsh session. You can get more information about the AXsh shell itself from its own manual : /man/AXsh.man. If you want to use AXsh remotely, you have to make AXAUX: available: mount AXAUX: from AXsh:etc/Mountlist.AXsh Now AXAUX: handler is added to the system and it is ready to handle the builtin serial line. If you want to use a different serial device, refer to section 2.2 about /etc/rc.server and the manual pages for ax-server and axaux-handler. You can now start the AX-server with "AX-server". If you do not start AX-sysghost, the first AXsh run will start it automatically. Next thing to do is to make the mounting procedure automatic. If you're running AmigaOS 2.0 or higher, do the following: AmigaOS 2.0 installation: Edit s:user-startup using your favourite text editor and write: assign AXsh: mount AXAUX: from AXsh:etc/Mountlist.AXsh After that, save the user-startup and open the AXsh installation diskette's Storage directory from Workbench. You'll see icons with an A on the top left corner. Move these icons to your boot disc's WBStartup directory. Now, when system opens Workbench, it automatically launches these programs. If you're not using Workbench, follow the AmigaOS 1.3 installation steps, but edit s:user-startup instead of s:startup-sequence. AmigaOS 2.1 installation: In addition to the AmigaOS 2.0 installation steps move the AXAUX handler from the AXsh installation diskette's Storage/DOSDrivers directory to the system Devs/DOSDrivers directory and leave out the mount command from the user-startup. You should also copy the locale system files to the Locale: directory as well as the catalog files, if you want to use other languages than the default English. copy AXsh:storage/Locale/catalogs locale:catalogs all Currently AXsh (the shell itself), Mail and Ami (private mail programs), Rn (news reader) and FFE (file frontend) all support WB2.1 locale.library. Included languages are: English Default (Included in the programs) suomi (Finnish) by Pasi Ojala po87553@cs.tut.fi français (French) by Cedric Beust Cedric.Beust@sophia.inria.fr dansk (Danish) by Soeren Berg Hansen siera@imada.ou.dk español (Spanish) by Sebastian Delmont sdelmont@dino.conicit.ve svenska (Swedish) by Morgan Ericsson morgan@krynn.augs.se Thousand thanks and happy and productive future to all translators. If you are willing to do translation to your own language, just contact me. AmigaOS 1.3 installation: Edit s:startup-sequence using your favourite text editor and write before the endcli >nil: command: assign AXsh: execute AXsh:etc/Startupadd.AXsh And that's it. Save the modified startup-sequence and try booting the machine. You may check the Startupadd.AXsh file to see what is done there. ***************************************************************************** 1.2 Using AXsh with other software AXsh can be used as a BBS software by itself, but it can also be used with other software packages. AXsh can be setup to run under DLG and other 'traditional' bulletin board systems that support the door-concept and you can use TrapDoor and UUCP Getty instead of AX-server, if you also handle Fidonet or UUCP traffic. Here is an example of TrapDoor settings: BBSmode Spawn BBSCommand "execute AXsh:etc/remote-startup" BBSInOut "AXAUX:serial.device/0/shared/speed%B" Serialname serial.device Serialunit 0 Baud 19200 We have also included instructions how to use AXsh under UUCP, but you have to go through all the configuration files and change them according to the instructions. ***************************************************************************** 1.3 Adding and removing users Administrator's most important task in administrating is keeping track of users. In AXsh this part is made fairly easy. Users can register themselves by giving a login name 'new' (this feature can be disabled if needed, see /etc/rc), which invokes a program called AXsh:bin/register. It asks for the desired login name, user's real name, password and the administrator can ask them what ever he or she wants depending of the contents of AXsh:etc/questionnaire. You can also edit the /etc/register.*-files to your preference or you can replace the register commands with a program that just takes the information about the new user and you create the account after verifying the user. Registering features and questionnaire file are explained more carefully in chapter 2.10. The default register program creates new accounts automatically, so you don't have to do that either. The only thing you must do is to check users' information. All the answers to the questions are collected into one file called AXsh:etc/adm/answers. The filename can also be changed by modifying AXsh:etc/rc. Users can also be added manually by using passwd. However, you should notice that passwd does NOT create home directories nor does it copy any default files, it simply adds the login name to the system. Because of this, it is adviced that you use register to add new users, even if you do that locally. On the other hand, using passwd directly is the only way to make two login names use the same home directory, if that kind of feature is needed. Removing users needs some more effort. You have to know the user's login name and you have to be logged in as a superuser. Usually login name 'root' has this access level. If you are using an AmigaShell, you can use the supplied 'login' command to set the superuser bit (login 32768). When you decide to remove a user, you must be sure, that it is what you really want to do, because there is no way to get user's account back after removing it. passwd -r This line removes user's account from AXsh:etc/passwd file. This WILL NOT delete the user's home directory or any other files belonging to the user (like the system mailbox), so you have to do that yourself. Depending on the configuration you go to system's home directory (usually AXsh:home/) and type the following line: delete all quiet Delete is a standard AmigaDOS command. For further information consult your AmigaDOS user's manual. With passwd you can also change user quotas and accesslevels. Passwd -l will list all users in /etc/passwd-file and passwd -ll will list available user level names. Passwd in also used to change real names and passwords (as the command name implies :-). ***************************************************************************** 1.4 Security Security is a top priority thing on an AXsh system. It's up to you how much privileges you give to a user. It's not very wise to give executing privileges to 'format' for access level 'normal'. If you run a closed system with just few known users, it's not that important as long as you don't give executing privileges for intuition based programs. You also control which directories the users have access to. However, if you give the user any of the superuser levels, he has access everywhere. Still, only the commands defined in the rc file can be used remotely. In a public system it's very important to double check the users for whom you're giving higher privileges than 'normal'. Any other user except 'root' should not have access level 'superuser'. Normally it's not necessary to give a user special privileges. 'Normal' would do just fine. You can add quota or unset it, if you've got enough storage space. There are also other user levels, you can read about them in the configuration part. ***************************************************************************** 1.5 Helping users Because AXsh is not a traditional BBS software, there will be some problems, if you run a public system. That's why it's essential to keep all the manual pages in sight. /etc/motd file (message of the day) should contain information about how to get manual references and manual pages (man -k - and man ). If you want to make the use of the system easier to your users, you can use the alias system to make menus and one-letter command aliases. ***************************************************************************** 1.6 Manuals Manuals are AXsh's online help for a user. They should ALWAYS be stored in AXsh:man/ directory. As mentioned above, manual pages are read with the man command. It is also possible to search for a manual entry with a reference key. It might be for example the word 'user'. When you write the command man -k user man displays all the manual pages' reference lines which contain something about users. Let's try it: man -k user finger -(AXsh) show user information irc -(AXsh) multiuser chat utility: (Non-internet-relay chat) passwd -(AXsh) manipulate userfile register-(AXsh) ask facts about the user and create an account who -(Shell) show users currently on the system,terminals,times write -(Shell) send a message to another user OK. Now we have the refernce lines on the screen. If `write' is the needed command, just write: man write and the manual page for write appears on the screen. Online manuals work very much the same way as in Unix, but they are not separated in classes. All the manual pages are stored directly under AXsh:man/. Manual reference lines are stored in AXsh:man/Reference. You might use a separate man program, if it checks and obeys BREAK-signals (ctrl-c sent by the user or the corresponding signal sent directly to the program). You also should have /checkcd defined in the AXAUX-filename. ***************************************************************************** 1.7 Installing new software AXsh is being updated all the time. New versions of programs and whole new programs are released moderately often. It's your job to install new software so that it works correctly. In addition to this you should have some local news groups in which you inform local users about this new software or modification, so that they can benefit from it as well. After you've tested the new software locally, you can add execute privileges for users. Installing new version of an old program is not that complicated. Just move the program in correct directory (usually AXsh:bin/) and check that everything works. See also if any modifications to the settings is needed. If you have received a whole new release of AXsh, read carefully all the update files before installing. You should also install AXsh into a new drawer or first copy the configuration files you have personalized or otherwise modified. There may also be some programs to change the news subsystem or other parts of the system to a new format. (Upgradenews converted version1.24 news system to 1.25 format.) ***************************************************************************** 1.8 Administrator's daily duties There are couple of things that administrators should perform daily. If you're using cron (CyberCron, dcron), you can do these tasks automatically. First, you must move all the user log files away from AXsh:etc/adm/. They are named as follows: Log-