Borf for Microsoft Windows Routing and Remote Access ---------------------------------------------------- The borfrras program applies two simple rules to RRAS dial-up modem connections: 1. Dial-up users are limited to one modem connecton. If a user has more than one concurrent modem connection, then they are disconnected. 2. Dial-up users that are connected to a modem for more than one hour are disconnected when more than 80% of all available modems are being used or are otherwise offline. In both cases, rule particulars can be changed through the "borfrras.ini" file. This borfrras program is intended to supplement the functionality provided by native-mode RRAS policies. Supported Platforms ------------------- * Microsoft Windows 2000 Server. * Microsoft Windows 2003 Server. RRAS for Microsoft Windows NT 4.0 is not supported. Note, however, that the MSDN documentation for the MPR interface describes the changes that must be made to support RRAS on NT4. Installation ------------ 1. Logon to a domain controller as an administrator. 2. Create these global security groups in your domain: * Borf Time Servers * Borf Time Lockout * Borf Duplicate Servers * Borf Duplicate Lockout 3. Copy the 'borfrras.exe' program to a folder on a domain controller. 4. Run 'borfrras --install' on the domain controller from a command prompt. 5. Check the application event log for a success message. 6. Open the services control panel. 7. Change the "Borf Monitor" startup type to from "Manual" to "Automatic". 8. Start the "Borf Monitor" service. Note that you may run 'borfrras.exe' as a console program, but the event viewer will not understand borfrras events unless it is installed as a service. If you have recently upgraded to a native-mode domain, then you may wish to run the bundled 'borfpolicy.vbs' script to change all user accounts to use RRAS policies. Configuration ------------- 1. Add servers to the "Borf Time Servers" group. The borfrras service will enforce time restrictions on RRAS servers that are in the "Borf Time Servers" group. 2. Add servers to the "Borf Duplicate Servers" group. The borfrras service will enforce duplicate logon restrictions on RRAS servers that are in the "Borf Duplicate Servers" group. 3. Create RRAS policies to deny access to users that are in the "Borf Time Lockout" or "Borf Duplicate Lockout" groups. See the 'borfrras.ini' for additional configuration information. Building --------- 1. Install Microsoft Visual C++ 6.0 on your computer. 2. Install the latest Microsoft Platform SDK from http://www.microsoft.com/msdownload/platformsdk/sdkupdate/ 3. Increase the search priority for Platform SDK components. 3a. Start MSVC6. Click "Tools -> Options" from the main menu. 3b. Click the "Directories" tab in the dialog. 3c. Choose "Executable files" from the "Show directories for" menu. Move 'C:\Program Files\Microsoft SDK\Bin\' to the first position. Move 'C:\Program Files\Microsoft SDK\Bin\WinNT' to the second position. 3d. Choose "Include files" from the "Show directories for" menu. Move 'C:\Program Files\Microsoft SDK\Include' to the first position. 3e. Choose "Library files" from the "Show directories for" menu. Move 'C:\Program Files\Microsoft SDK\Lib' to the first position. 3f. Click "OK". 4. Open the 'borfrras.dsw' workspace file. 5. Click "Build -> Build borfrras.exe" from the main menu. Special Note: The Message Table Resource ---------------------------------------- The 'borfevm.mc' file is the event viewer message resource file. This file is used to report events to the application log. If you change the 'borfevm.mc' file, then you must manually recompile the message table resource with this procedure: 1. Open a command prompt and change into the appropriate folder. 2. Run `mc borfevm.mc` at the prompt. 3. Check that the 'borfevm.rc', 'borfevm.h', and 'MSG00001.BIN' files have been updated. 4. Run `edit borfrras.rc` at the prompt. 5. Check that the last two lines of this file are: #endif // not APSTUDIO_INVOKED #include "borfevm.rc" 6. If the include statement is not there, then add it as the last line. WARNING: Never open the 'borfrras.rc' file in Microsoft Visual C++. Use the DOS editor or Notepad to open it instead. Note that if you did not allow MSVC to register its environment variables during setup, then the `mc` command will not be available at the command prompt. Coding Style ------------ This program is written in the GNU coding style. The GNU indent program will, by default, format code in a similar fashion. Variables are named according to Microsoft Hungarian Notation. All functions that are declared in this program have a "Borf" prefix. Any function that does not begin with "Borf" is externally declared. Legal ----- This software is provided without any warranty; without even the implied warranty of merchantability or fitness for a particular purpose. In no event shall the software authors or contributors be liable for any damages arising from the use of this software. This software is provided "as is". The borfrras program is subject to copyright. EOF