Roadshow is a commercial TCP/IP stack, based on AmiTCP, claiming some fancy transfer speeds. Unfortunately, the author explicitly states that it was intended to get rid of the ixemul.library
, which is the Linux compatibility library, which makes most of software available for the Amiga totally unusable. The author provides equivalents, but any software that has already been written to use the POSIX emulation layer will not run. As such, Roadshow is only really recommended for the casual, perhaps, end-user in case the Amiga scene still has that kind of users. It is strange why the author chose this path since most Amiga users really want the bugs fixed for their already existing software and it is uncertain, albeit improbable that all other software will receive updates to support Roadshow.
The solution presented here is a blend between AmiTCP and Roadshow where AmiTCP is still used in order to provide support for programs that require the ixemul.library
.
This guide assumes that:
MediatorFast
will be assumed to be the interface.SYS:System/ProFTPd
.There are multiple files that have to be changed given the documentation provided with Roadshow. Configuring ProFTPd involves adding an user, a group, setting up the firewall and configuring the ProFTPd as an inetd daemon.
Roadshow must be configured exactly the same way that AmiTCP was to provide the same configuration to both Roadshow and AmiTCP. The following sections only describe setting up Roadshow but AmiTCP must be setup as well!
To add an user and group, edit DEVS:Internet/users
and add a line:
NAME=ftp UID=1000 GID=1000 PASSWORD=ftp DIR=RAM:
where:
ftp
is the username and password that ProFTPd will use,UID
and GID
are the user, respectively group identifier,DIR=RAM:
sets the home directory for the ftp
user
Next, a group matching the GID
of the ftp
user must be created by editing DEVS:Internet/groups
:
NAME=ftp ID=1000 USERS=ftp
where:
ftp
is the group name,ID=1000
should match the GID
for the ftp
user in DEVS:Internet/users
,USERS=ftp
assigns the user ftp
to the ftp
group
Assuming that ProFTPd has been unpacked to SYS:System/ProFTPd
, the file DEVS:Internet/servers
has to be edited to declare a new FTP service using ProFTPd. Edit DEVS:Internet/servers
and add the line:
ftp stream SYS:System/ProFTPd/proftpd -n -c SYS:System/ProFTPd/basic.conf
The line declares an ftp inet service that will fork SYS:System/ProFTPd/proftpd
as an inet server (-n
) and using the configuration file SYS:System/ProFTPd/basic.conf
whenever a client connects to the FTP port 21.
The file SYS:System/ProFTPd/basic.conf
has to then be changed to match the Roadshow setup. First, set the server type to inetd
:
ServerType inetd
Then configure ProFTPd to use the created user and group:
User ftp Group ftp
Start ixprefs
and change the networking support to AmiTCP
. At this point, ProFTPd will use the AmiTCP configuration, notably the user
and passwd
files from AmiTCP:db/
will be queried whenever the FTP server starts.
Roadshow claims that the file DEVS:Internet/servers
is monitored and reloaded whenever a change is made. However, to make sure that everything went well, issue in a CLI:
NetShutdown
to stop Roadshow, followed by:
AddNetInterface MediatorFast
where MediatorFast
is the name of the configured Roadshow interface, in order to start Roadshow again.
Using an FTP client, attempt to connect to the Amiga and login using the user and password you specified in DEVS:Internet/users
.
The first step to check is that the authentication with the user and password succeeds. If this step succeeds, then the next step is to see whether a directory listing works. If a directory listing fails, please ensure that the firewall on the connecting machine is configured to allow passive FTP. Windows by default blocks passive FTP and requires the inbound ports 21
and all ports above 1023
(exclusive) to be open.
This step is not necessary unless you use the PPPoE network interface since Roadshow by default only filters traffic for the PPPoE interface. Roadshow uses a BSD-like firewall featuring ipf
to configure firewall rules and ipfnat
to configure NAT rules.
Configuring the firewall involves editing S:IPF/ipf.rules
- simply change the string PPPoE
in that file to whatever interface name you use (in this guide, MediatorFast
) and add a new line to allow incoming FTP connections at the end of the file:
pass in on MediatorFast proto tcp from any to ftp port = ftp
where:
MediatorFast
is the interface configured to work with RoadshowThe effect of this line is that it will allow incoming connections from any network to the FTP port. If you would like the firewall to be more restrictive and only allow incoming connections from the local network, then this line would be changed to:
pass in on MediatorFast proto tcp from 192.168.1.0/24 to ftp port = ftp
where:
192.168.1.0/24
is the network to allow connections from.Although, the latter should not be useful in case the Amiga does not have multiple network interfaces or traffic is not natted to the Amiga.