en Netherlands

FleXbouncer Manual

FleXBouncer 3.0 Manual - Manual version 1.0 (last update: 10 November 2007)

Some things you need to know about FleXbouncer, its support and this documentation as such:
- We do not provide support for issues or problems during the installation of MySQL, Apache, PHP, *NIX or any other program that is not shipped with FleXbouncer.
- We are providing support for the installation of FleXbouncer. Please send us an E-Mail if you have any questions. We officially do not provide support for the free versions of FleXbouncer, but normally we will still help you.
- We only provide limited support for the web interface, consider it an \'extra\' that comes with FleXbouncer.
- Before using FleXbouncer, you must accept the license included. If you do not agree with this license agreement, do not install FleXbouncer.

Extract the files
First, download the FleXbouncer package to your computer and extract all files. e.g.:
wget http://location-of-flexbouncer-website-download-location
tar jxf FleXbouncer.tar.bz2
cd flexbouncer

Setting up your MySQL database
Make sure you create a new database in your MySQL server. Then, use the file docs/flexbouncer_layout.sql to import the table structure of FleXbouncer into your database. The easiest way to do this is with PHPMyAdmin. We do not give support on this part is of the installation! Next, create an useraccount in the MySQL user tables with a secure password, and give the user complete access to the FleXbouncer database.
Your database is ready now, continue with the installation of FleXbouncer itself...

Installing FleXbouncer
FleXbouncer comes as a pre-compiled binary using the latest available stable libraries. Make sure you are in the directory of the extracted FleXbouncer package.

FleXbouncer has various startup options, you can get a list of them by appending --help to the FleXbouncer command. In this guide, we will not use them to start FleXbouncer but we will use the script "nl/Producten/FleXbouncer_script.sh" instead. Before starting FleXbouncer, edit the file "nl/Producten/FleXbouncer_script.sh". (For example, type "nano flexbouncer_script.sh" in the FleXbouncer directory). On top, change the database configuration according to what suits your needs. Save and exit the file (in our case press CTRL+X and then Y).

Now you are ready to start FleXbouncer. We recommend starting FleXbouncer in foreground prior to starting it up in daemon mode, to check that the supplied MySQL access data is correct. To do so, use the following command: "./flexbouncer_script.sh foreground"

FleXbouncer will now run and you will see some messages telling you how many users are found in the database. If you experience any errors that indicate malconfiguration please correct these errors. If everything works OK, you can safely start FleXbouncer in daemon mode. Hit CTRL+C to terminate the currently running instance of FleXbouncer, then enter the following command:

"./flexbouncer_script.sh start"

FleXbouncer will now start in daemon mode, you can check whether it started successfully by entering "ps aux | grep -i FleXbouncer". Note: For security reasons we recommend not running FleXbouncer as root. If you want to know all startup options of the script, please type:

"./flexbouncer_script.sh" (without any command afterwards). A list with startup options is displayed.

Check for new user in database, if user connects to FleXbouncer and user is not know by FleXbouncer?
We added a check for new users if the user is not in program memory and is connecting to the bouncer. You can now lower the SQLUPDATE frequency of the program to for example 360 minutes. By doing so you will have less peaks of CPU/Database usage on the SQLupdate of FleXbouncer. (SQLupdate is the proces where FleXbouncer downloads new database data into the program memory)
Warning: The disadvantage is that
1) Deleted users will be deleted after max. 360 minutes.
2) Because if this, you can\'t track the number of users who are using a virtualhost in the database because removed users from database might still be connected to their IRC network. If you are trying to use Quakenet with a maximum of 5 users per connection, you could get >5, and get everybody on the virtualhost glined. This new addon is therefore disabled by default.
If you want to use it, please specify it as option in the startscript (see above). Default is disabled (new users have to wait untill the next SQLupdate, which runs every 5 minutes by default).

Installing oidentd:
FleXbouncer requires oidentd in order to support a correct ident on some IRC networks. Ident is not a requirement which is necessairy to successfully connect to IRC, however we warmly recommend using it. If you have a trust (on QuakeNet e.g.), a working identd is required. Installing oidentd is not really hard. The homepage for oidentd (where you also can get support for it) is: http://dev.ojnk.net/. There are probably already binary versions available for your distribution - feel free to use those. For FleXbouncer, the following config file (oidentd.conf) will work the best:

default {
default {
allow spoof
allow spoof_all
allow spoof_privport
allow random
allow random_numeric
allow numeric
allow hide

In order to start oidentd, use the following command: /usr/sbin/oidentd -u nobody -g nogroup (if required, change the path). Please make sure you are not running any other ident daemons on your system. Hint: oidentd needs to be started as root. If you want to run FleXbouncer on some shell hosting (i.e. you have no root access), please ask your provider to install and run oidentd. oidentd is not part of FleXbouncer and is not directly supported by us.

Installing the web interface
You did it! FleXbouncer is ready. In order to start it you need to create some users in the database. In the end of this manual we will tell you what the purpose of all tables is, and what the program uses them for. If you want to start quickly we recommend installing our Webinterface.
We use GameHostPanel as interface. Please download it from this website and install it using it\'s documentation. You do not have to install any SSH2 plugins or the client package, if you are not going to use GameHostPanel for gameservers. Make sure you install GHP on the same database as FleXbouncer!
After the installation is complete, go to the "Global Settings" page as administrator. Change the "nl/Producten/FleXbouncer_plugin" option to 1.

In the menu "My account > Manage Bouncers" you can add or delete your bouncers, after you have created a bouncer package (under manage users > admins). (Make sure you fill in an activation date in the package!) A detailled description of the webinterface is not available yet, but you can of course view the sourcecode of the bouncer pages which should not be very hard to understand.
he global functions of the web interface are:
- User accounts can be created
- Packages can be added (you can customize this, for example with gamehosting packages).
- Invoices can be created for a user
- You can manually check the invoices by running the "check payments" script (see menu) or add it to your crontab (after clicking check payments you will find a short guide how to do this.). There will be checked if people paid in time, send then a remember-message to pay in time if payment should be done in a few days and it sends notices to the info@domain.com e-mail address (which you have set on the "settings" page).
- You can limit the max. users on one virtual host (max 5 users for example, to not get glined on some networks).
- Users can create bouncers themselves in their packages. Then can only delete X times a bouncer before contacting an admin. We recommend to set this to for example the half of the bouncer accounts, to make sure users won\'t change their ident frequenlty. See the "manage bouncers" page for more information. (Of course this option can be disabled too).
- The panel layout can be easily customized by changing the index.php file. Just open in, to see what lines you need in your own script (a few "include" lines for our PHP script and menu displaying)
- The panel supports multiple languages. In the config.inc.php you can set the default language (en). If the web interface detects another language then "en" it will look if the language page is available. If so, it will display that language, else it will fall back to the default language.

Working of FleXbouncer
The database checks
FleXbouncer checks for updates in the database every 5 minutes. If you want to let it update directly from the database, you can issue (if you are admin, so "flagged" is set to "1" in the bouncer_users table) the command "/SQLUPDATE" (also see /bhelp for available commands). Almost every change you make to your account inside the program is directly saved in the database. That way, old database settings won\'t put back. Here is described what FleXbouncer will do after a database change and after SQLUPDATE has been run (automatically or by admin request):

- id: Nothing will happen. id is only used by our PHP web interface.
- owner: Nothing will happen. owner is only used by our PHP web interface.
- username: Old username gets disconnected from the bouncer, new user is added to memory. New user will connect to IRC network if a server has been set. Note: Please remove all channels from the old username also from the database, stored in the bouncer_channels table, and remove all logs too from the bouncer_log database!
- nick: Nickname won\'t change. Only on new server-connect, this name will be used.
- realname: User will be notified of the change (only if connected?). User should use /bquit /bconnect to reconnect to the IRC network again to get the new "realname".
- server_host, server_port: User should use /bquit, /bconnect to apply changes. User will be notified about change in database.
- password: Next time the user logs in, he should supply the new password.
- flagged: User will become administrator. (Can issue some commands as will be listed in /bhelp like /SQLUPDATE)
- banned: Bouncer will act like the user is not in database. So on next sqlpulse, user will be disconnected.
- vhost: User should use /bquit, /bconnect to apply changes. User will be notified about change in database.
Note that you have to set a numeric ID here. Use the table "virtualhosts" to set that ID there again, and fill in a virtual-host there!
- awaynick: When user disconnects from bouncer, this new nick will be used (after sqlupdate).
- awaymessage: When user disconnects from bouncer, this new awaymessage will be used (after sqlupdate).
Some notes can be found in the documentation that comes with FleXbouncer.

  Create account
20 April, 2009
GameHostPanel 3.0.2 Release!
You can download the (more..)

16 February, 2009
GameHostPanel 3.0.1 Released!
You can download the (more..)

29 January, 2009
Freelancers gezocht!
Wij zijn opzoek naar (more..)

14 September, 2008
GameHostPanel 3.0.0 Released!
You can download the (more..)