Skip to main content
OCLC Support

EZproxy for Windows

The instructions on this page describe how to install and update EZproxy for Windows.

 

Ability versus right

EZproxy allows you to extend access to your databases to remote users. However, your licensing agreement with database vendors may not authorize you to provide remote access. As an implementer of remote access, it is your responsibility to verify licensing agreements and only permit remote access as authorized.

Install EZproxy for Windows

EZproxy is a completely stand-alone application. It does not require nor use any existing web server that is already installed on your server.

If you are already running a web server on the system where EZproxy is running, do not attempt to install EZproxy within directories that are used by that web server.

If you are running IIS, do not install EZproxy within the inetpub directory, and do not try to configure a web server for EZproxy within IIS Manager.

Before getting started

EZproxy 6.4.4 requires users to obtain a WSKey to run the software. Before downloading EZproxy, please request your WSKey. To request and obtain a Key, please see Request a WSKey.

  1. Go to Start > Run... and use enter cmd into the Open box, click OK to open the Command prompt window.
  2. Create a directory for EZproxy and make it your current directory using a command such as:
    • c:
    • md \ezproxy
    • cd \ezproxy
  3. Download ezproxy-windows.exe into this directory.
  4. Rename ezproxy-windows.exe with the command:
    rename ezproxy-windows.exe ezproxy.exe
  5. To create the default version of most of the files mentioned above, use the command ezproxy -m. The -m stands for "missing file replacement," and this command can be used at any time to reconstruct any missing files without overwriting existing files that you have changed
  6. Follow the instructions for your Windows Server to configure the Windows Firewall to work with EZproxy. This should include adding EZproxy as an exception using the firewall control panel. For more detailed steps, see documentation on firewall access for your server model.
  7. To verify whether EZproxy can automatically detect your host name correctly, as well as to check whether firewalls may interfere with your ability to use EZproxy, issue the command:
    ezproxy -c
    This command will make your server connect to an OCLC server. Your server will provide its name and IP address, and the OCLC server will attempt to verify this information. Your server will then display various messages to let you know what changes may be required for EZproxy to function properly.

     Note: If you do not like the idea of your server connecting to an OCLC server, you may omit this step.

     Note: If your network requires the use of a standard proxy server to connect out to the Internet, this test will fail. In this case, you will need to configure EZproxy to use your outgoing proxy server using the Proxy directive, and then you can complete the network connectivity test by finishing the installation of EZproxy and using a browser installed either on the same server or within your network to log in to the EZproxy Administration page, where you can use the Test network connectivity option. This performs a more thorough network test, including offering the option to incorporate your outgoing proxy server in the test.

  8. Use a text editor to edit the file config.txt. If suggested from the previous step, manually specify your host name in this file. The file also contains suggestions for other changes.

  9. Use a text editor to edit file user.txt. To this file, add a line similar to this, replacing someuser to the username you want to use for  testing and somepass to the password you want to use for testing. In this example, admin should appear literally as shown:
    someuser:somepass:admin
    
  10. Copy your full WSKey from the OCLC Developer Network WSKeys screen (obtained by following the instructions at Request a WSKey, and paste it into your command prompt window with the key command as follows, substituting your complete key for 123456789101112:
    ezproxy -k 123456789101112

     Note: In the Windows Command prompt, the keyboard shortcut ctrl-V will not paste copied text into the command line. You must right-click to open a list of options and click paste to enter the copied text.

  11. Start the server with the command: ezproxy.

  12. Using your web browser, connect to your server on port 2048. If your EZproxy server was named ezproxy.yourlib.org, you would use this URL: http://ezproxy.yourlib.org:2048/admin

  13. Enter the username and password that you created when you edited the user.txt file. This should bring you to the main server administration page. If, instead of the menu page, you end up at a page indicating that EZproxy cookie was blocked, see EZproxy Cookie Blocked for information on why this happened and how to address it.

 Note: The options presented and how effectively they work will depend on how well you customized config.txt. As you make additional changes to config.txt, you will need to stop and restart EZproxy to make the changes take effect.

After you have completed your installation and are able to log in to the administration page, you can find the database stanzas necessary to configure resources on the Database stanzas page and information about different authentication methods on the Authenticate users page.

Installing as a Windows service

The configuration steps required to install EZproxy as a service so it starts up when the system is booted are available at Configure EZproxy to run as a Windows service.

Windows Error 1067

When installing EZproxy as a service under Windows, you may receive error 1067 when you try to start the service. This is a general error message that indicates that EZproxy failed to start successfully.

When this occurs, try the following steps.

  1. Check the messages.txt file to see if any errors were recorded during startup. If so, try correcting the error then restarting the service. One particularly common error is for EZproxy to no longer be able to detect its name correctly, which is reported with an error like this:
      Host name "ezproxy" does not include domain, please manually specify name in config.txt
    

    If you see the name error, you need to manually specify the complete name of the EZproxy server. See Name for information how to do this.

    If EZproxy still will not start, continue on to step 2.

  2. Open a command prompt window, change your current directory to the EZproxy directory, and then issue the command:
       ezproxy -sd
    

    EZproxy will either start, or it will display an error message. If it displays an error message, this problem must be corrected before it will be possible to run   EZproxy. Once this command can start EZproxy, try restarting the EZproxy service. If it starts, you are done. If not, proceed to step 3.

  3. If EZproxy starts successfully in step 2, then the service probably does not have access to the EZproxy directory. If you are running EZproxy as a service, you must give the System group full control over the directory where EZproxy is installed (or if you use the Services control panel to change the username EZproxy runs under, you must give that username full control over the directory where EZproxy is installed).

System requirements

EZproxy runs on all versions of Windows 2000, Windows 2003, Windows 2008, Windows 2012, Windows 2016, Windows XP / XP Professional, Windows Vista, Windows 7, Windows 8, and Windows 10.

The minimum recommended configuration for an EZproxy for Windows server:

  • Pentium II 400 with 256 MB of RAM
  • 10 MB of disk space is required for installation
  • Additional disk space is required to accommodate user authentication files and server log files

Additional system considerations

This program can be executed from a non-privileged account, so please consider running it from a non-administrative account.

If your site employs a proxy server for all outgoing conditions to the Internet, you will need to enter the host and port information for this proxy server into the config.txt file using the Proxy directive.

If your site is protected by a firewall, external users may be unable to connect to EZproxy unless your firewall administrator allows incoming traffic to ports 2048 and above.

User authentication

EZproxy provides a variety of methods for authenticating users. For more information on these options, see Authenticate users.

EZproxy files

EZproxy uses a number of files that are automatically created during the installation process. For a list of those files and their purpose, see EZproxy system elements.

When installing EZproxy for Linux, you will download ezproxy-windows.exe. This binary file is the download version of the EZproxy program for Linux. It must be renamed to ezproxy.

Technical details

Additional technical information can be found in EZproxy technical details.

Additional commands

The following are additional commands that can be used with EZproxy for Windows.

Resetting all files

If you want to reset all of the files to their original distributed contents, you can use the command:

ezproxy -r 

If you want to restore just one or two of the original files, rename or delete the existing file that you want replaced, then issue the command:

ezproxy -m 

Update to EZproxy 6.4.4 GA for Windows

These instructions cover how to update existing installations to EZproxy 6.4.4. These instructions are valid to update from any version of EZproxy to this release. This process will preserve all existing configuration files.

Before getting started

EZproxy 6.4.4 requires users to obtain a WSKey to run the software, as the license keys from previous versions of EZproxy will not work in EZproxy 6.4.4. Before downloading EZproxy, please request your WSKey. To request and obtain a Key, please see Request a WSKey.

If you have already obtained a WSKey for any EZproxy V6.x, you can use this same WSKey to upgrade to the newest version.

  1. Download ezproxy-windows.exe into your EZproxy directory.
  2. Open a Command prompt.
    1. Go to Start > Run... and type cmd in the Open box.
    2. Click OK.
  3. Change your current directory to the directory where EZproxy is installed with commands such as:
    • c:
    • cd\ezproxy
  4. Stop EZproxy.
    • If EZproxy is currently running on your server from a command prompt, press Ctrl+C to stop it.
    • If EZproxy is currently running as a service, use the Administrator command prompt and stop it with the command:
      exproxy-sr
       
    You will see messages confirming that EZproxy has been stopped and is no longer installed as a service.
  5. Rename your existing copy of ezproxy.exe to another name such as ezproxy-yyyymmdd.exe, replacing yyyymmdd with the current year, month and day.
    rename ezproxy-windows.exe 20180607.exe
    
  6. Rename ezproxy-windows.exe to ezproxy.exe with the command:
    rename ezproxy-windows.exe ezproxy.exe
    
  7. During this step, if you are updating from EZproxy 5.0 or earlier, you will be asked to allow ezproxy.cfg to be renamed to config.txt and to allow ezproxy.usr to be renamed to user.txt.
    Create any new files required for the update release with the command:
    ezproxy -m
    
  8. Optional. If you are updating from EZproxy 5.0 or earlier, you can choose to rename your existing ezproxy.msg to messages.txt, or you can leave the existing file alone and EZproxy will create a new messages.txt file.
    If you would like to rename the existing file, issue the command
    rename ezproxy.msg messages.txt
    
  9. If you are updating from EZproxy V5.7.44 or earlier, copy your new, full WSKey from the OCLC Developer Network WSKeys screen (obtained by following the instructions at How to Request a WSKey), and paste it into your command prompt window with the key command as follows, substituting your complete key for 123456789101112. If you are updating from EZproxy V6.0.8 or newer, you will not need to re-enter your WSKey to update:

    ezproxy -k 123456789101112
    

     Note: In the Windows Command Prompt, the keyboard shortcut Control-V will not paste copied text into the command line. You must right-click to open a list of options and click paste to enter the copied text.

  10. Start EZproxy:

    1. If you run EZproxy directly from the command line, start it with the command:

      ezproxy 
      
    2. If you run EZproxy as a service, start it with the command:
      ezproxy -si 
      

      This command will cause EZproxy to automatically start when you reboot your server. See Configure EZproxy to run as a Windows Service for more information.
  • Was this article helpful?