Note: This FAQ is somewhat out of date - sorry, we're busy

There has been a lot of ISM development lately (10/2004 - 8/2005), and the documentation in the distribution is being kept up to date.
The best way to get ISM information is to download the distribution, read all the README files, and send any questions to ism@grpl.org

The distribution is a gzipped tar ball, download it to a Unix or Linux machine and do 'tar -xzf ISM-4.0.tar.gz' to extract the files.


How does it work?
What does the proxy server do?
Can I monitor how much time is left on each station?
What hardware do I need?
What software do I need?
What kind of client workstation can I use?
Do I need more IP addresses?
Do I need to change anything on my router or with my ISP?
How many workstations can the machine support?
Can I change the duration of a session or the number of sessions per day?
How do I generate temporary numbers? / Do I have to allow temporary numbers?
How do I validate my patrons?
Getting Help

Other uses



How does it work? (the short version)
The ISM server sits between the end user workstations and the router providing Internet access. Firewall "rules" are added and removed to start and stop traffic to the workstation. A private IP network is utilized to ensure that stations cannot bypass the ISM for direct access to the Internet, while providing plenty of available IP addresses for workstations. The user must simply enter a number that can be validated, and the station's time begins. Since the access is controlled at the ISM server, even rebooting the workstation will not interrupt the active session.

What does the Proxy server do?
The proxy server informs the user to see how much time is left in the active session, as each new page is loaded.
This is the memory intensive portion of the process, because each page must be read, the time calculated, and the information added to each page.
Winter 2004: A new method for simply gatewaying, has eliminated the need for a proxy server. This reduces the overall processing needs of the server by several times. Machines running Windows XP can utilize a client daemon that will display pop-up messages to users noting time remaining.



Can I monitor how much time is left on each station?
Yes, report screens can be generated that show active sessions and time remaining. This information can also be logged to a database, to allow statistical reporting, and information logging.



What hardware do I need?
An Intel based server running FreeBSD (other UNIX variants may be used, but code modifications may be required).
See,
FreeBSD supported hardware for more information about specific hardware.

Recommended minimums: Pentium class 400+, 128MB RAM (depends on number of stations), 10/100 Ethernet card, (hard drive size will depend on logging desired, only a few hundred MB is actually required, but 2-4GB is comfortable)



What kind of client workstation can I use?
Any workstation with a TCP/IP stack. This includes Windows, MAC, Linux, etc.



What software do I need?
FreeBSD recommended (other UNIX variants may be used, but code modifications may be required)
MySQL database
Apache Web Server with mod_perl
Perl 5.x
Numerous Perl modules: e.g. CGI, LWP, DBI, DBD-mysql, libnet    All available from CPAN



Do I need more IP addresses?
The ISM server will use 1 of the IP addresses assigned by your service provider, and one private IP address. All workstations utilizing it as a gateway will have a private IP address.



Do I need to change anything on my router or with my ISP?
No, you will use 1 IP address assigned by your service provider, but all configurations will take place at the ISM server, and at the user workstations.



How many workstations can the machine support?
This depends on the hardware of the ISM. Serious degradation in performance is possible if the machine is overloaded. Memory is more important than processor speed. A rule of thumb would be 2MB of memory per ISM client.
GRPL's ISM server has 256 MB of RAM and a Pentium class cpu. It controls Internet access for 140 clients spread over 8 locations, proxying an average of 1.5GB of traffric per day. It has been up continuously for 460 days (on 9/7/04).



Can I change the duration of a session or the number of sessions per day?
Yes, the configuration file provides easy access to a host of configuration parameters.



How do I generate temporary numbers? / Do I have to generate temporary numbers?
Scripts are provided to generate temporary ID numbers, and code within the scripts can enable or disable their use. A custom algorithim allows each installation to utilize a different "key" variable, so no two locations have the same generation scheme.



How do I validate my patrons?
By default, ISM looks for user names and card numbers in the user table of the ism database. Typically, your system administrator would export this information from your catalog system. Some utilities to do this automatically for certain catalog systems are available. Custom authentication methods for your catalog can easily be added.

The only other authentication methods provided with the default installation are numeric checksums for:

  • Codeabar barcodes
  • Custom temporary (randomly generated) numbers

  • Getting Help
    Send questions to
    ism@grpl.org


    Other Uses

    *Restricting types of Internet traffic
    Because the system is a fully functioning firewall, certain ports can be disabled to restrict types of access. (e.g. telnet, ftp, IRC, chat, etc.)

    *Restricting workstations to only certain sites
    The firewall can be used to disable all traffic, except to those sites you allow. (e.g. Library catalog, Intranet, pay-for-service page, etc.)


    * Both of these services are available concurrently with Internet station management.