Last update 22-Jul-1999

### How to setup an FTP server to work with MBSE BBS.

In order to let MBSE BBS and your FTP server to both function together you must organize a special file structure. Note that even if you don't setup an FTP server you must still create a structure like this for the fidonet mailer, if you don't, mail and files will get lost!

#### The filestructure I used is as follows:

    /SYS/usr/ftp/pub/dos_util/dos_4dos	- Public download areas
            |   |   |        /dos_disk
            |   |   |        /dos_file
            |   |   /virnet/mcafee
            |   |          /win16
            |   |          /win32
            |   /bin			- FTP bin directory
            |   /etc			- FTP etc directory
            |   /incoming			- FTP public upload.
            /mail/out			- Your mail in/outbound
            |    /out.009
    	|    /inbound
            /raonly/upload			- Non-public download areas
            |      /sysop
            |      /logfiles
            /tic_queue			- Queue for .tic files.

In order to give DOS style names for fidonet sessions you must set the DOS path and Unix path in mbsetup (1.4.6 and 1.4.7) to "m:" and "/SYS/usr". Note that to get forwarding of .tic files to work the tic_queue must be a subdirectory of "/SYS/usr" too. You could actually use any drive letter for the DOS path.

This means that a fidonet file attach from the dos_4dos public download directory shall get the subject "M:\FTP\PUB\DOS_UTIL\DOS_4DOS\COMMAND.ZIP".

As you can see, anonymous ftp users can't get to the mail, non-public downloads etc. Normally, your BBS users have unix accounts and will be able to do a ftp login and access any directory on your system. I prevented this by letting the mbuseradd command (which runs suid root), add username entries to /etc/ftpusers so that each BBS user will be denied ftp access under his own account.

Note the following directory permissions MUST BE SET!!!!::: See also the man pages for the DARPA ftpd server.

    Directory               owner group mode perms
    ----------------------- ----- ----- ---- ----------
    /SYS/usr/ftp		root  wheel 0555 dr-xr-xr-x
    /SYS/usr/ftp/bin	root  wheel 0555 dr-xr-xr-x
    /SYS/usr/ftp/bin/ls	root  bin   0111 ---x--x--x
    /SYS/usr/ftp/etc	root  root  0555 dr-xr-xr-x
    /SYS/usr/ftp/etc/passwd	root  root  0444 -r--r--r--
    /SYS/usr/ftp/etc/group	root  root  0444 -r--r--r--
    /SYS/usr/ftp/pub	mbse  bbs   0775 drwxrwxr-x
    /SYS/usr/ftp/incoming   ftp   users 0755 drwxr-xr-x

Note that all subdirectories under ../pub also must be owned by mbse and group bbs and have at least mode 775 as long as it are real bbs subdirectories. The bbs will maintain these directories automatic.

In the /SYS/usr/ftp/etc/group file, add the group bbs so that your directory listings give the proper groupname instead of a number.

Go Back