---
title: 'Installing GOsa web interface on top of OpenLDAP'
url: 'http://x24u.com/ldap/installing-gosa-web-interface-on-top-of-openldap'
markdown: 'http://x24u.com/ldap/installing-gosa-web-interface-on-top-of-openldap.md'
date: '2026-09-22'
description: 'Sometimes you need to manage your user directory in a comfortable way just not to create/dig around with complex ldif styled files. To make your life a bit easier for such cases this short tutorial will guide you through the installation of GOsa web interface on top of our ldap service. All steps w…'
taxonomy:
  category:
    - installation
  tag:
    - gosa
    - management
    - web
    - ldap
---

# Installing GOsa web interface on top of OpenLDAP

### Sometimes

you need to manage your user directory in a comfortable way just not to create/dig around with complex ldif styled files. To make your life a bit easier for such cases this short tutorial will guide you through the installation of GOsa web interface [on top of our ldap service](http://x24u.com/ldap/install-openldap).

All steps will be done on a plain **debian buster** installation.

#### Update the system

Just ssh into you machine and update your cache

```
$ sudo apt update
```

[![update-system](http://x24u.com/images/0/1/3/a/4/013a4b5a72276de06b8d851089d98cbdfc75220f-update-system.png)](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/update-system.png)

```
$ sudo apt install gosa gosa-schema gosa-plugin-ssh gosa-plugin-ssh-schema gosa-plugin-sudo gosa-plugin-sudo-schema gosa-plugin-systems gosa-plugin-rolemanagement gosa-plugin-ldapmanager gosa-plugin-mail
```

With listed above packages, Apache webserver and PHP packages are installed automatically as they are required to run GOsa.

#### Check the services status

Ensure that openLDAP and Apache services are up and running

```
ps ax | grep "[a]pache\|[s]lapd"
```

[![check-services](http://x24u.com/images/1/e/4/3/9/1e4399a8c48aee19a4c54df64d6bbb53631842c8-check-services.png "check-services")](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/check-services.png)

#### Configure apache server

Next, copy */etc/gosa/gosa-apache.conf* into /etc/apache2/sites-available/ as gosa.conf

```
sudo cp /etc/gosa/gosa-apache.conf /etc/apache2/sites-available/gosa.conf
```

Let's adjust gosa.conf so that it looks like that:

```xml
 <IfModule mod_php7.c>
         <VirtualHost _default_:80>
                 DocumentRoot /usr/share/gosa/html
                 <Location />
                     php_admin_flag engine on
                     php_admin_flag register_globals off
                     php_admin_flag allow_call_time_pass_reference off
                     php_admin_flag expose_php off
                     php_admin_flag zend.ze1_compatibility_mode off
                     php_admin_flag register_long_arrays off
                     php_admin_flag magic_quotes_gpc off
                     php_admin_value upload_tmp_dir /var/spool/gosa/
                     php_admin_value session.cookie_lifetime 0
                     include /etc/gosa/gosa.secrets
                 </Location>
        </VirtualHost>
 </IfModule>
```

After your editing you have two options:

1. Make a link under /etc/apache/sites-enabled/gosa.conf pointing to /etc/apache/sites-available/gosa.conf ```
    sudo ln -s /etc/apache2/sites-available/gosa.conf /etc/apache2/sites-enabled/gosa.conf
    ```

    and restart apache `sudo systemctl restart apache2`or
2. use built-in mechanism of apache: ```
    $ sudo a2ensite gosa
    $ sudo systemctl restart apache2
    ```

#### Configure gosa

So, you are almost ready to go, just navigate to http://*`<server-ip-address>`* in your browser and ensure that you see the setup welcome page of GOsa.

[![gosa-welcome-page](http://x24u.com/images/a/f/d/5/7/afd574e471ee1dd1249b0f5170e19539518fbb0b-gosa-welcome-page.png "gosa-welcome-page")](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa-welcome-page.png)

There, on the welcome page you will also see what to do next. Just follow the instructions on the screen.

Steps are:

- writing a string to a file
- stopping apache web service
- replacing parameter in the systemd file, to disable private temporary directory for apache service
- reloading the systemd daemon, to activate the changes
- starting apache service again

```
echo -n l0ngstr1ngxxxxxxxxxxxx > /tmp/gosa.auth
sudo service apache2 stop
sudo sed -i 's/Tmp=true/Tmp=false/' /lib/systemd/system/apache2.service
sudo systemctl daemon-reload
sudo service apache2 start
```

After this actions click **Next**

revert the change made above, just to be on the secure side

```
sudo service apache2 stop
sudo sed -i 's/Tmp=false/Tmp=true/' /lib/systemd/system/apache2.service
sudo systemctl daemon-reload
sudo service apache2 start
```

On the second step system ensures you have everything installed.

[![step2gosa](http://x24u.com/images/5/5/2/e/9/552e9884f28c8a3c3a8dfbe098e2fe9564d8d768-step2gosa.png "step2gosa")](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/step2gosa.png)

Just push `Next` button.

On the third step you need to accept the license otherwise you would not be able to finish the installation.

[![step3gosa](http://x24u.com/images/3/4/6/5/f/3465f4bc619caa933840f68d6dbf1f35e2f93542-step3gosa.png "step3gosa")](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/step3gosa.png)

Fourth step. Here it comes to configuration of GOsa web interface, how it can communicate to the OpenLDAP server. As we [previously installed](http://x24u.com/ldap/install-openldap) ldap service on the same server as gosa, we need to specify the same admin credentials, which we used while configuring ldap server. Click on the button "Check again" and ensure, that credentials are correct. You will see the green message in the bottom. Click `Next`

[![step4gosa](http://x24u.com/images/6/3/d/5/b/63d5bd2d79c39da442063f078a50b74b6e60356c-step4gosa.png "step4gosa")](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/step4gosa.png)

On the next step you will get the message about missing schema, which we need to install.

[![step5gosa-missing-schemas](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/step5gosa-missing-schemas.png "step5gosa-missing-schemas")](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/step5gosa-missing-schemas.png)

Install them by running:

```
for i in /etc/ldap/schema/gosa/*.ldif; do sudo ldapadd -Y EXTERNAL -H ldapi:/// -f $i; done
```

And recheck the configuration again by clicking on "Check again". You will get the success message.

[![gosa5](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa5.png "gosa5")](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa5.png)

On the next step you need to migrate the ldap database and create gosa admin.

![gosa6-migrate](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa6-migrate.png "gosa6-migrate")

![gosa6-confirm-migrate](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa6-confirm-migrate.png "gosa6-confirm-migrate")

[![gosa6-create-gosaadmin](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa6-create-gosaadmin.png "gosa6-create-gosaadmin")](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa6-create-gosaadmin.png)

![gosa6-gosaadmin-pass](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa6-gosaadmin-pass.png?lighbox=100%25 "gosa6-gosaadmin-pass")

[![gosa6-admin-created](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa6-admin-created.png "gosa6-admin-created")](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa6-admin-created.png)

After you created admin account the 7th step could be skipped, if you want.

![gosa7-skip](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa7-skip.png "gosa7-skip")

Download the config file and put it under /etc/gosa/

[![gosa8-configfile-download](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa8-configfile-download.png "gosa8-configfile-download")](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa8-configfile-download.png)

Change the owner of that to root:www-data so that web server can read it and change the permissions to 0640

```
sudo chown :www-data /etc/gosa/gosa.conf
sudo chmod 0640 /etc/gosa/gosa.conf
```

Return to browser and click `Check again`, then `Next`

Navigate to http://`_<server-ip-address>_` and login with your gosa admin account and the password specified earlier.

[![gosa-login](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa-login.png "gosa-login")](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa-login.png)

[![gosa-loggedin](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa-loggedin.png "gosa-loggedin")](http://x24u.com/user/pages/04.home/ldap/02.installing-gosa-web-interface-on-top-of-openldap/gosa-loggedin.png)

That's it, gosa is configured and can be used to manage your user, groups and systems.

 [Next Post ](http://x24u.com/ldap/install-openldap)

---

## Navigation

- Parent: [ldap](http://x24u.com/ldap.md)
- Previous: [Install OpenLDAP](http://x24u.com/ldap/install-openldap.md)
