Tigase Administration Guide

Tigase Team


Table of Contents

1. Scripting support in Tigase
2. Scripting Introduction - Hello World!
Loading Script at Run Time
Executing Script
Interaction in Scripts
Automatic Scripts Loading at Startup Time
3. Tigase Scripting Version 4.4.x Update for Administrators
4. Tigase and Python
Installation
Writing Python Scripts
5. About Tigase Jabber/XMPP Server
Security
Flexibility
Easy
6. Quick Start
7. Installation Using GUI Installer
Prerequisites
Download the Installer
Run the jar File
Starting the Installation
JDK Selection
Installation Type Selection
Introduction To the Server
Choice of Base Directory
Packages selection
Basic Server Configuration
Verification of Database Connection and Performing DB Tasks
Finishing Installation
Running the Server
Installation as a Service
How to Check if the Server is Running
8. Installing Using Console Installer
Installation Using the text-mode Installer
Requirements and Important Notice
Download the Installer
Run the jar File
Installation Steps
Initial Screen
JDK Selection
Actions Selection
Installer Info
Server Info
Server Licence
Server Location Selection
Selection of Packs to be Installed
Installation
Basic Configuration
Advanced Configuration
Database Configuration
Database Checking and Preparation
Installation Complete
Running the Sever
How to Check if the Server is Running
9. Manual Installation in Console Mode
Get the Binary Package
Unpack the Package
Prepare Configuration
Prepare Database
Start the Server
Check if it is Working
10. Tigase Server Binary Updates
11. Tigase Server and Multiple Databases
12. Basic System Checks
13. Linux Settings for High Load Systems
fs.file-max
net.ipv4.ip_local_port_range
TCP_keepalive
/etc/sysctl.conf
nofile
su and init script
14. Generic Documents - Applying to All Tigase Server Versions
15. Configuration
16. Tigase XMPP Server Configuration Properties
17. init.properties
18. XML Configuration File Description
19. Old Way - Editing Configuration File Manually
Admin Accounts
Hostnames
Logs
Each Line Explained:
20. Startup File for tigase.sh - tigase.conf
21. Server Certificates
Documents Describing How To Obtain and Manage Server Certificates
22. Creating and Loading the Server Certificate in pem Files
Server Certificate
Certificate Request
Certificate From Other Providers
Self-Signed Certificate
Installing/Loading Certificate To the Tigase Server
PEM File
Tigase Server Configuration
23. Installing StartCom Certificate in Your Linux System
Gentoo Linux
24. Server Certificate Using Keytool and Keystore
Self Signed Certificate
Cerificate from CA
25. Tigase and PyMSN-t Transport
PyMSN-t - /etc/jabber/pymsn-t.xml file
PyMSN-t - run command
PyMSN-t - expected output
Tigase - etc/tigase.conf file
Tigase - run command
Tigase - expected output
26. Two or More SessionManagers
27. Database Preparation
28. Prepare the MySQL Database for the Tigase Server
Basic Setup
Configuring from MySQL command line tool
Configuring From the Linux Shell Command Line
Configuring MySQL for UTF-8 Support
Other MySQL Setting Worth Considering
29. Hashed User Passwords in Database
Shortcut
Full Route
Create a Test User Account
Test User Authentication
Password Encoding Check
Password Encoding Change
30. Prepare the Derby Database for the Tigase Server
Basic Setup
General Approach
31. Prepare the MS SQL Server Database for the Tigase Server
Basic Setup
Preparing SQL Server Instance
Configuring using SQL Server Management Studio
Using Wizards
Using Queries
Import Schema
Configuring from command line tool
Tigase configuration - init.properties
JDBC: jTDS vs MS JDBC driver
32. Prepare the PostgreSQL Database for the Tigase Server
Basic Setup
Configuring from PostgreSQL Command Line Tool
Configuring From the Linux Shell Command Line
33. Tigase Database Minor but Useful Schema Change in Version 5.1.0
34. Tigase Load Balancing
Available Implementations
Configuration Options
35. StanzaSender
How it Works
FileTask
JDBCTask
Configuration
36. Debuging Tigase
The easy way - init.properties file
The more difficult but more powerful - tigase.xml file (only applicable to versions before 5.0.0)
37. Importing User Data
38. Drupal Authentication Added
39. Tigase Services
40. Add and Manage Domain
Adding a New Domain
Adding a New User
What Else?
41. Presence Forwarding
42. Register Own XMPP Domain
43. Server Monitoring
Setting Up Remote Monitoring in the Server
What You Need.
Activation
Security
SNMP
Retrieving statistics from the server
Retrieving statistics using XMPP
Retrieving statistics using JMX
44. Tips and Tricks
45. Tigase Tip: Checking the Runtime Environment
46. Tigase Server version 5.x
47. Tigase 5.1 Database Schema Upgrade
48. Derby Database Schema Upgrade for Tigase 5.1
49. MySQL Database Schema Upgrade for Tigase 5.1
50. PostgreSQL Database Schema Upgrade for Tigase 5.1
51. Server Configuration 5.x
52. Configuration Changes in the Tigase Server 5.x
Reverting To the Old Behaviour
Default Behaviour
Storing Configuration in SQL Database
Going Further
Message Router Implementation is Configurable Too
53. Advanced Message Processing - AMP XEP-0079
54. Configuration SASL EXTERNAL
55. Server to Server Protocol Settings
Number of Concurrent Connections
Connection Throughput
Maximum Packet Waiting Time and Connection Inactivity Time
Custom Plugin Selecting s2s Connection
56. Tigase Server Version 4.x
57. MySQL Database Schema Upgrade for Tigase 4.0
58. Virtual Components for the Cluster Mode
59. External Component Configuration
60. Basic Configuration Options (External Component)
Simple Case
More External Components/Domains
More TCP/IP Ports
Outgoing Connections
Specifying Protocol
Load Balancer Plugin
61. Tigase as External Component
A Simple Case - MUC as an External Component
More Components
62. Load Balancing External Components in Cluster Mode
Load Balancing External Component
External Component and Cluster
63. Packet Filtering
Domain Based Packet Filtering
Introduction
Configuration
Administration, Rules Management
Implementation
64. Virtual Hosts in the Tigase Server
65. Specification for ad-hoc Commands Used to Manage Virtual Domains
Reloading the Domains List from the Database
Adding a New Domain or Updating Existing One
Removing a Virtual Domain From the Server
66. Configuration
67. Configuring the Tigase Server to Load a Component
68. Custom Authentication Connectors
69. Tigase Custom Auth Connector
70. LDAP Authentication Connector
71. Tigase Auth Connector
72. Tigase Server Version 3.x
73. Connecting the Tigase Server to MySQL Database
74. Integrating Tigase Server with Drupal
Connecting to Drupal Database
75. Integrating Tigase Server With LibreSource
Short Introduction.
How to set Tigase up.
Migration From old Tigase Installation to LibreSource
Data Migration
76. Windows Installation
MySQL Database Installation
77. Configuration
78. Configuration Wizards
79. Tigase Server version 2.x
80. Installation
81. MySQL Database Use
MySQL Database Preparation
Server Configuration
User Data Import
82. PostgreSQL Database Use
PostgreSQL Database Preparation
Server Configuration
83. Configuration
84. Short Configuration Guide
Admin Accounts
Hostnames
85. Command Line Admin Tools
86. Configuration Management Tool
87. Best Practices for Connecting From Web Browser to Tigase XMPP Server
BOSH
Tip #1 - BOSH in Cluster Mode Without Load Balancer
WebSocket
Tip #1 - Encrypted WebSocket Connection
Tip #2 - Encrypted WebSocket Connection - Dealing With Multiple VHosts

List of Figures

43.1. Access service discovery
43.2. Access statistics component in service discovery
43.3. Server statistics