ILIAS 8 Install Tutorial for Ubuntu 22.04
Chatserver Install using port 443
Prepare Apache
a2enmod proxy_http proxy_http2 proxy proxy_balancer lbmethod_byrequests proxy_wstunnelsystemctl restart apache2
Subdomain creation
- Create a subdomain chat.bbs-ilias.de and link it with the ip of bbs-ilias.de (your server)
cd /etc/apache2/sites-availablenano chat.bbs-ilias.conf- Paste this in:
1 | <VirtualHost chat.bbs-ilias.de:80> |
- Edit line 1
a2ensite chat.bbs-ilias.confsystemctl restart apache2- Optain a SSL certificate for this domain:
certbot- Please dot NOT choose option 2 - redirect
Adding an ILIAS-Client - Creation of client.cfg and server.cfg
- Client means here the name of the ILIAS instance
- Create a chatobjekt in ILIAS-Repository:
Repository->Repository Home->Add new Item->Chatroom->Chat1 ILIAS->Administration->System Settings and Maintenance ->Repository and Trash->Chat1- Settings
- Enable Chat: Check
- Choose all options you want
- Name: info (what ever you want)
- Press "Generate Keys"
- Klick Save
- Settings
ls /opt/iliasdata/info/chatroom- There should be to files now:
server.cfgclient.cfg
Configuration of server.cfg
- As described here update the JSON file and run the update script:
nano /opt/scripts/clients/clientname1.json
- Important: Leave values for cert, key and dhparam empty
- Example content:
1 | "chatroom" : { |
- It is not neccessary that the files in the lines 5-7 are realy there. Its just a dummy information. The HTTPS comes via Apache and Certbot. We redirect 127.0.0.1 to the Subdomain chat.bbs-ilias.de
- Update the ILIAS database:
cd /var/www/html/iliassudo -u www-data php setup/setup.php install /opt/scripts/clients/clientname1.json- If this appear, ignore it:
- This means the script was not able to overwrite an existing /opt/iliasdata/clientname/chatroom/server.cfg file which is good for us.

- As result there should be a new or altered file called server.cfg
- Its also possible that server.cfg is wirte protected allready. In this case. you read the red message aboth.ย
ls /opt/iliasdata/info/chatroom- If the file is missing (due to write permission problems eg.), no problem: You can create it with the content below
- Check, if all entrys are OK:
nano /opt/iliasdata/info/chatroom/server.cfg- Example:
1 | { |
- Must not exist: \/opt\/iliasdata\/clientname\/chatroom\/ilchatdummy
- Please understand that we have to change the file (again), because we run the server not with chat.bbs-ilias.de but instead with the internal IP 127.0.0.1 for redirection porposes
Changing values of server.cfg (maybe again, this is the trick)
- Change lines 2-3 like shown below
- You can leave lines 5-7 as they are - its not important because we use http and not https by now
1 | { |
Protect server.cfg
- Problem: server.cfg will be overwritten if you execute the json file again with chat.bbs-ilias.de
- Solution: The trick is to edit the chatserver section with false attributes, so that nothing will happen:
nano /opt/scripts/clients/yourfile.json
- Change
"chatroom" : {
- to
"chatroomX" : {
- because we do not want any changes due execution the json file
- Also a good protection idea:
chmod 444 /opt/iliasdata/clientname/chatroom/server.cfg
Create logfiles
- sudo -u www-data mkdir /opt/iliasdata/log
- sudo -u touch /opt/iliasdata/log/chat.log
- sudo -u touch /opt/iliasdata/log/chaterror.log
Create the Startscripts for the client
- As stated here, thanks to Michael Jansen :)
cd /etc/systemd/system |
1 | [Unit] |
#Enable Service: |
Check the instance
curl -s --head https://chat.bbs-ilias.de:443- should give:
1 | HTTP/1.1 404 Not Found |
ps aux |grep chat.js- should give:
1 | root 88327 0.1 2.9 840324 60080 ? Sl 19:35 0:00 /usr/bin/node /var/www/html/ilias/Modules/Chatroom/chat/chat.js /opt/ilchatserver/server.cfg /opt/ilchatserver/info.cfg |
- Check errorlog:
cat /opt/iliasdata/log/chaterror.logcat /opt/iliasdata/log/chat.log