System Integration & Management Tools
The account management and mail alias system of the IBSRack systems can now be controlled with three command line tools. This will be useful for those of you who would like to integrate various client and account management features into your own “back end” client management systemsand scripts or third party billing and client management programs such as ModernBill.
The following is a description of the tools currently available on the IBSRack and their location and operation.
The name and server path location of these tools are as follows:
/usr/share/contrib/tools/sitemanager
/usr/share/contrib/tools/usermanager
/usr/share/contrib/tools/makevirtmaps
The tools can be used to manage web sites, mail users and mail aliases.
> sitemanager
The sitemanager is a command line tool to add, modify and delete web sites on your server.
usage: sitemanager [-u adminusername -p adminpassword] [-s server] command
Available sitemanager commands:
listsites | | List all web sites |
createsite domain user password [softquota] [hardquota] | | Create new web site |
deletesite domain | | Delete web site |
fpinstall domain fpuser fppassword | | Install FrontPage Ext. |
fpuninstall domain | | Uninstall FP Ext. |
enablephp domain | | Enable PHP |
disablephp domain | | Disable PHP |
enablecgi domain | | Enable CGI (.cgi/.pl) |
disablecgi domain | | Disable CGI |
enablecgibin domain | | Enable cgi-bin dir |
disablecgibin domain | | Disable cgi-bin |
enablelogs domain | | Enable serverlogs |
disablelogs domain | | Disable serverlogs |
suspend domain | | Suspend web site |
unsuspend domain | | Unsuspend web site |
enableusermanager domain [numberofusers] [auto] | | Enable User Manager |
disableusermanager domain | | Disable User Manager |
addmysqldb domain mysqlpassword | | Add mySQL database |
deletemysqldb domain | | Delete mySQL database |
adddns domain ipaddress | | Add domain to DNS |
deletedns domain | | Delete from DNS |
(“domain” is the name of the web site on which the action is being performed)
Examples:
sitemanager createsite test.com peter newpassword
will create a new website “test.com” with the usernamen “peter” and the password “newpassword”
sitemanager createsite test.com peter newpassword 20 25
will create a new website “test.com” with the usernamen “peter” and the password “newpassword”
and a softquota of 20 MB and a hardquota of 25 MB
sitemanager createsite -u admin -p severpass -s myserver.com test.com peter 123456
will create the website on the remote server “myserver.com”. “admin” is the administrator of
“myserver.com”, and “severpass” is the password of the user “admin”.
sitemanager enablephp test.com
will enable PHP (mpd_php4) for the site “test.com”
sitemanager fpinstall test.com fpuser fppassword
will install the Frontpage Extensions for the site “test.com”. The FrontPage username is
“fpuser”. The FrontPage password is “fppassword”.
sitemanager addmysqldb test.com mysqlpassword
will install the mySQL database for the site “test.com”. The mySQL username and database name
matches the username of the account “test.com”. The FrontPage password is “mysqlpassword”.
> usermanager
The usermanager is a command line tool to add and delete mail only users.
usage:
usermanager list
List all mail users
usermanager list domain
List all mail users of a site (domain)
usermanager add domain password
Adds a mail user with the password ‘password’ to the site ‘domain’
The return value is the automatically generated username.
usermanager add domain password username
Adds the mail user ‘username’ with the password ‘password’ to the site
‘domain’
usermanager changepassword username newpassword
Changes the password of the user ‘username’ to ‘newpassword’
usermanager delete username
Deletes the mail user ‘username’
> makevirtmaps – domain based email handling
Email forwards (aliases) are handled differently.
In the /etc/admin/vmaps directory there is a domain specific file for each
site hosted on your server.
This is a /etc/admin/vmaps/domain.com example file:
——————————————————————————–
webmaster@domain.com peter
domain.com peter@attbi.com
——————————————————————————–
Each line line has two space seperated values
The first is the virtual address (alias), the second part is the target.
The target must be a fully qualified internal or external mail box.
If the first part of the last line is just the domainname, the second part
will be the catch-all target address.
These files allow you to easily make changes in a per domain context.
After you have changed one of the files in /etc/admin/vmaps you have to call the makevirtmaps to rebuild the sendmail databases.
Script integration
The command line tools can be used by any user in the system wheel group. On your server only the admin user and “root” are (and should be) in the system wheel group. This allows you to use the tools in any script from your primary website. In addition, the “sitemanager” tool can access remote *Rack systems through the username password and server options.
Via perl you can call the tool with commands like
$result=`/usr/share/contrib/tools/makevirtmaps`;
or
$result=`/usr/share/contrib/tools/usermanager list`;
makevirtmaps does not return any result on success. usermanager will return the added usernames or error messages starting with “error:”.
E.g.
$result=`/usr/share/contrib/tools/usermanager add domain.com password`;
will return the name of the automatically generated username.
$result=`/usr/share/contrib/tools/usermanager list`;
will show result in a list of all mail only users.