Tigase Administration Guide

Tigase Team


Table of Contents

1. Tigase Release Notes
Tigase v7.1.4
New Minor Features & Behavior Changes
Fixes
Previous Releases
Tigase v7.1.3
Tigase v7.1.2
Tigase v7.1.1
Tigase v7.1.0
2. About Tigase XMPP Server
Robust and reliable
Security
Flexibility
Extensibility
Ease of Use
3. Quick Start Guide
Minimum Requirements
Contents
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
Installation Using Web Installer
Download and Extract
Start the Server
Verify Tigase is Running
Connect to the Web Installer
Step Through the Installation Process
Restart the Server
Windows Instructions for using Web Installer
Installing Using Console Installer
Installation Using the text-mode Installer
Download the Installer
Run the jar File
Installation Steps
Manual Installation in Console Mode
Get the Binary Package
Unpack the Package
Prepare Configuration
Prepare Database
Start the Server
Check if it is Working
Windows Installation
MySQL Database Installation
Tigase Server Network Instructions
A Records
SRV Records
Checking setup
Ports description
Tigase Script Selection
Configuration: For All Linux Distributions
Running Tigase as a system service
Shutting Down Tigase
Shutdown statistics
Shutdown StackTrace Dump
4. Tigase Server Binary Updates
5. Configuration
Tigase XMPP Server init.properties Configuration
Startup File for tigase.sh - tigase.conf
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
Configuration Storage Options in Tigase
Default Behavior
Storing Configuration in SQL Database
Reverting To the Old Behavior
Going Further
Message Router Implementation is Configurable Too
JVM settings and recommendations
Heap Sizing
GC settings
What to use with Machine x, y, z?
Additional resources
Session Manager
Mobile Optimizations
Thread Pool Counts
6. Security
XEP-0191 Support
Server Certificates
Creating and Loading the Server Certificate in pem Files
Installing LetsEncrypt Certificates in Your Linux System
Custom Authentication Connectors
Tigase Auth Connector
Tigase Custom Auth Connector
Drupal Authentication
LDAP Authentication Connector
Configuration of SASL EXTERNAL
Packet Filtering
Domain Based Packet Filtering
Access Control Lists in Tigase
7. Database Management
Recommended database versions
Database Preparation
dbSchemaLoader Utility
Prepare the MySQL Database for the Tigase Server
Prepare the Derby Database for the Tigase Server
Prepare the MS SQL Server Database for the Tigase Server
Prepare the PostgreSQL Database for the Tigase Server
Preparing Tigase for MongoDB
Hashed User Passwords in Database
Shortcut
Full Route
Tigase Server and Multiple Databases
Importing User Data
Importing Existing Data
Connecting the Tigase Server to MySQL Database
Integrating Tigase Server with Drupal
Integrating Tigase Server With LibreSource
MySQL Database Use
PostgreSQL Database Use
Schema Updates
Tigase Server Schema v7.1 Updates
Tigase 5.1 Database Schema Upgrade
Derby Database Schema Upgrade for Tigase 5.1
MySQL Database Schema Upgrade for Tigase 5.1
PostgreSQL Database Schema Upgrade for Tigase 5.1
Tigase Database Minor but Useful Schema Change in Version 5.1.0
Tigase Server Version 4.x
MySQL Database Schema Upgrade for Tigase 4.0
8. Configuring the Tigase Server to Load a Component
StanzaSender
How it Works
Configuration
Tigase HTTP API
Requirements
Setup & Configuration
Use of the HTTP API
Browser interface walk-through
HTTP API Scripting
REST API & HTTP Guide
Admin UI Guide
Tigase Web Client
Message Archiving Component
Installation
Configuration
Usage
Manual Activation
Automatic Activation of MUC messages
Searching for Messages
Message Tagging Support
Purging Information from Message Archive
Advanced Message Processing - AMP XEP-0079
First of all: plugins:
Secondly: component:
Optional parameters:
PubSub Component
Configuration
Pubsub naming
Configure Roster Maxmimum size
AdHoc Commands
PubSub Node Presence Protocol
Store Full XML of Last Presence
Offline Message Sink
PubSub Schema Changes
Server Monitoring
Setting Up Remote Monitoring in the Server
Retrieving statistics from the server
Statistics description
Eventbus
Setup
How it Works
Available Tasks
Configuration
Getting the Message
Mailer Extension
Server to Server Protocol Settings
Number of Concurrent Connections
Connection Throughput
Maximum Packet Waiting Time and Connection Inactivity Time
Custom Plugin: Selecting s2s Connection
Tigase MUC Component
Configuration Options
Tigase Load Balancing
Available Implementations
Configuration Options
Auxiliary setup options
External Component Configuration
Basic Configuration Options (External Component)
Tigase as an External Component
Load Balancing External Components in Cluster Mode
Client to Server Communication
Configuration
Resumption timeout
Packet Redelivery
Socks 5 Component
Installation
Database Preparation
Configuration
Database usage for specific settings
Example init.properties block
Virtual Hosts in Tigase Server
Specification for ad-hoc Commands Used to Manage Virtual Domains
Virtual Components for the Cluster Mode
Persisting component’s items configuration
Persisting items using web AdminUI
Persisting items using XMPP Client
9. Using Tigase - Applies to All Tigase Server Versions
Tigase Log Guide
install.log
derby.log
config-dump.properties
tigase.log.#
statistics.log.#
tigase.pid
tigase-console.log
Log File Location
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)
Basic System Checks
Add and Manage Domains
Adding a New Domain
Adding a New User
SSL Certificate Management
Presence Forwarding
Register Your Own XMPP Domain
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
Two or More SessionManagers
Watchdog
Setup
Watchdog Configuration
Logic
Testing
Tips and Tricks
Tigase Tip: Checking the Runtime Environment
Command Line Admin Tools
Configuration Management Tool
Scripting support in Tigase
Scripting Introduction - Hello World!
Tigase Scripting Version 4.4.x Update for Administrators
Tigase and Python
Configuration Wizards
Offline Messages
Offline Message Limits
Storing offline messages without body content
Disabling Offline Messages
Licensing
Registering for a License
What happens if I do not use a license file or it is expired?
Demo mode
Unauthorized use
Manual mode
Tigase Advanced Options
Enabling Support for storing offline messages without body content
Enabling Empty Nicknames
Account Registration Limits
Enable Silent Ignore on Packets Delivered to Unavailable Resources
Mechanism to count errors within Tigase
Tigase Clustering
Configuration
Old configuration method
Checking Cluster Connections
Anonymous Users & Authentication
Anonymous Authentication
Anonymous User Features

List of Tables

3.1. init.d chart
7.1. tig_users
7.2. tig_nodes
7.3. msg_history collection